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

# Comment connecter des applications Auth0 à Google Workspace à l’aide des connexions d’entreprise

> Permettez à vos utilisateurs de se connecter avec Google Workspace en configurant une connexion d’entreprise Google Workspace pour votre application Auth0.

En connectant votre application Auth0 à Google Workspace, vos utilisateurs peuvent se connecter avec leurs identifiants Google. Pour ce faire, vous devez d’abord enregistrer votre application auprès de Google, puis configurer une connexion d’entreprise Google Workspace dans Auth0.

<div id="prerequisites">
  ## Prérequis
</div>

Avant de commencer, vous devez avoir :

* [enregistré votre application auprès d’Auth0](/docs/fr-ca/get-started/auth0-overview/create-applications).

  * Sélectionnez un **Type d’application** approprié.
  * Ajoutez une **URL de rappel autorisée** : `{https://yourApp/callback}`.
  * Assurez-vous que les [types d’octroi](/docs/fr-ca/get-started/applications/update-grant-types) de votre application incluent les flux appropriés.

* Un compte Google Workspace valide ainsi que votre propre organisation Google Workspace.

* Des privilèges d’administrateur sur l’organisation Google Workspace.

<div id="register-your-application-with-google">
  ## Enregistrer votre application auprès de Google
</div>

Pour permettre aux utilisateurs de se connecter avec Google Workspace, vous devez enregistrer votre application dans la Google Cloud Console.

