> ## Documentation Index
> Fetch the complete documentation index at: https://docs-staging-actions-triggers-prototype.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Intégration avec Amazon Cognito

> Comment intégrer Auth0 avec Amazon Cognito en utilisant un fournisseur OpenID Connect (OIDC).

Amazon Cognito est un système dorsal en tant que service (backend mobile) qui vous permet de vous concentrer sur le développement de l’expérience utilisateur de votre application. Pour en savoir plus et vous inscrire aux services, consultez [Amazon Cognito](http://aws.amazon.com/cognito/) et le processus de création d’un fournisseur [OpenID Connect (OIDC) provider via l'interface de ligne de commande AWS](https://docs.aws.amazon.com/cli/latest/reference/iam/create-open-id-connect-provider.html).

## Configuration des services Amazon Web

### Obtenir les détails de l’application Auth0

Tout d’abord, vous devez obtenir des informations sur votre application dans Auth0 :

1. Rendez-vous dans [Auth0 Dashboard> Applications > Applications](https://manage.auth0.com/#/applications).
2. Sélectionnez votre application, puis affichez les **paramètres**.
3. Enregistrez le **Domaine** et **l’ID Client**.

### Création d’un nouveau fournisseur OpenID Connect (OIDC)

Dans AWS, créez un nouveau fournisseur d’identité (<Tooltip href="/docs/fr-ca/glossary?term=idp" tip="Fournisseur d’identité (IdP)
Service de stockage et de gestion des identités numériques." cta="Voir le glossaire">IdP</Tooltip>) :

1. Ouvrez la [console IAM](https://console.aws.amazon.com), sélectionnez **Fournisseur d’identité** dans la barre latérale gauche, puis sélectionnez **Ajouter fournisseur**.
2. Sélectionnez **OpenID Connect** comme **Type de fournisseur**.
3. Pour **l’URL fournisseur** :

   1. Saisissez votre **Domaine** dans le champ **Fournisseur URL**.
   2. Saisissez votre **ID Client** dans le champ **Audience**.
4. Sélectionnez **Ajouter fournisseur**.
5. Naviguez jusqu’au fournisseur que vous venez de créer et enregistrez l’**ARN du fournisseur**.

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  Il n’est pas nécessaire de configurer un rôle IAM après création de l’IdP. Si vous n’en n’avez pas déjà un, Cognito créera un rôle IAM par défaut à la création du Pool d’identité.
</Callout>

### Création d’un groupe d’identités

Créez un groupe d’identités dans AWS pour permettre à Cognito d’utiliser le fournisseur d’identité Auth0 OIDC pour l’authentification :

1. Connectez-vous à la [console Cognito.](https://console.aws.amazon.com/cognito/home)
2. Sélectionnez **Identités fédérées**.
3. Pour **Nom du groupe d’identité**, indiqué un nom (par ex., `Auth0`).
4. Sous **Fournisseurs d’identité**, sélectionnez l’onglet **OpenID**, puis sélectionnez le nom du fournisseur que vous avez créé précédemment.
5. Sélectionnez **Créer groupe**, puis **Autoriser** pour terminer la création du nouveau groupe d’identités.
6. Sous Dashboard, sélectionnez **Modifier groupe d’identités** pour afficher **ID du groupe d’identités**.
7. Enregistrez l’**ARN** du rôle IAM qui a été automatiquement créé. Cette valeur sera utilisée lors de l’envoi d’informations d’identification à Cognito.

## Configuration d’Auth0

Cognito utilise la clé de connexion publique [Métadonnées du fournisseur OpenID](https://subscription.auth0.com/.well-known/jwks.json) pour valider la signature du jeton Web JSON (<Tooltip href="/docs/fr-ca/glossary?term=json-web-token" tip="Jeton Web JSON (JWT)
Format standard de jeton d’ID (et souvent de jeton d’accès) utilisé pour représenter en toute sécurité des demandes entre deux parties." cta="Voir le glossaire">JWT</Tooltip>).

Confirmez que votre application Auth0 est configurée pour utiliser l’algorithme de signature RS256 :

1. Allez à [Auth0 Dashboard > Applications > Applications](https://manage.auth0.com/#/applications), sélectionnez votre application, puis affichez les **Paramètres**.
2. Élargissez la section **Paramètres avancés**, et affichez **OAuth**.
3. Localisez le champ **Algorithme de signature du jeton Web JSON (JWT)**, et sélectionnez **RS256** dans le menu déroulant.
4. Sélectionnez **Sauvegarder les changements**.

## Implémentation

Vous pouvez utilisez la trousse [SDK Auth0 Lock](https://auth0.com/docs/libraries#lock) pour intégrer Auth0 dans votre application.

Une fois que l’utilisateur s’est connecté avec Auth0, l’étape suivante consiste à envoyer ses identifiants à Cognito. Pour en savoir plus, consultez [Fournisseurs Open ID Connect (groupes d’identité) sur AWS Docs](http://docs.aws.amazon.com/cognito/latest/developerguide/open-id.html).

Cognito prend le jeton d’ID qu’un utilisateur reçoit d’Auth0 et l’utilise pour générer des identifiants Cognito uniques. Lorsque l’utilisateur se connecte à Cognito via Auth0, vous pouvez stocker dans Cognito des informations auxquelles il est le seul à avoir accès.

## Dépannage

### Erreur « Jeton de connexion invalide »

Si vous recevez un message d’erreur « Jeton de connexion invalide », vérifiez que l’application Auth0 est configurée pour utiliser l’algorithme de signature RS256 :

1. Allez à [Auth0 Dashboard > Applications > Applications](https://manage.auth0.com/#/applications), sélectionnez votre application, puis affichez les **Paramètres**.
2. Élargissez la section **Paramètres avancés**, et affichez **OAuth**.
3. Localisez le champ **Algorithme de signature du jeton Web JSON (JWT)**, et sélectionnez **RS256** dans le menu déroulant.
