> ## Documentation Index
> Fetch the complete documentation index at: https://auth0.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Configurer AWS Cognito avec Auth0 B2B Connect

> Configurez Amazon Cognito pour qu'il se fédère à Auth0 B2B Connect comme fournisseur d'identité OIDC ou SAML, afin de permettre l'authentification unique en entreprise.

export const ReleaseStageNotice = ({feature, stage, plans, contact, terms}) => {
  const stageTextMap = {
    "beta": "bêta",
    "ea": "Accès anticipé"
  };
  const stageText = stageTextMap[stage] || "une phase de lancement du produit";
  const prsLink = "/docs/troubleshoot/product-lifecycle/product-release-stages";
  const linkify = (text, url) => {
    return <a href={url} target="_blank" rel="noreferrer" class="link">{text}</a>;
  };
  const includeDetails = (plans, contact, terms) => {
    const hasDetails = terms || plans || contact;
    if (!hasDetails) return null;
    return <span data-as="p">
            {plans && <>Cette fonctionnalité est offerte avec les forfaits {linkify(`${plans}`, "https://auth0.com/pricing")}. </>}
            {contact && "Pour y participer, communiquez avec " + contact + ". "}
            {terms && <>En utilisant cette fonctionnalité, vous acceptez les conditions applicables de l’essai gratuit énoncées dans le {linkify("Master Subscription Agreement", "https://www.okta.com/legal")} d’Okta.</>}
        </span>;
  };
  return <Warning>
            <span data-as="p">
                <strong>La fonctionnalité {feature} est en {linkify(stageText, prsLink)}.</strong>
            </span>

            {includeDetails(plans, contact, terms)}
        </Warning>;
};

<ReleaseStageNotice feature="B2B Connect - Enterprise" stage="ea" contact="votre équipe technique de compte ou le soutien Auth0" terms="true" />

