Restringe identidades por dominio

El administrador de los recursos proporciona una restricción de dominio que se puede usar en las políticas de la organización para limitar el uso compartido de recursos en función del dominio. Esta restricción te permite restringir el conjunto de identidades que se pueden usar en las políticas de administración de identidades y accesos.

Las políticas de la organización pueden usar esta restricción para limitar el uso compartido de recursos a un conjunto específico de uno o más dominios de Google Workspace. Se pueden otorgar excepciones por carpeta o por proyecto. Para obtener más información sobre cómo agregar excepciones, consulta la sección sobre cómo anular la política de la organización de un proyecto.

La restricción de dominio no es retroactiva. Una vez que se establezca una restricción de dominio, esta limitación se aplicará a los cambios en la política de IAM que se realicen a partir de ese momento, y no a los cambios anteriores.

Por ejemplo, considera dos organizaciones relacionadas: examplepetstore.com y altostrat.com. Otorgaste una función de IAM a una identidad de examplepetstore.com en altostrat.com. Luego, decidiste restringir las identidades por dominio e implementaste una política de la organización con la restricción de dominio en altostrat.com. En este caso, las identidades existentes de examplepetstore.com no perderían el acceso en altostrat.com. A partir de ese momento, solo podrías otorgar funciones de IAM a identidades del dominio altostrat.com.

La restricción de dominio se basa en la restricción de lista iam.allowedPolicyMemberDomains.

Cuando esta restricción se configura en un dominio de Google Workspace, afecta a todas las identidades que están en ese dominio. Esto incluye las cuentas de usuario que se administran en la consola de Google Workspace y no desde Google Cloud Console.

Configura la política de la organización

La restricción de dominio es un tipo de restricción de lista. Los ID de cliente de Google Workspace se pueden agregar y quitar de la lista allowed_values de una restricción de dominio. La política de la organización afecta a todos los dominios asociados con esa cuenta de Google Workspace.

Debes tener permiso para modificar las políticas de la organización a fin de configurar esta restricción. Por ejemplo, la función orgpolicy.policyAdmin tiene permiso para configurar restricciones en la política de la organización. La función resourcemanager.organizationAdmin tiene permiso para agregar un usuario como administrador de políticas de la organización. Lee la sección sobre cómo usar restricciones para obtener más información sobre la administración de las políticas a nivel de organización.

Console

Para configurar una política de la organización que incluya una restricción de dominio, sigue estos pasos:

  1. Dirígete a la página Políticas de la organización en Cloud Console.
    Ir a la página Políticas de la organización
  2. Haz clic en Seleccionar.
  3. Selecciona la organización en la que deseas configurar la política.
  4. Haz clic en Uso compartido restringido del dominio.
  5. Haz clic en el botón Editar.
  6. En Se aplica a, selecciona Personalizar.
  7. En Valores de la política, selecciona Personalizado.
  8. Ingresa un ID de cliente de Google Workspace en el cuadro de texto Valor de la política y, luego, haz clic en Ingresar. Se pueden ingresar varios ID de esta forma.
  9. Haz clic en Guardar. Aparecerá una notificación para confirmar que se actualizó la política.

gcloud

Las políticas se pueden configurar mediante la herramienta de línea de comandos de gcloud. Para crear una política que incluya la restricción de dominio, ejecuta el siguiente comando:

gcloud alpha resource-manager org-policies allow \
    --organization 'ORGANIZATION_ID' \
    iam.allowedPolicyMemberDomains 'DOMAIN_ID_1' \
    'DOMAIN_ID_2'

En el ejemplo anterior, se ilustra lo siguiente:

Para obtener información sobre el uso de restricciones en las políticas de la organización, consulta la sección sobre cómo usar restricciones.

Ejemplo de política de la organización

En el siguiente fragmento de código, se muestra una política de la organización que incluye la restricción de dominio:

