Cada tema (un usuario o un grupo) sigue un proceso de dos pasos para obtener acceso al servidor de la API global. Otorga a un tema permisos en el servidor de la API global con IAMRoleBinding a un IAMRole predefinido. Todas las funciones y las vinculaciones de funciones son globales.
Esta página está destinada a públicos dentro del grupo de administradores de la plataforma que administran permisos dentro de su organización. Para obtener más información, consulta Públicos de la documentación de Google Distributed Cloud aislado.
Antes de comenzar
Antes de administrar las vinculaciones de funciones o revocar el acceso, debes solicitar los permisos necesarios y preparar tu entorno. Las funciones específicas requeridas dependen de si administras las vinculaciones de funciones o revocas el acceso del usuario.
Solicita funciones de IAM
Comunícate con tu administrador de IAM de la organización para solicitar las funciones según las tareas que necesites realizar:
- Administrador de IAM de la organización (
organization-iam-admin): Crea, actualiza y borra vinculaciones de funciones a nivel de la organización y del proyecto. - Administrador de sesiones de la organización (
org-session-admin): Revoca las sesiones activas y el acceso de un usuario dentro de una zona específica.
Prepara el entorno
Para usar las herramientas de línea de comandos para administrar las vinculaciones de funciones o revocar el acceso, completa la siguiente configuración.
- Descarga e instala la CLI de gdcloud, si aún no lo hiciste.
- Para usar la API con
kubectl, se requiere una configuración adicional:
Configura las vinculaciones de funciones
Puedes configurar vinculaciones de funciones que les den a los miembros del equipo acceso a los recursos a nivel de la organización o del proyecto.
Asigna una función a un miembro autorizado:
Console
- Accede a la consola de GDC.
- Selecciona una organización o un proyecto en el selector de alcance.
- Para configurar vinculaciones de funciones para una organización, selecciona una organización.
- Para configurar vinculaciones de funciones para un proyecto, selecciona un proyecto.
- En el menú de navegación, haz clic en Identity and Access > Access.
- Haz clic en Agregar miembro.
- Elige si deseas agregar usuarios o grupos individuales.
- En la lista Proveedor de identidad, selecciona un proveedor de identidad.
- En el campo Nombre de usuario o alias del grupo , ingresa el nombre de usuario, la dirección de correo electrónico o el alias.
- En la lista Función, selecciona la función que deseas asignar al usuario o grupo, como Visualizador de la organización a nivel de la organización o Creador del proyecto a nivel del proyecto.
- Haz clic en Agregar.
El miembro aparece en la lista Miembro autorizado.
gdcloud
Asegúrate de tener instalada la CLI de gdcloud.
Accede con el comando
gdcloud auth loginpara autenticarte con tu proveedor de identidad. Para obtener más información, consulta la autenticación de la CLI de gdcloud.Configura las vinculaciones de funciones.
Configura las vinculaciones de funciones para una organización:
gdcloud organizations add-iam-policy-binding ORGANIZATION \ --member=USER_ACCOUNT \ --role=ROLEReemplaza las siguientes variables:
ORGANIZATION: Es el nombre de la organización para la que configuras la vinculación de funciones.USER_ACCOUNT: Es la cuenta de usuario a la que deseas otorgar la función. Esta marca acepta una dirección de correo electrónico del usuario con el prefijo del proveedor de identidad (user:idpprefix-user@example.com) o un nombre de cuenta de servicio con el proyecto de la cuenta de servicio (serviceAccount:projectName:serviceAccountName).ROLE: Es el nombre de la función predefinida o personalizada que deseas asignar al usuario.
Configura las vinculaciones de funciones para un proyecto:
gdcloud projects add-iam-policy-binding PROJECT \ --member=USER_ACCOUNT \ --role=ROLEReemplaza las siguientes variables:
PROJECT: Es el nombre del proyecto para el que configuras la vinculación de funciones.USER_ACCOUNT: Es la cuenta de usuario a la que deseas otorgar la función. Esta marca acepta una dirección de correo electrónico del usuario con el prefijo del proveedor de identidad (user:idpprefix-user@example.com) o un nombre de cuenta de servicio con el proyecto de la cuenta de servicio (serviceAccount:projectName:serviceAccountName).ROLE: Es el nombre de la función predefinida o personalizada que deseas asignar al usuario.
API
Exporta la credencial de usuario que usas:
export GLOBAL_API_SERVER_KUBECONFIG=GLOBAL_API_SERVER_KUBECONFIGExporta la cuenta de usuario para la que deseas asignar la función, incluido el prefijo del proveedor de identidad (como
idpprefix-paul@example.com):export USERNAME=IDP_PREFIX-USER_EMAILExporta el nombre de la función que necesita el usuario, como
project-creator. Consulta Definiciones de funciones para encontrar la función correspondiente.export ROLE_NAME=ROLE_NAMEExporta el espacio de nombres en el que se debe crear la vinculación:
export BINDING_NAMESPACE=BINDING_NAMESPACEReemplaza BINDING_NAMESPACE por
platformpara las funciones con alcance de la organización o el nombre del espacio de nombres del proyecto de destino para las funciones con alcance del proyecto.Consulta Definiciones de funciones para obtener una lista de las funciones y su alcance.
Crea y aplica un recurso personalizado
IAMRoleBinding:cat <<EOF | kubectl --kubeconfig ${GLOBAL_API_SERVER_KUBECONFIG} apply -f - apiVersion: iam.global.gdc.goog/v1 kind: IAMRoleBinding metadata: name: ${USERNAME}-${ROLE_NAME}-binding namespace: ${BINDING_NAMESPACE} spec: roleRef: apiGroup: iam.global.gdc.goog kind: IAMRole name: ${ROLE_NAME} subjects: - apiGroup: rbac.authorization.k8s.io kind: User name: ${USERNAME} EOF
Quita vinculaciones de funciones
Cuando ya no se requiera el acceso, quita un miembro y sus funciones, permisos y acceso asociados.
Para quitar miembros, sigue estos pasos:
Console
- Accede a la consola de GDC.
- En el menú de navegación, haz clic en Identity and Access > Access.
- En la lista Miembros autorizados, selecciona un miembro.
- Haz clic en Quitar miembro.
- Cuando se te solicite, haz clic en Quitar miembro para confirmar.
gdcloud
Asegúrate de tener instalada la CLI de gdcloud.
Accede con el comando
gdcloud auth loginpara autenticarte con tu proveedor de identidad. Para obtener más información, consulta la autenticación de la CLI de gdcloud.Quita las vinculaciones de funciones.
Quita las vinculaciones de funciones para una organización:
gdcloud organizations remove-iam-policy-binding ORGANIZATION \ --member=USER_ACCOUNT \ --role=ROLEReemplaza las siguientes variables:
ORGANIZATION: Es el nombre de la organización de la que quitas la vinculación de funciones.USER_ACCOUNT: Es la cuenta de usuario de la que deseas quitar la función. Esta marca acepta una dirección de correo electrónico del usuario con el prefijo del proveedor de identidad (user:idpprefix-user@example.com) o un nombre de cuenta de servicio con el proyecto de la cuenta de servicio (serviceAccount:projectName:serviceAccountName).ROLE: Es el nombre de la función predefinida o personalizada que deseas quitar de la cuenta de usuario.
Quita las vinculaciones de funciones para un proyecto:
gdcloud projects remove-iam-policy-binding PROJECT \ --member=USER_ACCOUNT \ --role=ROLEReemplaza las siguientes variables:
PROJECT: Es el nombre del proyecto del que quitas la vinculación de funciones.USER_ACCOUNT: Es la cuenta de usuario de la que deseas quitar la función. Esta marca acepta una dirección de correo electrónico del usuario con el prefijo del proveedor de identidad (user:idpprefix-user@example.com) o un nombre de cuenta de servicio con el proyecto de la cuenta de servicio (serviceAccount:projectName:serviceAccountName).ROLE: Es el nombre de la función predefinida o personalizada que deseas quitar de la cuenta de usuario.
API
Borra el IAMRoleBinding para revocar el permiso otorgado a la cuenta de PA:
kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG \
delete iamrolebinding USERNAME-ROLE_NAME-binding -n BINDING_NAMESPACE
Reemplaza lo siguiente:
- GLOBAL_API_SERVER_KUBECONFIG: Es la ruta al archivo kubeconfig para acceder al servidor de la API global.
- USERNAME: Es la cuenta de usuario para la que deseas
quitar la función, incluido el prefijo del proveedor de identidad (como
idpprefix-paul@example.com). - ROLE_NAME: Es el nombre de la función que deseas quitar,
como
project-creator. - BINDING_NAMESPACE: Reemplaza por
platformpara las funciones con alcance de la organización o el nombre del espacio de nombres del proyecto de destino para las funciones con alcance del proyecto.
Revoca el acceso del usuario
Si un miembro abandona tu organización o equipo, puedes revocar su acceso a Google Distributed Cloud (GDC) aislado. Si revocas el acceso de un usuario, se cierra su sesión en Distributed Cloud y se quitan sus funciones y permisos. También puedes enumerar la actividad y las sesiones del usuario desde su hora de inicio y finalización.
Para revocar el acceso de un usuario en un universo de GDC, debes revocar el acceso para cada zona individual por separado. Completa los siguientes pasos para cada zona:
Asegúrate de haber accedido a la zona para la que deseas revocar el acceso. Por ejemplo, establece la configuración de URL zonal para la CLI de gdcloud y, luego, accede:
gdcloud config set organization_console_url ZONE_URL gdcloud auth loginReemplaza
ZONE_URLpor la URL de la consola de GDC para la zona para la que deseas revocar el acceso del usuario, que se parece ahttps://console.ORG_NAME.ZONE_NAME.ORG_SUFFIX.Para obtener más información sobre cómo cambiar los contextos zonales, consulta Accede a las zonas con tus herramientas.
Revoca el acceso del usuario a la zona:
gdcloud admin auth revoke --accounts USER_EMAILReemplaza USER_EMAIL por el correo electrónico del usuario para revocar el acceso.
Después de ejecutar el comando, verás un resultado similar al siguiente. En este ejemplo, se revoca el acceso del usuario
ariel@example.com:Success: NUMBER of sessions revoked for user ariel@example.comEn este ejemplo, la variable NUMBER hace referencia a la cantidad de sesiones activas que tenía el usuario.
Para confirmar que revocaste el acceso del usuario, vuelve a ejecutar el comando
gdcloud admin auth revoke. Si la operación se realiza correctamente, verás lo siguiente:No sessions found for account: ariel@example.comRepite los pasos anteriores para cada zona de tu universo.