Configura un proveedor de identidad de terceros
Puedes usar Cloud Identity, Google Workspace o un proveedor de identidad de terceros (como Okta o Azure AD) para administrar usuarios, grupos y la autenticación.
En esta página, se describe cómo usar un proveedor de identidad de terceros configurando la federación de identidades de personal.
La federación de identidades de personal de Google te permite otorgar a las cargas de trabajo locales o de múltiples nubes acceso a los recursos de Google Cloudsin tener que usar una clave de cuenta de servicio. Puedes usar la federación de identidades de personal con cualquier IdP que admita OpenID Connect (OIDC) o SAML 2.0, como Microsoft Entra ID, Active Directory Federation Services (AD FS), Okta y otros.
Google Security Operations requiere el uso de la federación de identidades de personal de Google como el agente de SSO para lo siguiente:
- Clientes con requisitos de cumplimiento de FedRAMP High (o superior)
- Los clientes que acceden a cualquier control de nivel empresarial en Google Security Operations que esté habilitado por Google Cloud, incluido el control de acceso basado en roles (RBAC) de datos y funciones con Identity and Access Management (IAM).
- Clientes que usan la administración de credenciales de autoservicio para el acceso programático a la API de Chronicle
Google Security Operations admite el SSO de SAML iniciado por el proveedor de servicios (SP) para los usuarios. Con esta capacidad, los usuarios navegan directamente a Operaciones de seguridad de Google. Las Operaciones de seguridad de Google emiten una solicitud a través de la federación de identidades de personal de Google Cloud Identity and Access Management (IAM) Google Cloud al proveedor de identidad (IdP) externo.
Después de que el IdP autentica la identidad del usuario, este regresa a Google Security Operations con una aserción de autenticación. Google Cloud La federación de identidades de la fuerza laboral actúa como intermediaria en el flujo de autenticación.
Comunicación entre las Operaciones de seguridad de Google, la federación de identidades de personal de IAM y el IdP
En términos generales, la comunicación es la siguiente:
- El usuario navega a Google Security Operations.
- Las Operaciones de seguridad de Google buscan información del IdP en el Google Cloud grupo de identidades de personal.
- Se envía una solicitud al IdP.
- La aserción de SAML se envía al grupo de identidades de personal Google Cloud .
- Si la autenticación se realiza correctamente, Google Security Operations solo recibe los atributos de SAML definidos cuando configuraste el proveedor de personal en el grupo de identidades de personal.
Los administradores de Google Security Operations crean grupos en su proveedor de identidad, configuran la aplicación SAML para que pase la información de membresía del grupo en la aserción y, luego, asocian usuarios y grupos a los roles predefinidos en IAM de Google Security Operations o a los roles personalizados que crearon.
No se admite el acceso iniciado por el IdP (iniciar un acceso desde el panel del IdP). Comunícate con tu representante de Google Security Operations para solicitar esta función si tu organización la necesita.
En este documento, se describen los pasos generales para configurar la autenticación a través de un proveedor de identidad (IdP) externo con la Google Cloud federación de identidades de personal. Después de seguir los pasos que se indican en este documento, podrás acceder a Google Security Operations con tu IdP externo y administrar el acceso a Google Security Operations con el SSO basado en SAML a través de la federación de identidades de personal.
Antes de comenzar
- Asegúrate de conocer Cloud Shell, el comando
gcloud
y la Google Cloud consola. - Sigue los pasos que se indican en Configura un proyecto de Google Cloud para Google Security Operations para configurar un proyecto que se vincule a Google Security Operations.
- Familiarízate con la Google Cloud federación de identidades de personal.
- Asegúrate de tener los permisos para realizar los pasos de este documento. Para obtener información sobre los permisos necesarios para cada fase del proceso de incorporación, consulta Roles obligatorios.
En los siguientes pasos, se describe cómo realizar la configuración con comandos de gcloud
. Si un paso se puede realizar en la consola de Google Cloud , se proporciona un vínculo a la documentación relacionada de IAM.
Planifica la implementación
En la siguiente sección, se describen las decisiones que debes tomar y la información que debes definir antes de seguir los pasos que se indican en este documento.
Define el grupo de identidades de personal y el proveedor de personal
Como parte de este proceso, configurarás la federación de identidades de personal de Google Cloud como intermediaria en el flujo de autenticación. Para lograrlo, crea los siguientes recursos Google Cloud :
- Grupo de personal: Un grupo de identidades del personal te permite otorgar acceso a tu personal (p.ej., empleados) a Google Security Operations.
- Proveedor de personal: Un proveedor de personal es un recurso secundario del grupo de identidades de personal. Almacena detalles sobre un solo IdP.
La relación entre el grupo de identidad de personal, los proveedores de personal y una instancia de Google Security Operations, identificada por un solo subdominio del cliente, es la siguiente:
- Un grupo de identidad del personal se define a nivel de la organización.
- Cada instancia de Google Security Operations tiene un grupo de identidades de personal configurado y asociado.
- Un grupo de identidades de personal puede tener varios proveedores de personal.
Cada proveedor de personal integra un IdP externo con el grupo de identidades de personal.
El grupo de identidades de personal que crees con estos pasos debe estar dedicado a Google SecOps. Aunque puedes administrar varios grupos de identidades de personal para otros fines, no se puede compartir el grupo de identidades de personal creado para Google SecOps.
Te recomendamos que crees el grupo de identidades para la fuerza laboral en la misma organización Google Cloudque contiene el proyecto vinculado a Google SecOps.
Te ayudará a ahorrar tiempo si predefines información sobre el grupo de identidades de trabajadores y el proveedor de trabajadores. Usarás esta información cuando configures la aplicación SAML del IdP y la federación de Workforce Identity.
Elige los valores para los siguientes identificadores:
- ID del grupo de personal (
WORKFORCE_POOL_ID
): Selecciona un valor que indique el alcance o el propósito del grupo de identidades de personal. El valor debe cumplir con los siguientes requisitos:- Debe ser único a nivel global.
- Solo se deben usar caracteres en minúscula [a-z], dígitos [0-9] y guiones [-].
- Debe comenzar con una letra minúscula [a-z].
- Debe terminar con una letra minúscula [a-z] o un dígito [0-9].
- Puede tener entre 4 y 61 caracteres.
- Nombre visible del grupo de personal (
WORKFORCE_POOL_DISPLAY_NAME
): Define un nombre fácil de usar para el grupo de identidades del personal. - Descripción del grupo de personal (
WORKFORCE_POOL_DESCRIPTION
): Define una descripción detallada del grupo de identidades del personal. - ID del proveedor de personal (
WORKFORCE_PROVIDER_ID
): Elige un valor que indique el IdP que representa. El valor debe cumplir con los siguientes requisitos:- Solo se pueden usar caracteres en minúscula [a-z], dígitos [0-9] y guiones [-].
- Puede tener entre 4 y 32 caracteres.
- Nombre visible del proveedor de personal (
WORKFORCE_PROVIDER_DISPLAY_NAME
): Define un nombre fácil de usar para el proveedor de personal. Debe tener menos de 32 caracteres. - Descripción del proveedor de personal (
WORKFORCE_PROVIDER_DESCRIPTION
): Define una descripción detallada del proveedor de personal.
Define atributos y grupos de usuarios en el IdP
Antes de crear la aplicación SAML en el IdP, identifica qué atributos y grupos de usuarios son necesarios para configurar el acceso a las funciones de Google Security Operations. Para obtener más información, consulta Configura el control de acceso a funciones con IAM y Permisos de Google Security Operations en IAM.
Necesitarás esta información durante las siguientes fases de este proceso:
Cuando configures la aplicación de SAML, crea los grupos definidos durante la planificación. Configuras la aplicación SAML del IdP para que pase las membresías de grupo en la aserción.
Cuando creas el proveedor de personal, asignas atributos y grupos de aserción a atributos deGoogle Cloud . Esta información se envía en el reclamo de aserción como parte de la identidad de un usuario.
Cuando configuras el control de acceso basado en roles en Google Security Operations, usas los atributos del usuario y la información del grupo para configurar el acceso a las funciones de Google Security Operations.
Google Security Operations proporciona varios roles predefinidos que permiten el acceso a funciones específicas. Puedes asignar los grupos definidos en la aplicación SAML del IdP a estos roles predefinidos.
Crea un grupo de IdP para los administradores que configuran el acceso a las funciones relacionadas con SOAR. Especifica este nombre de grupo durante el proceso de incorporación para autorizar a los miembros del grupo a configurar el acceso de usuarios y grupos a las funciones relacionadas con SOAR en Google SecOps.
Configura el IdP
En esta sección, solo se describe la configuración específica necesaria en una aplicación SAML del IdP para integrarse con la federación de identidades de personal de Google Cloud y las Operaciones de seguridad de Google.
Crea una nueva aplicación SAML en tu IdP.
Configura la aplicación con la siguiente URL del servicio de confirmación de aserciones (ACS), que también se conoce como URL de inicio de sesión único según el proveedor de servicios.
https://auth.backstory.chronicle.security/signin-callback/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
Reemplaza lo siguiente:
WORKFORCE_POOL_ID
: Es el identificador que definiste para el grupo de identidades de personal.WORKFORCE_PROVIDER_ID
: Es el identificador que definiste para el proveedor de personal.Para obtener descripciones de los valores, consulta Planifica la implementación.
Configura la aplicación con el siguiente ID de entidad (también llamado ID de entidad del SP).
https://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/providers/WORKFORCE_PROVIDER_ID
Reemplaza lo siguiente:
WORKFORCE_POOL_ID
: Es el identificador que definiste para el grupo de identidades de personal.WORKFORCE_PROVIDER_ID
: Es el identificador que definiste para el proveedor de personal.
Configura el identificador de nombre en tu IdP para asegurarte de que el campo
NameID
se devuelva en la respuesta de SAML.Puedes establecer este valor en uno que admita las políticas de tu organización, como la dirección de correo electrónico o el nombre de usuario. Consulta la documentación de tu IdP para obtener información sobre cómo configurar este valor. Para obtener más información sobre este requisito, consulta Soluciona problemas relacionados con la federación de identidades de personal.
De manera opcional, crea los atributos del grupo en la aplicación de SAML. Los definiste cuando planificaste la implementación del IdP.
Descarga el archivo XML de metadatos de la aplicación. En la siguiente sección, subirás este archivo desde tu sistema local a tu directorio principal Google Cloud con Cloud Shell.
Configura la federación de Workforce Identity
En esta sección, solo se describen los pasos específicos necesarios para configurar la federación de Workforce Identity con la aplicación SAML del IdP que creaste en la sección anterior. Para obtener más información sobre cómo administrar grupos de identidades de personal, consulta Administra proveedores de grupos de identidades de personal.
Abre la consola de Google Cloud como el usuario con los permisos necesarios en el proyecto vinculado a Google Security Operations. Ya identificaste o creaste este usuario. Consulta la sección Antes de comenzar.
Inicia una sesión de Cloud Shell.
Configura el proyecto Google Cloud que se factura y al que se le cobra la cuota de las operaciones realizadas con gcloud CLI. Usa el siguiente comando
gcloud
como ejemplo:gcloud config set billing/quota_project PROJECT_ID
Reemplaza
PROJECT_ID
por el ID del proyecto vinculado a Google Security Operations que creaste en Configura un proyecto de Google Cloud para Google Security Operations. Para obtener una descripción de los campos que identifican un proyecto, consulta Crea y administra proyectos.Para obtener información sobre las cuotas, consulta los siguientes documentos:
Si se produce un error, consulta Errores de cuota.
Crea y configura un grupo de identidades para la fuerza laboral
Puedes configurar un grupo de identidades de personal para que se integre con un proveedor de identidad (IdP) externo o con Google Workspace o Cloud Identity.
Crea un grupo de Workforce Identity.
Crea un grupo de Workforce Identity para un IdP externo:
Usa el siguiente comando
gcloud
como ejemplo:gcloud iam workforce-pools create WORKFORCE_POOL_ID\ --location="global" \ --organization="ORGANIZATION_ID" \ --description="WORKFORCE_POOL_DESCRIPTION" \ --display-name="WORKFORCE_POOL_DISPLAY_NAME"
Reemplaza lo siguiente:
WORKFORCE_POOL_ID
: Es el identificador que definiste para el grupo de identidades de personal.ORGANIZATION_ID
: Es el ID numérico de la organización.WORKFORCE_POOL_DESCRIPTION
: Especifica una descripción del grupo de identidades para cargas de trabajo.WORKFORCE_POOL_DISPLAY_NAME
: Especifica un nombre descriptivo para el grupo de identidades de personal.
Para realizar esta configuración con la consola de Google Cloud , consulta Crea un grupo.
Si quieres usar Google Workspace o Cloud Identity para acceder a Google SecOps, agrega estos parámetros:
--allowed-services domain=backstory.chronicle.security
y--disable-programmatic-signin
al comando:gcloud iam workforce-pools create WORKFORCE_POOL_ID\ --location="global" \ --organization="ORGANIZATION_ID" \ --description="WORKFORCE_POOL_DESCRIPTION" \ --display-name="WORKFORCE_POOL_DISPLAY_NAME" \ --allowed-services domain=backstory.chronicle.security \ --disable-programmatic-signin
Este comando crea un grupo de identidades de personal que no admite el acceso a Google Cloud. Para habilitar la funcionalidad de acceso, debes usar las marcas adecuadas para cada situación.
Si se te solicita en la línea de comandos que habilites la API de Chronicle, escribe
Yes
.
Crea un proveedor de grupos de Workforce Identity
Un proveedor de grupos de identidad del personal es una entidad que describe una relación entre tu organización Google Cloud y tu IdP.
Haz clic en > para subir el archivo de metadatos de la aplicación SAML a tu directorio principal de Cloud Shell. Los archivos solo se pueden subir a tu directorio principal. Para obtener más opciones para transferir archivos entre Cloud Shell y tu estación de trabajo local, consulta Cómo subir y descargar archivos y carpetas desde Cloud Shell.
MásToma nota de la ruta de acceso al directorio en el que subiste el archivo XML de metadatos de la aplicación SAML en Cloud Shell. Necesitarás esta ruta de acceso en el siguiente paso.
Crea un proveedor de grupos de Workforce Identity y especifica los detalles del IdP.
Usa el siguiente comando
gcloud
como ejemplo:gcloud iam workforce-pools providers create-saml WORKFORCE_PROVIDER_ID \ --workforce-pool="WORKFORCE_POOL_ID" \ --location="global" \ --display-name="WORKFORCE_PROVIDER_DISPLAY_NAME" \ --description="WORKFORCE_PROVIDER_DESCRIPTION" \ --idp-metadata-path=PATH_TO_METADATA_XML \ --attribute-mapping="ATTRIBUTE_MAPPINGS"
Para obtener descripciones de los valores, consulta Planifica la implementación.
Reemplaza lo siguiente:
WORKFORCE_PROVIDER_ID
: Es el valor que definiste para el ID del proveedor de personal.WORKFORCE_POOL_ID
: Es el valor que definiste para el ID del grupo de identidades de personal.WORKFORCE_PROVIDER_DISPLAY_NAME
: Es un nombre descriptivo para el proveedor de personal. Debe tener menos de 32 caracteres.WORKFORCE_PROVIDER_DESCRIPTION
: Una descripción del proveedor de personal.PATH_TO_METADATA_XML
: Es la ubicación del directorio de Cloud Shell del archivo XML de metadatos de la aplicación que subiste con Cloud Shell, por ejemplo,/path/to/sso_metadata.xml
.ATTRIBUTE_MAPPINGS
: Es la definición de cómo asignar atributos de aserción a atributos deGoogle Cloud . Se usa Common Expression Language para interpretar estas asignaciones. Por ejemplo:google.subject=assertion.subject,google.display_name=assertion.attributes.name[0],google.groups=assertion.attributes.groups
En el ejemplo anterior, se asignan los siguientes atributos:
assertion.subject
agoogle.subject
. Este es un requisito mínimo.assertion.attributes.name[0]
agoogle.display_name
.assertion.attributes.groups
al atributogoogle.groups
Si realizas esta configuración para Google Security Operations, que incluye Google Security Operations SIEM y Google SecOps SOAR, también debes asignar los siguientes atributos requeridos por Google SecOps SOAR:
attribute.first_name
attribute.last_name
attribute.user_email
google.groups
Para obtener más información, consulta Aprovisionamiento y asignación de usuarios para Google SecOps SOAR.
De forma predeterminada, Google Security Operations lee la información de los grupos de los siguientes nombres de atributos de aserción que no distinguen mayúsculas de minúsculas:
_assertion.attributes.groups_
,_assertion.attributes.idpGroup_
y_assertion.attributes.memberOf_
.Cuando configures la aplicación de SAML para que pase información sobre la pertenencia a grupos en la aserción, establece el nombre del atributo de grupo en
_group_
,_idpGroup_
o_memberOf_
.En el comando de ejemplo, puedes reemplazar
assertion.attributes.groups
porassertion.attributes.idpGroup
oassertion.attributes.memberOf
, que representan el nombre del atributo de grupo que configuraste en la aplicación SAML del IdP y que contiene información de la membresía del grupo en la aserción.En el siguiente ejemplo, se asignan varios grupos al atributo
google.groups
:google.groups="(has(assertion.attributes.idpGroup) ? assertion.attributes.idpGroup : []) + (has(assertion.attributes.groups) ? assertion.attributes.groups : []) + (has(assertion.attributes.memberof) ? assertion.attributes.memberof : [])"
En el siguiente ejemplo, se asigna el grupo
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/group
que contiene caracteres especiales agoogle.groups
:google.groups="assertion.attributes['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/group']"
Para obtener más información sobre la asignación de atributos, consulta Asignaciones de atributos.
Para realizar esta configuración con la consola de Google Cloud , consulta Crea un proveedor de SAML.
Otorga un rol para habilitar el acceso a Google Security Operations
En los siguientes pasos, se describe cómo otorgar un rol específico con IAM para que los usuarios puedan acceder a Google Security Operations. Realiza la configuración con el proyecto Google Cloud vinculado a Google Security Operations que creaste antes.
Otorga el rol de Visualizador de la API de Chronicle (
roles/chronicle.viewer
) a los usuarios o grupos que deben tener acceso a la aplicación de Google Security Operations.En el siguiente ejemplo, se otorga el rol de visualizador de la API de Chronicle a las identidades administradas con el grupo de identidades de personal y el proveedor de personal que creaste anteriormente.
gcloud projects add-iam-policy-binding PROJECT_ID \ --role roles/chronicle.viewer \ --member "principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/*"
Reemplaza lo siguiente:
PROJECT_ID
: Con el ID del proyecto vinculado a Google Security Operations que configuraste en Configura un proyecto para Google Security Operations. Google Cloud Para obtener una descripción de los campos que identifican un proyecto, consulta Crea y administra proyectos.WORKFORCE_POOL_ID
: Es el valor que definiste para el ID del grupo de identidades de personal.
Para otorgar el rol de visualizador de la API de Chronicle a un grupo específico, ejecuta el siguiente comando:
gcloud projects add-iam-policy-binding PROJECT_ID \ --role roles/chronicle.viewer \ --member "principalSet://iam.googleapis.com/locations/global/workforcePools/WORKFORCE_POOL_ID/group/GROUP_ID"
Reemplaza
GROUP_ID
: un grupo en la reclamacióngoogle.groups
asignada.
Configura políticas de IAM adicionales para satisfacer los requisitos de tu organización.
Obligatorio: Para completar la autenticación y habilitar el acceso del usuario a la plataforma de Google SecOps, debes configurar el acceso del usuario desde el lado de SOAR de Google SecOps. Para obtener más información, consulta Usuarios de mapas en la plataforma de Google SecOps.
Verifica o configura el control de acceso a las funciones de Google Security Operations
Si configuraste la federación de identidades del personal con atributos o grupos asignados al atributo google.groups
, esta información se pasa a Google Security Operations para que puedas configurar el control de acceso basado en roles (RBAC) para las funciones de Google Security Operations.
Si la instancia de Google Security Operations tiene una configuración de RBAC existente, verifica que la configuración original funcione según lo previsto.
Si no configuraste el control de acceso anteriormente, consulta Configura el control de acceso a funciones con IAM para obtener información sobre cómo controlar el acceso a las funciones.
Modifica la configuración de la federación de identidades de personal
Si necesitas actualizar el grupo de identidades de personal o el proveedor de personal, consulta Administra proveedores de grupos de identidad de trabajadores para obtener información sobre cómo actualizar la configuración.
En la sección Administración de claves de Crea un proveedor de grupo de personal de SAML, se describe cómo actualizar las claves de firma del IdP y, luego, actualizar la configuración del proveedor de personal con el archivo XML de metadatos de la aplicación más reciente.
A continuación, se muestra un ejemplo del comando gcloud
que actualiza la configuración del proveedor de personal:
gcloud iam workforce-pools providers update-saml WORKFORCE_PROVIDER_ID \
--workforce-pool=WORKFORCE_POOL_ID \
--location="global" \
--display-name="WORKFORCE_PROVIDER_DISPLAY_NAME" \
--description="WORKFORCE_PROVIDER_DESCRIPTION" \
--idp-metadata-path=PATH_TO_METADATA_XML \
--attribute-mapping="ATTRIBUTE_MAPPINGS"
Reemplaza lo siguiente:
WORKFORCE_PROVIDER_ID
: Es el valor que definiste para el ID del proveedor de personal.WORKFORCE_POOL_ID
: Es el valor que definiste para el ID del grupo de identidades de personal.WORKFORCE_PROVIDER_DISPLAY_NAME
: Es un nombre descriptivo para el proveedor de personal. El valor debe tener menos de 32 caracteres.WORKFORCE_PROVIDER_DESCRIPTION
: Es la descripción del proveedor de personal.PATH_TO_METADATA_XML
: Es la ubicación del archivo XML de metadatos de la aplicación actualizado, por ejemplo,/path/to/sso_metadata_updated.xml
.ATTRIBUTE_MAPPINGS
: Son los atributos de la aserción asignados a los atributos deGoogle Cloud . Por ejemplo:google.subject=assertion.subject,google.display_name=assertion.attributes.name[0],google.groups=assertion.attributes.memberOf
Para garantizar que el RBAC de Google SecOps siga funcionando según lo previsto, también asigna el atributo google.groups
a todos los grupos que se usan para definir roles en Google SecOps.
Soluciona problemas de configuración
Si encuentras errores durante este proceso, consulta Soluciona problemas de la federación de identidades de personal para resolver problemas habituales. En la siguiente sección, se proporciona información sobre los problemas comunes que se producen cuando se realizan los pasos de este documento.
Si los problemas persisten, comunícate con tu representante de Operaciones de seguridad de Google y proporciona tu archivo de registros de red de Chrome.
No se encontró el comando
Cuando creas un proveedor de grupos de identidades de personal y especificas los detalles del IdP, recibes el siguiente error:
Error: bash: --attribute-mapping=google.subject=assertion.subject,
google.display_name=assertion.attributes.name[0],
google.groups=assertion.attributes.groups: command not found
Verifica que PATH_TO_METADATA_XML
sea la ubicación en la que subiste el archivo XML de metadatos de la aplicación SAML al directorio principal de Cloud Shell.
El emisor no tiene permiso
Cuando ejecutas el comando gcloud projects add-iam-policy-binding
para otorgar roles a usuarios o grupos, recibes el siguiente error:
ERROR: (gcloud.organizations.add-iam-policy-binding) User [ ] does not have
permission to access organizations instance [538073083963:getIamPolicy]
(or it may not exist): The caller does not have permission
Verifica que tengas los permisos necesarios. Para obtener más información, consulta los roles requeridos.
¿Qué sigue?
Después de completar los pasos de este documento, haz lo siguiente:
Sigue los pasos para vincular una instancia de Google Security Operations a Google Cloud servicios.
Si aún no configuraste el registro de auditoría, continúa con los pasos para habilitar el registro de auditoría de Google Security Operations.
Si configuras Google Security Operations, realiza los pasos adicionales que se indican en Provision, authenticate, and map users in Google Security Operations.
Para configurar el acceso a las funciones, realiza pasos adicionales en Configura el control de acceso a funciones con IAM y Permisos de Google Security Operations en IAM.
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.