

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Créez un connecteur C2C (Cloud-to-Cloud)
<a name="concepts-building-connector"></a>

Les sections suivantes décrivent les étapes à suivre pour créer un connecteur C2C (Cloud-to-Cloud) pour les intégrations gérées pour AWS IoT Device Management.

**Topics**
+ [Conditions préalables](#c2c-connector-prerequisites)
+ [Autorisations requises](#c2c-connector-required-permissions)
+ [Exigences relatives aux connecteurs C2C](#c2c-connector-requirements)
+ [Autorisation](concepts-authorization.md)
+ [Mettre en œuvre les opérations d'interface du connecteur C2C](connector-operations-overview.md)
+ [Appelez votre connecteur C2C](allow-iot-smart-home.md)
+ [Ajoutez des autorisations à votre rôle IAM](adding-permissions-to-iam-role.md)
+ [Testez manuellement votre connecteur C2C](manually-testing-connector.md)

## Conditions préalables
<a name="c2c-connector-prerequisites"></a>

Avant de créer un connecteur C2C (Cloud-to-Cloud), vous devez disposer des éléments suivants :
+ Et Compte AWS pour héberger votre connecteur C2C et l'enregistrer via des intégrations gérées. Pour plus d'informations, voir [ Créer un Compte AWS](https://docs.aws.amazon.com/accounts/latest/reference/manage-acct-creating.html).
+ Lorsque vous créez votre connecteur, vous avez besoin de certaines autorisations IAM (voir la section Autorisations requises ci-dessous).
+ Déterminez le type d'autorisation que votre connecteur prendra en charge. Managed Integrations prend en charge l'autorisation OAuth 2.0 et l'autorisation générale.

  **Pour les connecteurs OAuth 2.0 : **

  Si votre connecteur est compatible avec OAuth 2.0, son développeur doit disposer des éléments suivants :
  + **ID client ** provenant du cloud tiers à associer à votre connecteur C2C
  + **Secret client ** provenant du cloud tiers à associer à votre connecteur C2C
  + **URL d'autorisation OAuth 2.0 **
  + **URL du jeton OAuth 2.0 **

  **Pour les connecteurs d'autorisation personnalisés (également appelés connecteurs General/Custom d'autorisation) : **

  Si votre connecteur prend en charge un mécanisme d'autorisation non basé sur OAuth, nous l'appelons connecteur d'autorisation général et l'utilisateur du connecteur devra conserver les informations d'identification pour ce schéma d'autorisation dans. AWS Secrets Manager Les informations d'identification pour ce schéma d'autorisation non OAuth peuvent être des jetons, des clés d'API ou d'autres informations d'identification, qui devraient être conservées. AWS Secrets Manager
+ Third-Party Exigences relatives à l'API :
  + Matériel d'autorisation spécifique au schéma d'autorisation qui pourrait être une API Keys/tokens (pour OAuth)
  + Toute liste d'autorisations pour l'URL de rappel OAuth hébergée par AWS
**Note**  
Certains tiers autorisent explicitement une URL de redirection OAuth, tandis que d'autres disposent d'un flux de travail dans lequel les utilisateurs peuvent se connecter et enregistrer l'URL OAuth. Consultez le tiers concerné pour comprendre ce qui est requis pour autoriser le point de terminaison de redirection OAuth des intégrations gérées.

## Autorisations requises
<a name="c2c-connector-required-permissions"></a>

Lorsque vous créez votre connecteur, vous avez besoin de certaines autorisations IAM. Outre les `iotmanagedintegrations:` autorisations pour les actions, vous avez besoin des autorisations suivantes :
+ [CreateAccountAssociation](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_CreateAccountAssociation.html), [ CreateConnectorDestination ](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_CreateConnectorDestination.html) [ GetAccountAssociation](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_GetAccountAssociation.html), et [ StartAccountAssociationRefresh ](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_StartAccountAssociationRefresh.html) nécessitent :
  + `secretsmanager:GetSecretValue`
+ [CreateCloudConnector](https://docs.aws.amazon.com/iot-mi/latest/APIReference/API_CreateCloudConnector.html)nécessite :
  + `lambda:Invoke`

Si votre connecteur prend en charge l'autorisation générale, le rôle d'exécution Lambda de votre connecteur doit également avoir :
+ `secretsmanager:GetSecretValue`
+ `kms:Decrypt`

Ces autorisations sont nécessaires pour récupérer les informations d'identification du client AWS Secrets Manager. Pour de plus amples informations, veuillez consulter [Autorisations Lambda pour GeneralAuthorization](concepts-general-authorization-dev.md#general-auth-lambda-permissions-dev).

Pour plus d'informations sur `iotmanagedintegrations:` les autorisations et les actions, consultez la section [ Actions définies par les intégrations AWS](https://docs.aws.amazon.com/service-authorization/latest/reference/list_awsiotmanagedintegrations.html#awsiotmanagedintegrations-actions-as-permissions) gérées.

## Exigences relatives aux connecteurs C2C
<a name="c2c-connector-requirements"></a>

Le connecteur [ C2C ](concepts-c2c-connector.md#concepts-what-is-c2c-connector) que vous développez facilite la communication bidirectionnelle entre les intégrations gérées pour AWS IoT Device Management et le cloud d'un fournisseur tiers. Le connecteur doit implémenter des interfaces pour les intégrations gérées pour AWS IoT Device Management afin d'effectuer des actions pour le compte des utilisateurs finaux.

Ces interfaces fournissent les fonctionnalités nécessaires pour :
+ Découvrez les appareils des utilisateurs finaux
+ Lancer des commandes d'appareil envoyées depuis des intégrations gérées pour AWS IoT Device Management
+ Identifier les utilisateurs

Pour prendre en charge le fonctionnement de l'appareil, le connecteur doit gérer la traduction des messages de demande et de réponse entre les intégrations gérées pour AWS IoT Device Management et la plateforme tierce associée.

Les exigences relatives au connecteur C2C sont les suivantes :

1. **Conformité à OAuth 2.0 (le cas échéant) **

   Si votre connecteur prend en charge OAuth 2.0, le serveur d'autorisation tiers doit être conforme aux normes OAuth 2.0 ainsi qu'aux configurations répertoriées dans. [Exigences de configuration OAuth](concepts-account-linking.md#oauth-config-requirements)

1. **Conformité au modèle de données Matter **

   Un connecteur C2C sera nécessaire pour interpréter les identifiants des AWS implémentations du modèle de données de matière et doit émettre les réponses et les événements conformes aux AWS implémentations du modèle de données de matière. Pour de plus amples informations, veuillez consulter [AWS mise en œuvre du modèle de données Matter](matter-data-model.md).

1. **Authentification SIGv4 **

   Un connecteur C2C doit être capable d'appeler les intégrations gérées pour les API AWS IoT Device Management avec `SigV4` authentification. Pour les événements asynchrones envoyés SendConnectorEvent via l'API, les mêmes Compte AWS informations d'identification que celles utilisées pour enregistrer le connecteur doivent être utilisées pour signer la demande associée SendConnectorEvent .

1. **Opérations requises **

   Le connecteur doit implémenter les quatre opérations suivantes :
   + `AWS.ActivateUser`- Récupérez l'identifiant de l'utilisateur et activez l'utilisateur
   + `AWS.DiscoverDevices`- Découvrez les appareils des utilisateurs finaux
   + `AWS.SendCommand`- Envoyer des commandes aux appareils
   + `AWS.DeactivateUser`- Désactiver l'utilisateur et révoquer l'accès

1. **Transfert d'événements **

   Lorsque votre connecteur C2C reçoit des événements tiers liés aux réponses aux commandes de l'appareil ou à la découverte d'un appareil, il doit les transmettre à Managed Integrations with the `SendConnectorEvent` API. Pour plus d'informations sur ces événements et l'`SendConnectorEvent`API, consultez [ SendConnectorEvent](https://amazonaws.com/iot-mi/latest/APIReference/API_SendConnectorEvent.html).

**Note**  
L'`SendConnectorEvent`API fait partie du SDK d'intégrations gérées et est utilisée à la place de la création et de la signature manuelles des demandes.