La configuración de Google requiere una Aplicación SAML (para login) y una Cuenta de Servicio con delegación de dominio (para provisión de usuarios).
Parte A: Autenticación SAML (Login)
-
Vaya a la Consola de Administración de Google (
admin.google.com). -
Vaya a
Aplicaciones > Aplicaciones web y móviles. -
Haga clic en
Añadir aplicación > Añadir aplicación SAML personalizada. -
Descargar metadatos: En la pantalla "Datos del proveedor de identidad de Google", haga clic en "Descargar metadatos".
-
Suba este archivo (ej.
google-metadata.xml) a una ruta accesible en su servidor (ej./opt/anjana/config/saml/).
-
-
Configurar datos del SP (su aplicación):
-
ID de entidad:
identificador-unico-para-saml(único y debe coincidir con elyml). -
URL ACS:
https://dev.anjanadata.org/gateway/saml2/sso/devgcp(la clavedevgcpcoincide con la usada en elymlabajo).
-
-
Activar la aplicación: Active el "Acceso de usuario" para los usuarios o grupos que necesiten acceso.
Parte B: Provisión de usuarios (lista de usuarios)
-
Vaya a la Consola de Google Cloud (
console.cloud.google.com). -
Vaya a
IAM y administración > Cuentas de servicioy cree una cuenta nueva. -
Genere una clave JSON para esta cuenta de servicio.
-
jsonPath/jsonContent: Suba este archivo JSON a su servidor (file:/...) o pegue su contenido en elyml.
-
-
Copie el "ID único" (Client ID) de la cuenta de servicio.
Delegación de dominio
-
Vuelva a la Consola de Administración de Google (
admin.google.com). -
Vaya a
Seguridad > Control de acceso y datos > Controles de API. -
Haga clic en "Gestionar la delegación de todo el dominio".
-
Añada una nueva delegación:
-
ID de Cliente: Pegue el "ID único" de su cuenta de servicio.
-
Ámbitos de OAuth: Pegue esta lista (separada por comas):
https://www.googleapis.com/auth/admin.directory.user.readonly,https://www.googleapis.com/auth/admin.directory.group.readonly,https://www.googleapis.com/auth/admin.directory.group.member.readonly
-
Datos finales para el yml
-
delegatedUser: Email de una cuenta de Súper Administrador de Google (ej.admin@su-dominio.com). -
groupnames: Emails/identificadores de grupos de Google con usuarios con acceso (ej.usuarios-anjana@su-dominio.com). -
application-name: Nombre de la aplicación para auditorías en Google Workspace
Ejemplo de fichero application-default.yml
En este ejemplo se detallan las propiedades especificas de SAML para GCP. Las propiedades comunes para todos los proveedores se encuentran en https://wiki.anjanadata.com/es/integraciones/25.2/saml-2-0
security:
provisioning:
providers:
google:
# La clave 'devgcp' debe ser IDÉNTICA a la clave usada en 'saml2'
devgcp:
# Email de una cuenta de Súper Administrador de Google
delegated-user: <delegatedUser>
# Nombre de la aplicación para auditorías en Google Workspace
application-name: <appName>
# Emails/identificadores de grupos de Google con usuarios con acceso
groupNames:
- <group1>
- <group2>
# JSON con el contenido de autentificacion requerido, se puede obtener directamente de GCP
json-content: |
{
<content>
}
# Ruta donde se encuentra el JSON con el contenido de autentificacion, se puede usar en vez de json-content
json-path: /opt/AAAAA-aaabbbccc.json # absolute path --> /xxxxxx.json