Conéctate a Secure Source Manager

En esta página, se describe cómo crear conexiones a Secure Source Manager y vincularlas a repositorios de Secure Source Manager. Esta integración te permite usar las funciones de Developer Connect, como las vistas de panel de tus repositorios de Secure Source Manager, y usar el proxy de Developer Connect para realizar operaciones de git, como operaciones de lectura seguras.

Antes de comenzar

  1. 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

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

  3. Enable the Developer Connect, Secret Manager APIs, if any are not already enabled.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  4. Opcional: Crea una clave de encriptación administrada por el cliente (CMEK) para encriptar los secretos de autenticación que crea Developer Connect.
  5. Para usar las instrucciones de la línea de comandos de esta guía, completa los siguientes pasos (opcional):
    1. Instala la Google Cloud CLI. Si ya instalaste gcloud CLI, ejecuta gcloud components update para asegurarte de tener la última versión disponible.
    2. Crea una cuenta de servicio de Developer Connect ejecutando el siguiente comando, en el que PROJECT_ID es el ID del proyecto deGoogle Cloud :
              gcloud beta services identity create \
                  --service=developerconnect.googleapis.com \
                  --project=PROJECT_ID
              

Requisitos de Secure Source Manager

  • Asegúrate de tener una instancia operativa de Secure Source Manager implementada en una región de Google Cloud .
  • La conexión de Developer Connect y la instancia de Secure Source Manager deben estar en la misma región.
  • Otorga al agente de servicio de Developer Connect (P4SA) el rol de roles/securesourcemanager.developerConnectLinker en el proyecto de la instancia de Secure Source Manager.

Roles obligatorios

Para obtener los permisos que necesitas para crear conexiones y vínculos, pídele a tu administrador que te otorgue los siguientes roles de IAM:

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Crear una conexión

En esta sección, se describe cómo crear una conexión entre Developer Connect y Secure Source Manager. Si usas la consola de Google Cloud , también puedes comenzar a agregar vínculos a repositorios cuando termines de configurar la conexión.

Para crear una nueva conexión de Secure Source Manager, selecciona una de las siguientes opciones:

Console

  1. En la consola de Google Cloud , abre Developer Connect.

    Ir a Developer Connect

  2. Haz clic en Crear conexión.

  3. Selecciona Secure Source Manager como tu proveedor de código fuente.

  4. En Región, elige una región para tu conexión. Debe ser la misma región que tu instancia de Secure Source Manager.

  5. En Nombre, ingresa un nombre para tu conexión.

  6. En la lista Instancia, selecciona una instancia.

  7. Haz clic en Mostrar más para ver los parámetros de configuración opcionales.

  8. Opcional: Para inhabilitar el proxy de Developer Connect, desmarca la casilla de verificación Habilitar el proxy de Developer Connect.

  9. Haz clic en Continuar.

  10. Puedes vincular repositorios ahora o hacerlo más tarde editando la conexión. Para vincular repositorios, selecciónalos de la lista.

  11. Haz clic en Vincular.

Developer Connect crea los vínculos del repositorio y los muestra en la consola de Google Cloud .

gcloud

Para crear una conexión de Developer Connect con Google Cloud CLI, ejecuta el siguiente comando:

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

Aquí:

  • CONNECTION_ID es el ID de la conexión de Developer Connect que deseas crear.
  • REGION es la región de tu conexión. Debe ser la misma región que tu instancia de Secure Source Manager.
  • CONNECTION_PROJECT_ID es el ID del proyecto de Google Cloud en el que deseas crear tu conexión.
  • INSTANCE_PROJECT_ID es el ID del proyecto de Google Cloud en el que se encuentra tu instancia de Secure Source Manager.
  • INSTANCE_ID es el ID de tu instancia de Secure Source Manager.

curl

Para crear una conexión de Developer Connect con curl, realiza la siguiente llamada a la API:

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"}}'

Aquí:

  • CONNECTION_ID es el ID de la conexión de Developer Connect que deseas crear.
  • REGION es la región de tu conexión. Debe ser la misma región que tu instancia de Secure Source Manager.
  • CONNECTION_PROJECT_ID es el ID del proyecto de Google Cloud en el que deseas crear tu conexión.
  • INSTANCE_PROJECT_ID es el ID del proyecto de Google Cloud en el que se encuentra tu instancia de Secure Source Manager.
  • INSTANCE_ID es el ID de tu instancia de Secure Source Manager.

Una vez que hayas establecido una conexión con Secure Source Manager, podrás vincularte a repositorios. Puedes repetir estos pasos más adelante para vincular repositorios adicionales según sea necesario.

Para crear vínculos de repositorio en una conexión existente de Secure Source Manager, selecciona una de las siguientes opciones:

Console

  1. Abre la página Repositorios en la consola de Google Cloud .

    Abre la página Repositorios

  2. Haz clic en Vincular repositorio.

    Se abrirá el panel Vincular repositorios de Git.

  3. En la lista de conexiones, elige tu conexión de Secure Source Manager.

  4. Haz clic en Continuar.

  5. En la lista de repositorios, selecciona los que deseas vincular.

  6. Haz clic en Crear.

Developer Connect crea los vínculos del repositorio y los muestra en la consola de Google Cloud .

gcloud

Para obtener más información sobre cómo administrar los vínculos de repositorios de Git con gcloud, consulta gcloud developer-connect connections git-repository-links.

Usa el proxy de Developer Connect en Cloud Build

Para usar el proxy de Developer Connect en Cloud Build, sigue estos pasos:

  1. Otorga al agente de servicio de Secure Source Manager el rol roles/developerconnect.viewer o cualquier rol que tenga el permiso developerconnect.gitRepositoryLinks.get en el proyecto de Developer Connect.
  2. Vincula tu repositorio de Secure Source Manager a un gitRepositoryLink de Developer Connect. Consulta Vincula a un repositorio de Secure Source Manager para obtener instrucciones.
  3. En el archivo .cloudbuild/trigger.yaml del directorio raíz del repositorio, agrega una entrada nueva que apunte al recurso gitRepositoryLink objetivo.

    Por ejemplo:

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

Alcance y limitaciones operativas

Después de configurar la conexión, puedes realizar operaciones de lectura seguras de git, como clone, en instancias de Secure Source Manager con el URI del proxy de Developer Connect.

El proxy de Developer Connect no admite operaciones git push. El sistema impide las operaciones de escritura que usan la identidad de la P4SA de DevConnect.

Puedes actualizar otros parámetros de configuración de la conexión, por ejemplo, para habilitar o inhabilitar el proxy de Developer Connect, pero no puedes apuntar la conexión existente a una instancia diferente de Secure Source Manager.

¿Qué sigue?