resource: "organizations/842463781240"
policy {
  constraint: "constraints/iam.allowedPolicyMemberDomains"
  etag: "\a\005L\252\122\321\946\334"
  list_policy {
  allowed_values: "C03xgje4y"
  allowed_values: "C03g5e3bc"
  allowed_values: "C03t213bc"
  }
}

Los allowed_values son los ID de cliente de Google Workspace, como C03xgje4y. Solo las identidades que pertenezcan a un dominio de Google Workspace de la lista de allowed_values se admitirán en las políticas de IAM una vez que se haya aplicado esta política de la organización. Los usuarios y grupos humanos de Google Workspace deben ser parte de ese dominio de Google Workspace, y las cuentas de servicio de IAM deben ser recursos secundarios de un recurso de la organización asociado con el dominio de Google Workspace determinado.

Por ejemplo, si creaste una política de la organización solo con el ID de cliente de Google Workspace de tu empresa, solo los miembros de ese dominio podrían agregarse a la política de IAM de ese momento.

Ejemplo de mensaje de error

Cuando se viola la restricción de la organización de restricción de dominio debido a que se intenta agregar un miembro que no está incluido en la lista allowed_values, la operación fallará y luego se mostrará un mensaje de error.

Console

Captura de pantalla de Console

gcloud

ERROR: (gcloud.projects.set-iam-policy) FAILED_PRECONDITION: One or
more users in the policy do not belong to a permitted customer.

Recupera un ID de cliente de Google Workspace

El ID de cliente de Google Workspace que usa la restricción de dominio se puede obtener de las dos siguientes maneras:

gcloud

El comando de lista de organizaciones de gcloud se puede usar para ver todas las organizaciones en las que tienes el permiso resourcemanager.organizations.get:

gcloud alpha organizations list

Con este comando, se mostrarán el DISPLAY_NAME, el ID (ID de la organización) y el DIRECTORY_CUSTOMER_ID. El ID de cliente de Google Workspace es el DIRECTORY_CUSTOMER_ID.

API

La API del directorio de Google Workspace se puede usar para recuperar un ID de cliente de Google Workspace.

Cuando hayas accedido como administrador de Google Workspace, puedes visitar la documentación del método de la API Customers: get y hacer clic en Ejecutar. Después de la autorización, la respuesta mostrará tu ID de cliente.

Como alternativa, puedes usar un cliente de API:

  1. Obtén un token de acceso de OAuth para el permiso https://www.googleapis.com/auth/admin.directory.customer.readonly.
  2. Ejecuta el siguiente comando para consultar la API de directorio de Google Workspace:

    curl -# -X GET "https://www.googleapis.com/admin/directory/v1/customers/customerKey" \
    -H "Authorization: Bearer $access_token" -H "Content-Type: application/json"
    

Con este comando, se mostrará una respuesta JSON que incluye la información del cliente. El ID de cliente de Google Workspace es el id.

Restringe subdominios

La restricción de dominio funciona mediante la limitación del acceso a todos los dominios asociados con un determinado ID de cliente de Google Workspace. Cada cuenta de Google Workspace tiene solo un dominio principal, además de cero o más dominios secundarios. Todos los dominios asociados con el ID de cliente de Google Workspace estarán sujetos a la restricción.

La aplicación de la restricción de dominio en un recurso controla el dominio primario y todos los dominios secundarios que pueden acceder a ese recurso y a sus inferiores en la jerarquía de recursos.

Para ver ejemplos de combinaciones comunes de dominios y subdominios de Google Workspace, consulta la siguiente tabla:

Dominio principal Subdominio Restricción de dominio ¿Se admite user@sub.domain.com?
domain.com ninguno Allow: domain.com No
dominio.com sub.domain.com Allow: domain.com
dominio.com sub.domain.com Allow: sub.domain.com
sub.domain.com dominio.com Allow: sub.domain.com
sub.domain.com ninguno Allow: sub.domain.com