<Warning>
  Si votre application demande des scopes OAuth sensibles, elle peut faire l’objet d’un [examen par Google](https://developers.google.com/apps-script/guides/client-verification).
</Warning>

Suivez la documentation de Google [Setting up OAuth 2.0](https://support.google.com/googleapi/answer/6158849) et utilisez les paramètres suivants :

* Sur l’**écran de consentement <Tooltip tip="OAuth 2.0 : framework d’autorisation qui définit les protocoles d’autorisation et les workflows." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=OAuth">OAuth</Tooltip>**, sous **Authorized domains**, ajoutez `auth0.com`.

* Lorsqu’on vous demande de sélectionner un type d’application, choisissez **Web application** et définissez les paramètres suivants :

  | Champ                         | Description                           |
  | ----------------------------- | ------------------------------------- |
  | Name                          | Le nom de votre application.          |
  | Authorized JavaScript origins | `https://{yourDomain}`                |
  | Authorized redirect URIs      | `https://{yourDomain}/login/callback` |

  À moins d’utiliser un [custom domain](/docs/fr-ca/customize/custom-domains), le nom de domaine de votre tenant est `<TENANT NAME>.<REGIONAL SUBDOMAIN>.auth0.com`. Par exemple, le nom de domaine d’un tenant de la région américaine nommé `example-name` est `example-name.us.auth0.com`. Les tenants créés avant juin 2020 n’incluent pas le sous-domaine régional.

* Si vous prévoyez vous connecter à des domaines d’entreprise Google Workspace, vous devez [activer l’**Admin SDK API**](https://support.google.com/googleapi/answer/6158841).

Enregistrez le **<Tooltip tip="Client ID : valeur d’identification attribuée à votre ressource enregistrée par Auth0." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Client+ID">Client ID</Tooltip>** et le **<Tooltip tip="Client ID : valeur d’identification attribuée à votre ressource enregistrée par Auth0." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Client+Secret">Client Secret</Tooltip>** générés par Google pour votre application. Vous aurez besoin de ces valeurs pour créer une connexion d’entreprise Auth0 à l’étape suivante.

<div id="configure-a-google-workspace-enterprise-connection-in-auth0">
  ## Configurer une connexion d’entreprise Google Workspace dans Auth0
</div>

<Steps>
  <Step title="Créer une connexion d’entreprise pour Google Workspace">
    Dans [**Auth0 Dashboard > Authentication > Enterprise**](https://manage.auth0.com/#/connections/enterprise), repérez **Google Workspace** et sélectionnez **Create**.

    <Frame>
      <img src="https://mintcdn.com/translations/eVsQcTnbClN-oB7d/docs/images/cdy7uua7fh8z/1fSTcrZpkgkPR64NnI1lr8/b3454e60a4463e99353603fd11a71983/Enterprise_Connections_-_EN.png?fit=max&auto=format&n=eVsQcTnbClN-oB7d&q=85&s=d70364390d8c16ca8efe20e3e1795db4" alt="Dashboard - Connections - Enterprise" width="600" height="561" data-path="docs/images/cdy7uua7fh8z/1fSTcrZpkgkPR64NnI1lr8/b3454e60a4463e99353603fd11a71983/Enterprise_Connections_-_EN.png" />
    </Frame>
  </Step>

  <Step title="Choisissez les paramètres de votre connexion">
    Sur la page de création d’une nouvelle connexion d’entreprise Google Workspace, configurez ses paramètres :

    | Field                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
    | -------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
    | **Purpose**                            | L’usage de la connexion : login, comptes connectés ou les deux. Pour en savoir plus, consultez [Authentification de l’utilisateur vs comptes connectés](/docs/fr-ca/secure/tokens/token-vault/connected-accounts-for-token-vault#user-authentication-vs-connected-accounts).                                                                                                                                                                                                                                                                                                                                                  |
    | **Connection name**                    | Un identifiant logique pour votre connexion. Il doit être unique dans votre tenant et ne peut pas être modifié.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
    | **Google Workspace Domain**            | Le nom de domaine Google Workspace de votre organisation.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    | **Client ID**                          | Un identifiant unique pour votre application Google enregistrée. Entrez le client ID de l’application que vous avez enregistrée dans la Google Cloud Console.                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
    | **Client Secret**                      | Une chaîne utilisée pour accéder à votre application Google enregistrée. Entrez le client secret de l’application que vous avez enregistrée dans la Google Cloud Console.                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
    | **Attributes**                         | Les attributs de l’utilisateur connecté auxquels votre application peut accéder et qu’Auth0 stocke dans le profil utilisateur : <ul><li>**Profil de base** : `email`, indicateur `email verified`</li> <li>**Profil étendu** : nom, URL du profil public, photo, genre, date de naissance, pays, langue et fuseau horaire</li></ul>                                                                                                                                                                                                                                                                                           |
    | **Extended Attributes** (optional)     | Attributs supplémentaires de l’utilisateur connecté auxquels votre application peut accéder et qu’Auth0 stocke dans le profil utilisateur : <ul><li>**Groupes** : les listes de distribution de l’utilisateur, au format simplifié (noms de groupes) ou au format étendu (objets de groupe avec `name`, `id` et `email`)</li> <li>**Est administrateur du domaine** : si l’utilisateur est administrateur du domaine</li> <li>**Le compte est suspendu** : si le compte de l’utilisateur est suspendu</li> <li>**A accepté les conditions d’utilisation** : si l’utilisateur a accepté les conditions d’utilisation</li></ul> |
    | **Use Admin Directory API** (optional) | L’activation de ce paramètre permet à la connexion d’effectuer des appels à l’API Google Directory. Choisissez les scopes **Users** ou **Users and Groups** selon vos besoins.                                                                                                                                                                                                                                                                                                                                                                                                                                                |
    | **Auth0 User ID** (optional)           | Par défaut, le `user_id` d’Auth0 est mappé à `email`. En activant **Use ID instead of Email for Auth0 User ID**, le `user_id` est plutôt mappé à `id`. Vous ne pouvez définir ce paramètre que pour les nouvelles connexions, et il ne peut plus être modifié une fois configuré.                                                                                                                                                                                                                                                                                                                                             |

    Lorsque vous avez terminé de choisir vos paramètres, cliquez sur **Create**.
  </Step>

  <Step title="Configurer la manière dont les utilisateurs se connectent">
    Dans l’onglet **Expérience de connexion**, configurez la façon dont les utilisateurs se connectent avec cette connexion :

    | Field                    | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
    | ------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
    | **Home Realm Discovery** | Compare le domaine de courriel d’un utilisateur avec les **domaines du fournisseur d’identité** fournis. Pour en savoir plus, consultez [Configurer Identifier First Authentication](/docs/fr-ca/authenticate/login/auth0-universal-login/identifier-first)                                                                                                                                                                                                              |
    | **Connection button**    | Cochez **Afficher la connexion sous forme de bouton** pour activer un bouton pour cette connexion sur la page de connexion de l’application. Vous pourrez alors personnaliser deux options : <ul><li>**Nom d’affichage du bouton** (facultatif) : le texte affiché sur le bouton après "Poursuivre avec".</li><li>**URL du logo du bouton** (facultatif) : l’URL d’une image à afficher à gauche du texte du bouton, sous forme d’un carré de 20 px sur 20 px.</li></ul> |

    Après avoir saisi vos paramètres, cliquez sur **Enregistrer**.
  </Step>

  <Step title="Vérifier le consentement de l’administrateur Google">
    Dans l’onglet **Configuration**, faites l’une des actions suivantes :

    * Suivez le lien **Continuer** si vous avez les permissions d’administrateur nécessaires pour configurer vos paramètres Google Workspace afin d’utiliser les API d’administration de Google, ou

    * Transmettez l’URL fournie à votre administrateur pour qu’il puisse modifier les paramètres requis

    <Warning>
      Si un administrateur Google Workspace est supprimé, toutes les connexions d’entreprise Google Workspace qu’il a autorisées doivent être réautorisées par un autre administrateur Google Workspace afin d’éviter des échecs de connexion. Pour les réautoriser, demandez à un administrateur actuel d’utiliser le lien dans l’onglet **Configuration** de la connexion d’entreprise Google Workspace.
    </Warning>
  </Step>

  <Step title="Activer et tester la connexion">
    [Activez la connexion](/docs/fr-ca/authenticate/identity-providers/enterprise-identity-providers/enable-enterprise-connections) pour vos applications Auth0, puis [testez la connexion](/docs/fr-ca/authenticate/identity-providers/enterprise-identity-providers/test-enterprise-connections) afin de vérifier qu’elle fonctionne.
  </Step>
</Steps>

<div id="next-steps">
  ## Prochaines étapes
</div>

<div id="customize-or-automate-user-profile-synchronization">
  ### Personnaliser ou automatiser la synchronisation des profils utilisateur
</div>

Dans l’onglet **Provisioning** de la connexion, vous pouvez configurer la façon dont les profils utilisateur sont mis à jour :

* Activez **Sync User Profile Attributes at Login** pour permettre à Google de synchroniser les profils utilisateur lorsque l’utilisateur se connecte.

  Une fois cette option activée, vous pouvez choisir la **Sync Frequency**. Par défaut, Auth0 actualise les profils utilisateur à chaque connexion. Vous pouvez aussi choisir de les synchroniser uniquement lors de la première connexion.

* Activez **Provision Users and Groups Using Directory Sync** pour synchroniser automatiquement les utilisateurs et les groupes de Google Workspace avec Auth0. Pour en savoir plus, consultez [Sync Google Workspace Users to Auth0 with Google Directory Sync](/docs/fr-ca/authenticate/identity-providers/enterprise-identity-providers/google-directory-sync).

<div id="get-access-and-refresh-tokens">
  ### Obtenir des jetons d’accès et d’actualisation
</div>

Une fois l’utilisateur authentifié, Google émet un jeton d’accès. Vous pouvez [utiliser ce jeton d’accès](/docs/fr-ca/secure/tokens/access-tokens/identity-provider-access-tokens) pour effectuer des requêtes vers les API de Google.

Pour demander également un <Tooltip tip="Jeton d’actualisation : jeton utilisé pour obtenir un jeton d’accès renouvelé sans obliger les utilisateurs à se connecter de nouveau." cta="Voir le glossaire" href="/docs/fr-ca/glossary?term=Refresh+Token">jeton d’actualisation</Tooltip> à Google, ajoutez `access_type=offline&approval_prompt=force` à la demande d’autorisation.

Pour Google Workspace, Auth0 stocke les jetons d’accès et d’actualisation dans l’objet `user` pour chaque utilisateur et dans l’objet `connection` pour les administrateurs Google Workspace. Vous pouvez y accéder à l’aide du [point de terminaison Get a connection](https://auth0.com/docs/api/management/v2/connections/get-connections-by-id) de la Management API.

<div id="retrieve-additional-user-and-group-details">
  ### Récupérer des renseignements supplémentaires sur l’utilisateur et les groupes
</div>

Pour récupérer des renseignements supplémentaires sur l’utilisateur et les groupes au-delà de ce qu’Auth0 récupère par défaut, vous pouvez utiliser l’API Directory Admin de Google pour obtenir les propriétés de groupes étendues d’un utilisateur.

1. Dans l’onglet **Settings** de votre connexion d’entreprise, dans la section **General**, sous **Extended Attributes**, activez **Groups**.

2. Dans l’onglet **Setup**, accordez le consentement de l’administrateur à l’aide du lien fourni.

3. Récupérez le jeton d’accès administrateur stocké dans l’objet `connection` à l’aide du [point de terminaison Get a connection](https://auth0.com/docs/api/management/v2/connections/get-connections-by-id) de la Management API.

4. Utilisez le jeton d’accès pour effectuer une requête vers le [point de terminaison Manage Groups de Google](https://developers.google.com/admin-sdk/directory/v1/guides/manage-groups#get_all_member_groups). Par exemple :

   ```bash wrap theme={null}
   curl -H "Authorization: OAuth {admin_access_token}" \
       https://admin.googleapis.com/admin/directory/v1/groups\?userKey={user_key}
   ```

<div id="validate-authentication-with-actions">
  ### Valider l’authentification avec Actions
</div>

Vérifier que les événements d’authentification proviennent d’utilisateurs légitimes membres de votre organisation Google peut aider à empêcher des utilisateurs qui ne font plus partie de votre organisation d’accéder sans autorisation à vos applications.

Pour vérifier les authentifications Google, vous pouvez [utiliser une Action post-login](/docs/fr-ca/customize/actions/explore-triggers/signup-and-login-triggers/login-trigger) pour valider que le claim `idp_tenant_domain` associé à l’utilisateur correspond à l’organisation attendue. Par exemple :

```js Example post-login Action code to validate Google authentications theme={null}
exports.onExecutePostLogin = async (event, api) => {
    if (event.connection.strategy === 'google-oauth2') {
        // Bloquer les comptes sociaux (hors organisation)
        if (!event.user.idp_tenant_domain) {
            api.access.deny('Social accounts are not allowed to log in');
        }

        // Autoriser uniquement les comptes d'organisation figurant sur la liste d'autorisation
        if (event.user.idp_tenant_domain != 'example.com') {
            api.access.deny('Your Google Organization is not allowed to log in');
        }
    }
};
```

Vous ne pouvez vérifier `idp_tenant_domain` que pour les utilisateurs qui s’authentifient avec les types de connexion suivants :

* Google Social
* Google Workspace
* Google OIDC

<div id="more-information">
  ### Plus d’informations
</div>

* [En savoir plus sur le flux d’authentification](/docs/fr-ca/get-started/authentication-and-authorization-flow)
* [Transmettre des paramètres supplémentaires au fournisseur d’identité](/docs/fr-ca/authenticate/identity-providers/pass-parameters-to-idps)
* [Redemander des permissions aux utilisateurs](/docs/fr-ca/authenticate/identity-providers/social-identity-providers/reprompt-permissions)

<div id="limits">
  ## Limites
</div>

* Si vous avez déjà une [connexion sociale Google](https://marketplace.auth0.com/integrations/google-social-connection) pour votre application et que vous créez une nouvelle connexion d’entreprise Google Workspace pour le même domaine, les utilisateurs associés à la connexion sociale seront connectés au moyen de la connexion d’entreprise (même si vous ne l’activez pas).

* La connexion d’entreprise Google Workspace permet aux profils utilisateur Auth0 d’avoir jusqu’à 200 groupes. Si un profil utilisateur compte plus de 200 groupes, il se peut que ces groupes ne soient pas affichés. Si vous utilisez des groupes Google pour l’autorisation, vous devez sécuriser Google Workspace afin d’empêcher des utilisateurs non autorisés de modifier les groupes.

* Le bouton de connexion n’est pas disponible pour Classic Login. Pour l’activer et le personnaliser, utilisez Universal Login.
