Configurer des connecteurs de compte

Ce document explique comment utiliser les options de configuration avancées pour les connecteurs de compte Developer Connect.

Un connecteur de compte est une fonctionnalité de Developer Connect qui vous permet d'associer votre compte Google Cloud à votre compte individuel auprès d'un fournisseur d'outils de développement non Google. Les utilisateurs peuvent spécifier le type de données auxquelles le connecteur de compte doit accéder en sélectionnant les champs d'application appropriés pour ce connecteur. Une fois qu'une connexion de connecteur de compte est créée pour une organisation, les utilisateurs de cette organisation peuvent l'utiliser pour autoriser l'utilisation de leurs comptes individuels avec cette connexion.

Vous pouvez configurer un connecteur de compte à l'aide d'un client OAuth préconfiguré Developer Connect (par exemple, GitHub ou GitLab) ou utiliser votre propre client OAuth personnalisé (par exemple, une instance GitHub Enterprise sur site).

Avant de commencer

  1. Connectez-vous à votre compte Google.

    Si vous n'en possédez pas déjà un, vous devez en créer un.

  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Developer Connect API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. L'activation de Developer Connect active également l' API Secret Manager.

  9. Facultatif : Créez une clé de chiffrement gérée par le client (CMEK) pour chiffrer les secrets d'authentification créés par Developer Connect.

Rôles requis

Pour obtenir les autorisations nécessaires pour créer un connecteur de compte, demandez à votre administrateur de vous accorder le rôle IAM Administrateur OAuth Developer Connect (roles/developerconnect.oauthAdmin) sur votre projet. Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.

Créer un connecteur de compte à l'aide des fournisseurs disponibles

Les étapes suivantes décrivent comment créer un connecteur de compte pour les fournisseurs intégrés. Si vous souhaitez créer un connecteur de compte et spécifier votre client OAuth personnalisé, consultez Créer un connecteur de compte à l'aide d'un client OAuth personnalisé.

Google Cloud Console

  1. Dans la Google Cloud console, ouvrez Developer Connect.

    Accéder à Developer Connect

  2. Sélectionnez Connecteurs de compte.

  3. Cliquez sur Créer un connecteur.

  4. Sélectionnez la région dans laquelle créer ce connecteur de compte.

  5. Attribuez un nom au connecteur de compte.

  6. Pour Type de configuration , sélectionnez Clients OAuth préconfigurés.

  7. Sélectionnez le fournisseur OAuth.

  8. Indiquez si vous souhaitez activer ou non le proxy Developer Connect.

    Lorsque le proxy est activé, Developer Connect envoie des commandes Git ou effectue des appels HTTP (ou les deux) au fournisseur en votre nom. En savoir plus.

  9. Sélectionnez les champs d'application à accorder à Developer Connect pour ce connecteur de compte.

    Les champs d'application déterminent les actions que Developer Connect peut effectuer dans le service du fournisseur sélectionné. Les champs d'application varient en fonction du fournisseur. Vous devez sélectionner au moins un champ d'application, sauf si le fournisseur n'en possède aucun.

    Selon le fournisseur, il est possible qu'aucun champ d'application ne soit disponible à sélectionner. Vous pourrez peut-être les ajouter manuellement. Il est également possible que des champs d'application soient obligatoires.

  10. Cliquez sur Créer pour terminer la création de ce connecteur de compte.

Google Cloud CLI

Pour créer un connecteur de compte, exécutez la commande suivante :

   gcloud alpha developer-connect account-connectors create my-ac \
       --location=LOCATION \
       --provider-oauth-config-system-id=PROVIDER \
       --provider-oauth-config-scopes=SCOPES \
       --project=PROJECT_ID

Dans cette commande, remplacez les éléments suivants :

  • LOCATION par la région dans laquelle vous créez ce connecteur de compte.

  • PROVIDER par le fournisseur SCM auquel vous vous connectez :

    GITHUB, GITLAB ou BITBUCKET_CLOUD.

  • PROJECT_ID par l'ID du projet (et non le numéro) dans lequel vous créez ce connecteur de compte.