Para diferenciar el acceso a la restricción de dominio entre dos dominios, cada dominio debe estar asociado con una cuenta distinta de Google Workspace. Cada cuenta de Google Workspace está asociada con un nodo de la organización y puede tener sus propias políticas de la organización aplicadas. Esto te permite asociar domain.com con una cuenta de Google Workspace y sub.domain.com con otra para obtener un control de acceso más detallado. Para obtener más información, consulta la página sobre cómo administrar varias organizaciones.

Soluciona problemas conocidos

Las políticas de la organización no son retroactivas. Si necesitas forzar un cambio en tu jerarquía de recursos que viola una restricción aplicada de forma forzosa, puedes inhabilitar la política de la organización, realizar el cambio y, luego, volver a habilitar la política de la organización.

En las próximas secciones, se describen los problemas conocidos de los servicios que pueden ocurrir cuando se aplica de forma forzosa esta restricción.

Uso compartido de datos públicos

Algunos productos de Google Cloud, como BigQuery, Cloud Functions, Cloud Run, Cloud Storage y Pub/Sub, admiten el uso compartido de datos públicos. La aplicación forzosa de la restricción de uso compartido restringido del dominio en una política de la organización evitará el uso compartido de los datos públicos.

Si quieres compartir datos de forma pública, inhabilita la restricción de uso compartido restringido del dominio de forma temporal para el recurso del proyecto en el que residen los datos que deseas compartir. Después de compartir el recurso de forma pública, podrás volver a habilitar la restricción de uso compartido restringido del dominio.

Cuenta de servicio de exportación de Cloud Billing

Es probable que falle la habilitación de la exportación de facturación en un depósito con esta restricción habilitada. No uses esta restricción en los depósitos que se usan para la exportación de facturación.

La dirección de correo electrónico de la cuenta de servicio de exportación de Cloud Billing es: 509219875288-kscf0cheafmf4f6tp1auij5me8qakbin@developer.gserviceaccount.com

Cloud Composer

En este momento, el uso compartido del dominio restringido de Cloud Composer se encuentra en versión beta. Si seleccionas esta función durante la creación del entorno, se habilitará automáticamente la API de Cloud Composer Beta.

Habilita el registro de acceso del almacenamiento

Si se encuentra habilitada, la restricción de dominio bloqueará cualquier dominio que no se admita de forma específica en la política de la organización. Esto también evitará que se otorgue acceso a las cuentas de servicio de Google. Para configurar el registro de acceso del almacenamiento en un depósito de Cloud Storage al que se haya aplicado de forma forzosa la restricción de dominio, sigue estos pasos:

  1. Quita la política de la organización que contiene la restricción de dominio.

  2. Otórgale a cloud-storage-analytics@google.com el acceso WRITE a ese depósito.

  3. Vuelve a implementar la política de la organización con la restricción de dominio.

Grupos de Google

A los grupos de Google que se crean dentro de un dominio permitido siempre se les pueden otorgar funciones en la política de IAM cuando se aplica la restricción de dominio, incluso si el grupo contiene miembros fuera de ese dominio.

Para garantizar que los administradores de proyectos no puedan omitir la restricción de dominio, el administrador de Google Workspace debe asegurarse de que los propietarios del grupo no permitan miembros desde fuera del dominio en el panel del administrador de Google Workspace.

Fuerza el acceso a la cuenta

Si necesitas forzar el acceso a la cuenta de un proyecto que infringe las restricciones del dominio, haz lo siguiente:

  1. Quita la política de la organización que contiene la restricción de dominio.

  2. Otórgale el acceso a la cuenta al proyecto.

  3. Vuelve a implementar la política de la organización con la restricción de dominio.

Como alternativa, puedes otorgar acceso a un Grupo de Google que contenga las cuentas de servicio relevantes de la siguiente manera:

  1. Crea un Grupo de Google dentro del dominio admitido.

  2. Usa el panel de administrador de Google Workspace para desactivar la restricción del dominio para ese grupo.

  3. Agrega la cuenta de servicio al grupo.

  4. Otorga el acceso al grupo de Google en la política de IAM.