En esta página, se describe cómo otorgar a tus usuarios acceso a tu instancia de Secure Source Manager con Identity and Access Management (IAM). Para obtener más detalles sobre el control de acceso en Secure Source Manager, consulta Control de acceso con IAM.
Roles requeridos
Para obtener los permisos que necesitas para otorgar a los usuarios acceso a la instancia,
pídele a tu administrador que te otorgue el
rol de propietario de la instancia de Secure Source Manager (roles/securesourcemanager.instanceOwner
)
rol de IAM en la instancia de Secure Source Manager.
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.
Para obtener información sobre cómo otorgar roles de Secure Source Manager, consulta Control de acceso con IAM.
Cómo otorgar acceso a usuarios de la federación de identidades de personal
Si usas la federación de identidades de personal para acceder a Secure Source Manager, los principales se representan de manera diferente. Para obtener más información sobre cómo otorgar acceso a principales que representan grupos de identidades, consulta Representa a los usuarios del grupo de personal en políticas de IAM.
Por ejemplo, el siguiente comando otorga al usuario user@example.com
el rol de Instance Accessor (roles/securesourcemanager.instanceAccessor
) en el grupo de personal my-pool
en la instancia my-instance
del proyecto my-project
en la región us-central1
:
gcloud beta source-manager instances add-iam-policy-binding my-instance \
--project=my-project \
--region=us-central1 \
--member=principal://iam.googleapis.com/locations/global/workforcePools/my-pool/subject/user@example.com \
--role=roles/securesourcemanager.instanceAccessor
Puedes otorgar acceso a usuarios o grupos dentro de tu grupo de identidades para cargas de trabajo según los atributos de tu proveedor de identidad (IdP), o bien usar el lenguaje de expresiones comunes (CEL) para asignar tus atributos de OIDC a atributos personalizados y definir una estrategia de autorización en tu política de IAM. Para obtener más información sobre las asignaciones de atributos, consulta Asignaciones de atributos.
Cómo otorgar acceso a un solo usuario
Para otorgar acceso a un solo usuario a la instancia, usa el siguiente comando de Google Cloud CLI:
gcloud beta source-manager instances add-iam-policy-binding INSTANCE_ID \
--project=PROJECT_ID \
--region=REGION \
--member=PRINCIPAL_IDENTIFIER \
--role=roles/securesourcemanager.instanceAccessor
Reemplaza lo siguiente:
INSTANCE_ID
por el ID de la instancia.PROJECT_ID
por el ID del proyecto o el número del proyecto de la instancia.REGION
con la región en la que se encuentra la instancia. Consulta la documentación de ubicaciones para conocer las regiones disponibles de Secure Source Manager.PRINCIPAL_IDENTIFIER
con el identificador de la principal a la que deseas otorgar el rol.Por ejemplo, para otorgar el rol a un solo usuario con su dirección de correo electrónico, debes darle formato al identificador principal como
user:EMAIL
, donde EMAIL es la dirección de correo electrónico del usuario.Para obtener más información sobre los identificadores de principal compatibles, consulta Identificadores de principal.
Por ejemplo, el siguiente comando otorga al usuario trusted-user1@gmail.com
el rol de roles/securesourcemanager.instanceAccessor
en la instancia my-instance
, en el proyecto my-project
en la región us-central
.
gcloud beta source-manager instances add-iam-policy-binding INSTANCE_ID \
--project=my-project \
--region=us-central1 \
--member=user:trusted-user1@gmail.com \
--role=roles/securesourcemanager.instanceAccessor
Otorga acceso a varios usuarios
Crea un Grupo de Google de todos los usuarios que necesiten acceder a tu instancia. El grupo puede ser específico del dominio.
Te recomendamos que crees un grupo amplio que incluya a todos los usuarios potenciales, por ejemplo, todos los desarrolladores y las personas que pueden presentar problemas en tu empresa. Los usuarios deben pertenecer a este grupo para acceder a los recursos o crearlos en una instancia de Secure Source Manager, incluidos los repositorios y los problemas.
Crear un grupo amplio permite a los líderes de equipo administrar los roles de usuario a nivel de la instancia y del repositorio sin tener que administrar también la membresía del grupo.
Para leer la política de permisos actual y guardarla en
/tmp/instances.json
, ejecuta el siguiente comando:gcloud beta source-manager instances get-iam-policy INSTANCE_ID \ --project=PROJECT_ID \ --region=REGION \ --format=json > /tmp/instance.json
Reemplaza lo siguiente:
INSTANCE_ID
por el ID de la instancia.PROJECT_ID
por el ID del proyecto o el número del proyecto de la instancia.REGION
con la región en la que se encuentra la instancia. Consulta la documentación de ubicaciones para conocer las regiones disponibles de Secure Source Manager.
El resultado incluirá cualquier vinculación existente o, si no existe ninguna, el valor
etag
similar al siguiente:{ "etag": "BwUjHYKJUiQ=" }
Edita el archivo JSON
/tmp/instance.json
para otorgar a tus grupos los siguientes roles:- Rol de Instance Accessor (
roles/securesourcemanager.instanceAccessor
) para los usuarios que necesitan ver la instancia, pero no crean ni modifican repositorios. - Rol de creador de repositorios de instancias (
roles/securesourcemanager.instanceRepositoryCreator
) para los usuarios que necesitan crear y modificar repositorios. - Rol de propietario de la instancia (
roles/securesourcemanager.instanceOwner
) para los usuarios que administrarán tu instancia.
En la siguiente política de ejemplo, se otorga el rol
roles/securesourcemanager.instanceRepositoryCreator
al grupoyour-group@gmail.com
y se otorga el rolroles/securesourcemanager.instanceOwner
a los usuariostrusted-user1@gmail.com
ytrusted-user2@gmail.com
.{ "etag": "ETAG", "bindings": [ { "role": "roles/securesourcemanager.instanceRepositoryCreator", "members": [ "group:GROUP_EMAIL" ] }, { "role": "roles/securesourcemanager.instanceOwner", "members": [ "user:USER_EMAIL_1", "user:USER_EMAIL_2" ] } ] }
Reemplaza lo siguiente:
ETAG
con el valoretag
de la respuestagetIamPolicy
. En este caso, seríaBwUjHYKJUiQ=
.GROUP_EMAIL
con la dirección de correo electrónico de tu grupo de Google.USER_EMAIL_1
yUSER_EMAIL_2
con las direcciones de correo electrónico de los usuarios a los que deseas otorgar el rol de propietario de la instancia.
- Rol de Instance Accessor (
Guarda el archivo
/tmp/instance.json
editado.Después de modificar la política de permisos guardada para otorgar y revocar los roles deseados, actualiza la política de permisos de tu instancia ejecutando el siguiente comando:
gcloud beta source-manager instances set-iam-policy INSTANCE_ID \ --project=PROJECT_ID \ --region=REGION \ /tmp/instance.json
Reemplaza lo siguiente:
INSTANCE_ID
por el ID de la instancia.PROJECT_ID
con el ID del proyecto o el número del proyecto de la instancia.REGION
con la región en la que se encuentra la instancia. Consulta la documentación de ubicaciones para conocer las regiones disponibles de Secure Source Manager.
¿Qué sigue?
- Otorga acceso al repositorio a los usuarios.
- Obtén más información sobre el control de acceso con la IAM.
- Crea un repositorio.
- Otorga y revoca roles de IAM.