Créer un connecteur de compte à l'aide d'un client OAuth personnalisé

Les étapes suivantes décrivent comment configurer un connecteur de compte pour qu'il utilise un client OAuth que vous spécifiez. Si vous souhaitez créer un connecteur de compte avec les fournisseurs intégrés, consultez Créer un connecteur de compte à l'aide des fournisseurs disponibles.

Google Cloud Console

  1. Dans la Google Cloud console, ouvrez Developer Connect.

    Accéder à Developer Connect

  2. Sélectionnez Connecteurs de compte.

  3. Cliquez sur Créer un connecteur.

  4. Sélectionnez la région dans laquelle créer ce connecteur de compte.

  5. Attribuez un nom au connecteur de compte.

  6. Pour Type de configuration , sélectionnez Client OAuth personnalisé.

    L'écran Créer un connecteur de compte affiche un URI de redirection.

  7. Copiez l'URI de redirection.

    L'URI aura le format suivant :

    https://developerconnect.google.com/redirect/custom/projects/<project_number>/locations/<location>/accountConnectors/<account_connector_id>

    Dans cet URI, <project_number> correspond au numéro du projet, et NON à son ID.

  8. Créez votre application personnalisée pour le SCM de votre choix à l'aide de l'URI de redirection copié, puis revenez à ce formulaire pour fournir les détails de votre client OAuth :

    1. Sélectionnez le fournisseur.

    2. Dans le champ URI de l'hôte, indiquez l'URI de votre système de gestion du code source.

    3. Saisissez l'adresse du serveur d'autorisation dans le champ URI d'autorisation. Cette adresse se présente comme suit :

      Pour GitHub Enterprise : https://<host_name>/login/oauth/authorize Pour GitLab Enterprise : https://<host_name>/oauth/authorize Pour Bitbucket Data Center : https://<host_name>/rest/oauth2/latest/authorize

    4. Dans le champ URI du jeton, indiquez l'URI à utiliser pour échanger un code d'autorisation contre un jeton d'accès. Cette adresse se présente comme suit :

      Pour GitHub Enterprise : https://<host_name>/login/oauth/access_token Pour GitLab Enterprise : https://<host_name>/oauth/access_token Pour Bitbucket Data Center : https://<host_name>/rest/oauth2/latest/token

    5. Dans le champ ID client, indiquez l'ID client de votre application OAuth.

    6. Indiquez le code secret du client pour authentifier votre application auprès du serveur d'autorisation.

    7. Si votre connecteur de compte utilise le proxy Developer Connect pour émettre des commandes Git, sélectionnez Activer le proxy Developer Connect.

    8. Dans le champ Champs d'application, sélectionnez les champs d'application disponibles dans la liste.

    9. Facultatif : Configurez la mise en réseau et la sécurité :

      1. Indiquez si ce connecteur de compte utilisera l'Internet public ou un réseau privé.

        Si vous choisissez un réseau privé, indiquez les éléments suivants :

        • Le certificat CA à utiliser

        • Les informations de votre service d'annuaire des services :

        Vous pouvez identifier le projet de votre service d'annuaire des services ou spécifier la région, l'espace de noms et le nom du service.

      2. Activez ou désactivez PKCE pour cette application.

        Votre service OAuth doit être compatible avec PKCE.

    10. Cliquez sur Créer pour terminer la création de ce connecteur de compte.

Google Cloud CLI

  ```sh
  gcloud alpha developer-connect account-connectors create my-ac \
    --location=LOCATION \
    --project=PROJECT_ID \
    --custom-provider-oauth-config-system-id=PROVIDER \
    --custom-oauth-config-host-uri= HOST_URI \
    --custom-oauth-config-auth-uri=AUTH_URI \
    --custom-provider-oauth-config-scopes=SCOPES \
    --custom-oauth-config-token-uri=TOKEN_URI \
    --custom-oauth-config-client-id=CLIENT_ID \
    --custom-oauth-config-client-secret=SECRET

  ```

