Se connecter à Secure Source Manager

Cette page explique comment créer des connexions à Secure Source Manager et comment associer des dépôts Secure Source Manager. Cette intégration vous permet d'utiliser les fonctionnalités Developer Connect, telles que les vues du tableau de bord de vos dépôts Secure Source Manager, et d'utiliser le proxy Developer Connect pour effectuer des opérations git, telles que des opérations de lecture sécurisées.

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. 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.
  9. Facultatif : Pour utiliser les instructions de ligne de commande de ce guide, procédez comme suit :
    1. Installez la Google Cloud CLI. Si vous avez déjà installé la gcloud CLI, assurez-vous de disposer de la dernière version disponible en exécutant gcloud components update.
    2. Créez un compte de service Developer Connect en exécutant la commande suivante, où PROJECT_ID correspond à l'ID de votre projet :Google Cloud
              gcloud beta services identity create \
                  --service=developerconnect.googleapis.com \
                  --project=PROJECT_ID
              

Exigences Secure Source Manager

  • Assurez-vous d'avoir une instance Secure Source Manager opérationnelle déployée dans une région Google Cloud .
  • La connexion Developer Connect et l'instance Secure Source Manager doivent se trouver dans la même région.
  • Attribuez le rôle roles/securesourcemanager.developerConnectLinker à l'agent de service Developer Connect (P4SA) dans le projet de l'instance Secure Source Manager.

Rôles requis

Pour obtenir les autorisations nécessaires à la création de connexions et de liens, demandez à votre administrateur de vous accorder les rôles IAM suivants :

  • Pour créer une connexion et l'associer à un dépôt : Administrateur Developer Connect (roles/developerconnect.admin) sur le projet dans lequel vous souhaitez créer des ressources Developer Connect.
  • Pour accorder des autorisations à l'agent de service Developer Connect : Administrateur IAM du projet (roles/resourcemanager.projectIamAdmin) sur le projet sur lequel Secure Source Manager est exécuté.

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 une connexion

Cette section explique comment créer une connexion entre Developer Connect et Secure Source Manager. Si vous utilisez la console Google Cloud , vous pouvez également commencer à ajouter des liens vers des dépôts une fois que vous avez terminé de configurer votre connexion.

Pour créer une connexion Secure Source Manager, sélectionnez l'une des options suivantes :

Console

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

    Accéder à Developer Connect

  2. Cliquez sur Créer une connexion.

  3. Sélectionnez Secure Source Manager comme fournisseur de source.

  4. Dans le champ Région, sélectionnez une région pour votre connexion. Il doit s'agir de la même région que celle de votre instance Secure Source Manager.

  5. Dans le champ Nom, saisissez un nom pour votre connexion.

  6. Dans la liste Instance, sélectionnez une instance.

  7. Cliquez sur Afficher plus pour afficher les paramètres de configuration facultatifs.

  8. Facultatif : Pour désactiver le proxy Developer Connect, décochez la case Activer le proxy Developer Connect.

  9. Cliquez sur Continuer.

  10. Vous pouvez associer des dépôts maintenant ou plus tard en modifiant la connexion. Pour associer des dépôts, sélectionnez-les dans la liste.

  11. Cliquez sur Associer.

Developer Connect crée les liens vers le dépôt et les affiche dans la console Google Cloud .

gcloud

Pour créer une connexion Developer Connect avec Google Cloud CLI, exécutez la commande suivante :

gcloud developer-connect connections create CONNECTION_ID \
  --location=REGION \
  --project=CONNECTION_PROJECT_ID \
  --secure-source-manager-instance-config=projects/INSTANCE_PROJECT_ID/locations/REGION/instances/INSTANCE_ID

Où :

  • CONNECTION_ID correspond à l'ID de la connexion Developer Connect que vous souhaitez créer.
  • REGION est la région de votre connexion. Il doit s'agir de la même région que celle de votre instance Secure Source Manager.
  • CONNECTION_PROJECT_ID correspond à l'ID du projet Google Cloud dans lequel vous souhaitez créer votre connexion.
  • INSTANCE_PROJECT_ID est l'ID du projet Google Cloud dans lequel se trouve votre instance Secure Source Manager.
  • INSTANCE_ID est l'ID de votre instance Secure Source Manager.