[Amazon Cognito](https://aws.amazon.com/cognito/) est un service de gestion des identités de calibre entreprise offert par Amazon Web Services (AWS) qui assure l'authentification, l'autorisation et la fédération des utilisateurs pour les applications Web et mobiles. Configurez Amazon Cognito pour qu'il se fédère à Auth0 B2B Connect comme <Tooltip tip="OpenID : norme ouverte d'authentification qui permet aux applications de vérifier l'identité des utilisateurs sans recueillir ni stocker leurs renseignements de connexion." cta="Consulter le glossaire" href="/docs/fr-ca/glossary?term=OpenID">OpenID Connect (OIDC)</Tooltip> ou <Tooltip tip="Security Assertion Markup Language (SAML) : protocole normalisé permettant à deux parties d'échanger des renseignements d'authentification sans mot de passe." cta="Consulter le glossaire" href="/docs/fr-ca/glossary?term=SAML">SAML 2.0</Tooltip> <Tooltip tip="Fournisseur d'identité (IdP) : service qui stocke et gère les identités numériques." cta="Consulter le glossaire" href="/docs/fr-ca/glossary?term=identity+provider">fournisseur d'identité</Tooltip> afin d'ajouter l'<Tooltip tip="Authentification unique (SSO) : service qui, après la connexion d'un utilisateur à une application, le connecte automatiquement aux autres applications." cta="Consulter le glossaire" href="/docs/fr-ca/glossary?term=SSO">authentification unique d'entreprise (SSO)</Tooltip> à votre Cognito User Pool existant.

<h2 id="how-authentication-works">
  Le fonctionnement de l'authentification
</h2>

```mermaid theme={null}
sequenceDiagram
    participant User
    participant Application as Your Application
    participant Cognito as Amazon Cognito
    participant Auth0 as Auth0 B2B Connect
    participant EnterpriseIdP as Enterprise IdP

    Note over User,Cognito: Login initiation
    User->>Application: Initiates login
    Application->>Cognito: Sends authentication request

    Note over Cognito,Auth0: Route to Auth0
    Cognito->>Cognito: Identifies user as enterprise user
    Cognito->>Auth0: Routes authentication request

    Note over Auth0,EnterpriseIdP: Enterprise IdP federation
    Auth0->>EnterpriseIdP: Sends authentication request (SAML or OIDC)
    User->>EnterpriseIdP: Authenticates with corporate credentials
    EnterpriseIdP-->>Auth0: Returns SAML assertion or OIDC token

    Note over Cognito,Application: Token issuance and session
    activate Cognito
    Auth0-->>Cognito: Returns federation result
    Cognito-->>Application: Issues token
    deactivate Cognito
    Application->>Application: Validates token, bootstraps session
    Application-->>User: Grants access
```

1. L'utilisateur amorce la connexion dans votre application.
2. L'application envoie une demande d'authentification à Amazon Cognito.
3. Amazon Cognito reconnaît qu'il s'agit d'un utilisateur d'entreprise et achemine la demande vers Auth0 B2B Connect.
4. Auth0 B2B Connect envoie une demande d'authentification au fournisseur d'identité d'entreprise de l'utilisateur (par exemple, Okta ou Microsoft Entra ID) au moyen de SAML ou d'OpenID Connect (OIDC).
5. L'utilisateur s'authentifie auprès du fournisseur d'identité d'entreprise avec ses informations d'identification d'entreprise.
6. Le fournisseur d'identité d'entreprise renvoie une assertion SAML ou un jeton OIDC à Auth0 B2B Connect.
7. Auth0 B2B Connect effectue la découverte de domaine et transmet le résultat de la fédération à Amazon Cognito.
8. Amazon Cognito émet un jeton à l'application.
9. L'application valide le jeton, initialise sa session et accorde l'accès à l'utilisateur.

<h2 id="prerequisites">
  Informations requises
</h2>

* Un locataire Auth0 avec [B2B Connect - Enterprise](/docs/fr-ca/get-started/b2b-connect-enterprise) activé
* Une [Auth0 Organization](/docs/fr-ca/manage-users/organizations) dont la découverte de domaine est activée vers une [connexion d’entreprise](/docs/fr-ca/authenticate/enterprise-connections) (par exemple, Okta). Pour en savoir plus, lisez [Créer des domaines d’Organization](/docs/fr-ca/manage-users/organizations/configure-organizations/create-org-domains).
* Un compte AWS avec un Amazon Cognito User Pool actif
* Un client d’application Cognito configuré avec un Cognito Domain actif

<h2 id="configure-auth0-b2b-connect">
  Configurer Auth0 B2B Connect
</h2>

Pour créer une nouvelle intégration B2B Connect :

1. Accédez à [**Auth0 Dashboard > Applications > B2B Connect**](https://manage.auth0.com/dashboard/#/b2b-integrations) et sélectionnez **+Créer une intégration** pour lancer l'assistant B2B Connect.
2. Saisissez un **Nom d'intégration** (par exemple, « AWS Cognito »).
3. Sous **Type d'intégration**, sélectionnez **Serveur d'autorisation géré par un tiers**.
4. Sélectionnez **Continuer**.
5. Sous **Protocole d'authentification**, indiquez de quelle façon votre serveur d'authentification prend en charge la fédération : OIDC ou SAML.
6. Sélectionnez **Continuer**.

<Frame>
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/dashboard/b2b-connect-wizard-aws.png" alt="Assistant B2B Connect Entreprise dans le Auth0 Dashboard, nom de l'intégration" />
</Frame>

<h2 id="select-and-configure-the-authentication-protocol">
  Sélectionner et configurer le protocole d’authentification
</h2>

Dans l’assistant, vous avez le choix entre OIDC et SAML. Sélectionnez votre protocole d’authentification, puis suivez les étapes de configuration.

<Tabs>
  <Tab title="OIDC">
    1. Saisissez l’**URL de rappel de l’application** de votre groupe d’utilisateurs Cognito :
       ```text theme={null}
       https://YOUR_AWS_COGNITO_DOMAIN/oauth2/idpresponse
       ```
    2. Sélectionnez **Continue**.
    3. À l’écran de confirmation, sélectionnez **Done** pour terminer l’assistant.

    <h3 id="copy-credentials-from-the-settings-tab">
      Copier les informations d’identification depuis l’onglet Settings
    </h3>

    Une fois l’assistant de configuration terminé, sélectionnez l’intégration que vous venez de créer et copiez les valeurs de l’onglet Settings nécessaires à votre configuration AWS. Vous devez copier :

    * Client ID
    * Client Secret
    * Issuer URL

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/dashboard/b2b-connect-settings-aws.png" alt="Copiez le Client ID, le Client Secret et l’Issuer URL depuis les paramètres de votre intégration" />
    </Frame>
  </Tab>

  <Tab title="SAML">
    1. Saisissez l’**URL de rappel de l’application** de votre groupe d’utilisateurs Cognito :
       ```text theme={null}
       https://YOUR_AWS_COGNITO_DOMAIN/saml2/idpresponse
       ```
    2. Sélectionnez **Continue**.
    3. À l’écran de confirmation, sélectionnez **Done** pour terminer l’assistant.

    <h3 id="download-idp-metadata">
      Télécharger les métadonnées de l’IdP
    </h3>

    Une fois l’assistant de configuration terminé, allez à l’onglet **Settings** de la page de l’intégration. Sous **Authentication**, téléchargez le fichier **IdP Metadata**. Vous le téléverserez vers AWS Cognito à la section suivante.
  </Tab>
</Tabs>

<h2 id="configure-aws-cognito">
  Configurer AWS Cognito
</h2>

<h3 id="add-an-external-identity-provider">
  Ajouter un fournisseur d'identité externe
</h3>

Dans la [console AWS Cognito](https://console.aws.amazon.com/cognito/), sélectionnez votre groupe d'utilisateurs. Allez à **Authentication** dans le panneau de navigation de gauche, puis sélectionnez **Social and external providers**. Sélectionnez ensuite **Add identity provider**.

<Tabs>
  <Tab title="OIDC">
    1. Pour **Identity provider**, sélectionnez **OpenID Connect (OIDC)**.
    2. Dans **Provider name**, indiquez l'étiquette que les utilisateurs finaux verront à l'écran de connexion (par exemple, « Auth0 »).
    3. Saisissez le Client ID figurant dans l'onglet B2B Connect Settings.
    4. Saisissez le Client secret figurant dans l'onglet B2B Connect Settings.
    5. Mettez à jour les **Authorized scopes** selon les exigences de votre application (par exemple, `openid profile email`).
    6. Pour activer la redirection automatique vers Auth0 pour les utilisateurs d'entreprise, saisissez leurs domaines de courriel sous **Identifiers** (par exemple, `acme.com`).
    7. Saisissez l'Issuer URL figurant dans l'onglet B2B Connect Settings dans le champ **Issuer URL**.
    8. Sélectionnez **Add identity provider**.
  </Tab>

  <Tab title="SAML">
    1. Pour **Identity provider**, sélectionnez **SAML**.
    2. Dans **Provider name**, indiquez l'étiquette que les utilisateurs verront à l'écran de connexion (par exemple, « Auth0 »).
    3. Pour activer la redirection automatique vers Auth0 pour les utilisateurs d'entreprise, saisissez leurs domaines de courriel sous **Identifiers** (par exemple, `acme.com`).
    4. Sous **Metadata document source**, téléversez le fichier IdP Metadata que vous avez téléchargé depuis l'onglet B2B Connect Settings.
    5. Sélectionnez **Add identity provider**.
  </Tab>
</Tabs>

<h3 id="configure-attribute-mapping-recommended">
  Configurer le mappage des attributs (recommandé)
</h3>

Le mappage des attributs relie les attributs d'identité des utilisateurs provenant d'Auth0 aux enregistrements d'utilisateurs locaux de votre Cognito User Pool. Ainsi, les adresses de courriel et les noms sont provisionnés automatiquement.

1. Sous **Attribute mapping**, sélectionnez **Edit**, puis associez les attributs d'utilisateur requis par votre application :

   * OIDC : associez `username` à `sub` et `email` à `email`
   * SAML : associez `email` à `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`

2. Sélectionnez **Save changes**.

<h3 id="allow-users-to-sign-in-with-the-identity-provider">
  Permettre aux utilisateurs de se connecter avec le fournisseur d'identité
</h3>

1. Dans la console AWS Cognito, sélectionnez votre groupe d'utilisateurs, rendez-vous à **Applications** dans le menu de gauche, sélectionnez **App clients**, puis choisissez votre application.
2. Sélectionnez l'onglet **Login pages**, puis cliquez sur **Edit**.
3. Sous **Identity providers**, sélectionnez votre fournisseur d'identité (par exemple, « Auth0 ») dans la liste déroulante.
4. Cliquez sur **Save changes**.

<h3 id="verify-the-identity-provider">
  Vérifier le fournisseur d'identité
</h3>

1. Ouvrez la page de connexion de votre application et vérifiez qu'un bouton **Continue with Auth0** s'affiche et vous redirige bien vers Auth0.
2. À l'écran de connexion Auth0, saisissez votre adresse courriel. La découverte de domaine Auth0 se déclenche et vous redirige vers votre IdP en amont pour terminer l'authentification.

<h2 id="oidc-silent-redirection-optional">
  Redirection silencieuse OIDC (optionnelle)
</h2>

Pour contourner les pages de connexion d'AWS Cognito et d'Auth0 et acheminer silencieusement les utilisateurs vers l'IdP de leur entreprise, configurez votre application afin qu'elle transmette `login_hint` et `idp_identifier` dans la requête d'autorisation.

1. Modifiez votre application pour y ajouter un champ de saisie d'adresse de courriel. À la soumission du formulaire, extrayez le courriel et transmettez `login_hint` ainsi que `idp_identifier` dans la requête d'autorisation envoyée à AWS Cognito :

   ```js lines theme={null}
   const params = new URLSearchParams({
     response_type: 'code',
     client_id: 'YOUR_COGNITO_APP_CLIENT_ID',
     redirect_uri: 'YOUR_REDIRECT_URI',
     scope: 'openid profile email',
     identity_provider: 'Auth0',
     login_hint: userEmail,
     idp_identifier: userEmail.split('@')[1],
   });

   window.location.href =
     `https://YOUR_AWS_COGNITO_DOMAIN/oauth2/authorize?${params}`;
   ```

2. Dès lors, votre application transmet `login_hint` et `idp_identifier` à AWS Cognito, qui effectue une redirection silencieuse à travers AWS Cognito et Auth0, pour aboutir directement sur l'IdP d'entreprise en amont.