Dans cette commande, remplacez les éléments suivants :

  • LOCATION par la région dans laquelle vous créez ce connecteur de compte.

  • PROJECT_ID par l'ID du projet (et non le numéro) dans lequel vous créez ce connecteur de compte.

  • PROVIDER par le fournisseur SCM auquel vous vous connectez :

    GITHUB_ENTERPRISE, GITLAB_ENTERPRISE ou BITBUCKET_DATA_CENTER.

  • HOST_URI par l'URL de votre système de gestion du code source.

  • AUTH_URI par l'URL utilisée pour vous authentifier auprès du fournisseur SCM de votre choix.

    Exemple :

    • GitHub Enterprise: https://<host_name>/login/oauth/authorize

    • GitLab auto-hébergé : https://<host_name>/oauth/authorize

    • Bitbucket Data Center : https://<host_name>/rest/oauth2/latest/authorize

  • SCOPES par une liste de tous les champs d'application OAuth du fournisseur que vous souhaitez inclure pour ce connecteur de compte, séparés par une virgule.

  • TOKEN_URI par l'URI à utiliser pour échanger un code d'autorisation contre un jeton d'accès.

  • CLIENT_ID par l'ID client de votre application OAuth.

  • SECRET par le code secret fourni par le SCMS auquel vous vous connectez.

Associer votre compte

Une fois que vous avez créé un connecteur de compte, vous devez toujours associer Developer Connect à votre compte auprès du fournisseur avant de pouvoir utiliser le connecteur de compte.

  1. Dans la Google Cloud console, ouvrez Developer Connect.

    Accéder à Developer Connect

  2. Sélectionnez Connecteurs de compte.

    La page Connecteurs de compte répertorie tous les connecteurs de compte de votre projet.

  3. Cliquez sur le nom du connecteur de compte pour lequel vous souhaitez associer votre compte de fournisseur.

    La page Détails du connecteur s'affiche.

  4. Cliquez sur Associer votre compte.

    Une boîte de dialogue d'authentification OAuth s'affiche.

  5. Fournissez les informations dans la boîte de dialogue pour vous authentifier auprès de votre fournisseur.

  6. Cliquez sur Autoriser.

Mettre à jour un connecteur de compte

Vous pouvez mettre à jour un connecteur de compte existant, mais vous ne pouvez modifier que les champs d'application de ce connecteur, activer ou désactiver le paramètre de proxy, ou les deux. Si vous mettez à jour les champs d'application d'un connecteur de compte donné, tous les utilisateurs existants de ce connecteur sont supprimés.

  1. Dans la Google Cloud console, ouvrez Developer Connect.

    Accéder à Developer Connect

    Developer Connect affiche la page Dépôts Git.

  2. Sélectionnez Connecteurs de compte.

    La page Connecteurs de compte répertorie tous les connecteurs de compte de votre projet.

  3. Cliquez sur le nom du connecteur de compte que vous souhaitez mettre à jour.

    La page Détails du connecteur s'affiche.

  4. Cliquez sur Modifier.

  5. Dans la liste Champs d'application, sélectionnez les champs d'application que vous souhaitez autoriser pour ce connecteur de compte.

  6. Cliquez sur Enregistrer.

Supprimer un connecteur de compte

  1. Dans la Google Cloud console, ouvrez Developer Connect.

    Accéder à Developer Connect

    Developer Connect affiche la page Dépôts Git.

  2. Sélectionnez Connecteurs de compte.

    La page Connecteurs de compte répertorie tous les connecteurs de compte de votre projet.

  3. Dans le menu Plus, sélectionnez Supprimer.

    La page Détails du connecteur s'affiche.

  4. Cliquez sur Modifier.

Étape suivante