curl

Pour créer une connexion Developer Connect avec curl, effectuez l'appel d'API suivant :

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
https://developerconnect.googleapis.com/v1/projects/CONNECTION_PROJECT_ID/locations/REGION/connections?connection_id=CONNECTION_ID \
-X POST -H "Content-Type: application/json" \
-d '{"secure_source_manager_instance_config":{"instance":"projects/INSTANCE_PROJECT_ID/locations/REGION/instances/INSTANCE_ID"}}'

Où :

  • CONNECTION_ID correspond à l'ID de la connexion Developer Connect que vous souhaitez créer.
  • REGION est la région de votre connexion. Il doit s'agir de la même région que celle de votre instance Secure Source Manager.
  • CONNECTION_PROJECT_ID correspond à l'ID du projet Google Cloud dans lequel vous souhaitez créer votre connexion.
  • INSTANCE_PROJECT_ID est l'ID du projet Google Cloud dans lequel se trouve votre instance Secure Source Manager.
  • INSTANCE_ID est l'ID de votre instance Secure Source Manager.

Une fois que vous avez établi une connexion à Secure Source Manager, vous pouvez créer un lien vers des dépôts. Vous pourrez répéter ces étapes ultérieurement pour associer d'autres dépôts si nécessaire.

Pour créer des liens de dépôt sur une connexion Secure Source Manager existante, sélectionnez l'une des options suivantes :

Console

  1. Ouvrez la page Dépôts dans la console Google Cloud .

    Ouvrir la page Dépôts

  2. Cliquez sur Associer un dépôt.

    Le volet Associer des dépôts Git s'ouvre.

  3. Dans la liste des connexions, sélectionnez votre connexion Secure Source Manager.

  4. Cliquez sur Continuer.

  5. Dans la liste des dépôts, sélectionnez ceux que vous souhaitez associer.

  6. Cliquez sur Créer.

Developer Connect crée les liens vers le dépôt et les affiche dans la console Google Cloud .

gcloud

Pour en savoir plus sur la gestion des liens de dépôt Git avec gcloud, consultez gcloud developer-connect connections git-repository-links.

Utiliser le proxy Developer Connect dans Cloud Build

Pour utiliser le proxy Developer Connect dans Cloud Build, procédez comme suit :

  1. Attribuez le rôle roles/developerconnect.viewer ou tout rôle disposant de l'autorisation developerconnect.gitRepositoryLinks.get à l'agent de service Secure Source Manager sur le projet Developer Connect.
  2. Associez votre dépôt Secure Source Manager à un gitRepositoryLink Developer Connect. Pour obtenir des instructions, consultez Associer un dépôt Secure Source Manager.
  3. Dans le fichier .cloudbuild/trigger.yaml du répertoire racine de votre dépôt, ajoutez une entrée pour pointer vers la ressource gitRepositoryLink cible.

    Exemple :

    triggers:
    - name: test-trigger
      project: my-project
      configFilePath: cloudbuild.yaml
      eventType: push
      serviceAccount: projects/my-project/serviceAccounts/my-sa@my-project.iam.gserviceaccount.com
      devConnectGitRepositoryLink: projects/my-project/locations/us-central1/connections/my-ssm-connection/gitRepositoryLinks/my-repo-link
    

Champ d'application et limites opérationnelles

Une fois la connexion configurée, vous pouvez effectuer des opérations de lecture git sécurisées, telles que clone, sur les instances Secure Source Manager à l'aide de l'URI du proxy Developer Connect.

Le proxy Developer Connect n'est pas compatible avec les opérations git push. Le système empêche les opérations d'écriture qui utilisent l'identité du P4SA DevConnect.

Vous pouvez mettre à jour d'autres configurations de la connexion, par exemple pour activer ou désactiver le proxy Developer Connect, mais vous ne pouvez pas rediriger la connexion existante vers une autre instance Secure Source Manager.

Étapes suivantes