Usa OAuth de Google para la autenticación de usuarios de Looker (Google Cloud Core)

Google OAuth se usa junto con Identity and Access Management (IAM) para autenticar a los usuarios de Looker (Google Cloud Core).

Cuando se usa OAuth para la autenticación, Looker (Google Cloud Core) autentica a los usuarios a través del protocolo OAuth 2.0. Usa cualquier cliente de OAuth 2.0 para crear credenciales de autorización cuando crees una instancia. A modo de ejemplo, en esta página, se explican los pasos para configurar la autenticación de una instancia de Looker (Google Cloud Core) con la consola de Google Cloud para crear credenciales de OAuth.

Si otro método es la forma principal de autenticación, Google OAuth es, de forma predeterminada, el método de autenticación de reserva. Google OAuth también es el método de autenticación que usa la Atención al cliente de Cloud cuando brinda asistencia.

El cliente de OAuth que se usa para la autenticación debe ser el mismo que se usó para configurar la instancia.

Autenticación y autorización con OAuth y IAM

Cuando se usan con OAuth, los roles de IAM de Looker (Google Cloud Core) proporcionan los siguientes niveles de autenticación y autorización para todas las instancias de Looker (Google Cloud Core) dentro de un Google Cloud proyecto determinado. Asigna uno de los siguientes roles de IAM a cada uno de tus principales, según los niveles de acceso que desees que tengan:

Función de IAM Autenticación Autorización
Usuario de la instancia de Looker (roles/looker.instanceUser)

Puede acceder a instancias de Looker (Google Cloud Core)

Cuando accedes a Looker (Google Cloud Core) por primera vez, se te otorga el rol predeterminado de Looker establecido en Roles para usuarios nuevos.

No se puede acceder a los recursos de Looker (Google Cloud Core) en la Google Cloud consola.

Visualizador de Looker (roles/looker.viewer) Puede acceder a instancias de Looker (Google Cloud Core) Cuando accedes a Looker (Google Cloud Core) por primera vez, se te otorga el rol predeterminado de Looker establecido en Roles para usuarios nuevos.

Puede ver la lista de instancias de Looker (Google Cloud Core) y sus detalles en la consola de Google Cloud
Administrador de Looker (roles/looker.admin) Puede acceder a instancias de Looker (Google Cloud Core) Cuando accedes a Looker (Google Cloud Core) por primera vez, se te otorga el rol predeterminado de Looker establecido en Roles para usuarios nuevos.

Se verifica en cada acceso a Looker (Google Cloud Core) que usa OAuth principal o OAuth de respaldo y cada vez que el usuario realiza una llamada a la API de Looker. Este rol (o un rol personalizado que incluya el permiso looker.instances.update) también otorga el rol de Administrador a través de IAM dentro de la instancia.

El rol de Administrador a través de IAM contiene todos los permisos y las funciones del rol de Administrador de Looker. Este rol no se puede quitar ni reasignar dentro de la instancia de Looker (Google Cloud Core). Para quitar el rol de Administrador a través de IAM, reasigna el principal a un rol de IAM que no sea el de administrador de Looker (roles/looker.admin). Los cambios en los roles de IAM se sincronizan automáticamente con la instancia de Looker (Google Cloud Core), incluso si el usuario accede con un proveedor de identidad de terceros después del cambio. Para obtener más información, consulta la sección Rol de administrador de Looker en comparación con el rol de administrador de Looker a través de IAM.

Mientras el token de actualización de OAuth de un usuario sea válido, su rol aparecerá como Administrador a través de IAM en Looker (Google Cloud Core), incluso si ese usuario accede más tarde con un proveedor de identidad de terceros. Si el token de actualización de OAuth vence o se revoca, el usuario debe usar OAuth para volver a acceder a la instancia y recuperar el rol de administrador a través de IAM.

Puede realizar todas las tareas administrativas de Looker (Google Cloud Core) en la consola de Google Cloud .

Además, las cuentas de usuario con el rol owner de un proyecto pueden acceder a cualquier instancia de Looker (Google Cloud Core) dentro de ese proyecto y administrarla. A estos usuarios se les otorgará el rol de Administrador de Looker.

Si los roles predefinidos no proporcionan el conjunto de permisos que deseas, también puedes crear tus propios roles personalizados.

Las cuentas de Looker (Google Cloud Core) se crean cuando se accede por primera vez a una instancia de Looker (Google Cloud Core).

Rol de administrador de Looker en comparación con el rol de administrador de Looker a través de IAM

Existen dos roles dentro de una instancia de Looker (Google Cloud Core) que usan el conjunto de permisos de administrador y otorgan los mismos privilegios de administrador dentro de la instancia. En la siguiente tabla, se resumen las similitudes y diferencias entre los dos roles.

Propiedad Rol de administrador de Looker Administrador a través del rol de IAM de Looker
Fuente autorizada Otorgado por otro administrador en la instancia de Looker (Google Cloud Core) Vinculado directamente al rol de administrador de IAM de Looker
¿Se pueden agregar o quitar dentro de una instancia de Looker (Google Cloud Core)? No
¿Se pueden agregar o quitar con IAM? No
Permisos en Looker (Google Cloud Core) Todos los permisos Todos los permisos
Permisos en la Google Cloud consola Ninguno Acceso completo a todos los recursos de Looker (Google Cloud Core)
Validación de roles De forma continua dentro de la instancia de Looker (Google Cloud Core) Cada vez que accedes a la instancia de Looker (Google Cloud Core) y cada vez que realizas una llamada a la API de Looker.

Los cambios en un rol con IAM pueden tardar varios minutos en propagarse.
Alcance Instancia individual de Looker (Google Cloud Core) Todas las instancias de Looker (Google Cloud Core) de un Google Cloud proyecto

Un usuario puede tener los roles de administrador Admin y Administrador a través de IAM de Looker. Por lo tanto, si quieres revocar los privilegios de administrador, asegúrate de quitar el rol de IAM y el rol de administrador de la instancia de Looker (Google Cloud Core).

Cómo configurar OAuth en la instancia de Looker (Google Cloud Core)

En la instancia de Looker (Google Cloud Core), la página Google Authentication en la sección Authentication del menú Admin te permite configurar algunos parámetros de configuración de OAuth de Google. Debes tener el rol de Administrador de Looker.

Cómo combinar cuentas de usuario

En el campo Merge Users Using, especifica el método que se usará para combinar un acceso de OAuth por primera vez con una cuenta de usuario existente. Cuando un usuario accede por primera vez a través de OAuth, esta opción lo conecta a su cuenta existente buscando la cuenta con una dirección de correo electrónico coincidente. Si no existe una cuenta para el usuario, se creará una nueva.

Puedes combinar usuarios de los siguientes sistemas:

  • SAML
  • OIDC

Si tienes más de un sistema implementado, puedes especificar más de uno para combinar en este campo. Looker (Google Cloud Core) buscará usuarios de los sistemas enumerados en el orden en que se especifican los sistemas. Por ejemplo, si primero creaste algunos usuarios con OIDC y, luego, usaste SAML, cuando un usuario intente acceder con OAuth por primera vez, Looker (Google Cloud Core) primero buscará al usuario con OIDC y, si no encuentra una coincidencia para el usuario con OIDC, lo buscará con SAML.

Si no quieres que Looker (Google Cloud Core) combine usuarios, deja este campo en blanco.

Replicar Grupos de Google

Si administraste Grupos de Google, Looker (Google Cloud Core) puede crear grupos de Looker que reflejen la membresía de tus Grupos de Google. Esto significa que no tienes que configurar usuarios en Looker (Google Cloud Core) directamente, sino que puedes administrar el acceso de los usuarios administrando la membresía de los Grupos de Google. Además, los grupos de Looker se pueden usar para asignar roles a los miembros del grupo, establecer controles de acceso al contenido, controlar el acceso a los datos y las funciones, y asignar atributos de usuario.

Los grupos de Looker reflejados (y cualquier rol y acceso asociados) se aplican a los usuarios nuevos cuando acceden por primera vez a la instancia de Looker (Google Cloud Core). Los grupos no se aplican a los usuarios existentes y no se vuelven a aplicar si se quitan de la cuenta de un usuario en Looker (Google Cloud Core) después de su acceso inicial.

Te recomendamos que habilites el reflejo de grupos solo para el método de autenticación principal de Looker (Google Cloud Core). Si usas OAuth como método de autenticación de respaldo, no habilites la duplicación de grupos para OAuth. Si habilitas la duplicación de grupos para los métodos de autenticación primario y secundario, se producirán los siguientes comportamientos:

  • Si un usuario fusionó identidades, la duplicación de grupos coincidirá con el método de autenticación principal, independientemente del método de autenticación que se use para acceder.
  • Si un usuario no fusionó identidades, la duplicación de grupos coincidirá con el método de autenticación que se usó para acceder.

Pasos para habilitar los grupos reflejados

Para habilitar la duplicación de grupos, completa los siguientes pasos:

  1. En la Google Cloud consola, habilita la API de Cloud Identity en el Google Cloud proyecto que contiene tu cliente de OAuth. Debes tener el rol de IAM de administrador de Service Usage (roles/serviceusage.serviceUsageAdmin) para habilitar las APIs.

    Habilita la API

  2. En la Google Cloud consola, actualiza la pantalla de consentimiento del cliente de OAuth para agregar el alcance https://www.googleapis.com/auth/cloud-identity.groups.readonly. Debes tener el permiso de IAM clientauthconfig.clients.update para agregar alcances. Completa los siguientes pasos para actualizar la pantalla de consentimiento:

    • Navega al cliente de OAuth.
    • Elige la página Acceso a los datos.
    • Haz clic en el botón Agregar o quitar permisos. Se abrirá el panel Actualizar los permisos seleccionados.
    • Busca el alcance https://www.googleapis.com/auth/cloud-identity.groups.readonly y selecciona la casilla de verificación junto a él.
    • Haz clic en el botón Actualizar para agregar el permiso.
    • Cierra el panel y haz clic en Guardar en la página Acceso a los datos para guardar el alcance.

  3. En la instancia de Looker (Google Cloud Core), habilita el botón de activación Reflejar grupos de Google en la página Autenticación de Google. Este botón de activación está inhabilitado de forma predeterminada. Completa los siguientes campos:

    • En el campo Looker Group Name, agrega un nombre para el grupo de Looker. Este es el nombre que aparecerá en la página Grupos de Looker (Google Cloud Core).
    • En el campo ID de Grupo de Google, ingresa el nombre o el correo electrónico del Grupo de Google que deseas duplicar.
    • En el campo Función, ingresa los roles de observador que deseas asignar a los miembros de ese grupo.

Looker (Google Cloud Core) creará un grupo de Looker para cada Grupo de Google que se agregue a la página Autenticación de Google. Puedes ver esos grupos de Looker en la página Grupos de Looker (Google Cloud Core).

Cómo editar grupos reflejados

Cuando realizas cambios en una membresía de Grupos de Google, esos cambios se propagan automáticamente a la membresía del grupo de Looker reflejado y se validan en el momento del próximo acceso de cada usuario.

Si editas los campos Nombre personalizado o Rol asignados a un grupo en la página Google Authentication, se cambiará la forma en que aparece el nombre del grupo de Looker reflejado en la página Grupos de Looker (Google Cloud Core) o los roles asignados al grupo, pero no se cambiarán los miembros del grupo.

Si cambias el nombre o el correo electrónico en el campo ID de Grupo de Google de la página Autenticación de Google a un ID de Grupo de Google nuevo, se cambiarán los miembros del grupo de Looker reflejado a los miembros del nuevo Grupo de Google, pero se mantendrán el nombre y los roles del grupo como se definen en la página Autenticación de Google.

Cualquier edición que se realice en un grupo reflejado se aplicará a los usuarios de ese grupo la próxima vez que accedan a Looker (Google Cloud Core).

Inhabilita los grupos duplicados

Si quieres dejar de duplicar tus Grupos de Google en Looker (Google Cloud Core), inhabilita el botón de activación Reflejar Grupos de Google en la página Autenticación de Google de la instancia de Looker (Google Cloud Core).

Cuando la opción está inhabilitada, los grupos de Looker replicados que aún contienen usuarios permanecen disponibles para su uso en Looker (Google Cloud Core) y se pueden usar en la administración de contenido y la asignación de roles. Sin embargo, no se pueden agregar ni quitar usuarios de los grupos de Looker reflejados una vez que se inhabilita la opción Reflejar grupos de Google. Se borrarán todos los grupos de Looker reflejados que no contengan usuarios.

Administración avanzada de roles

Si el botón de activación Reflejar Grupos de Google está habilitado, la página Autenticación de Google muestra la configuración de Administración avanzada de roles. Las opciones de esta sección determinan la flexibilidad que tienen los administradores de Looker cuando configuran grupos y usuarios de Looker que se duplicaron desde Google.

Si deseas que tu grupo de Looker y la configuración del usuario coincidan exactamente con la configuración de Grupos de Google, activa todas las opciones de Administración avanzada de roles. Cuando se habilitan todas las opciones, los administradores de Looker no pueden modificar las membresías de grupos replicados y solo pueden asignar roles a los usuarios a través de Grupos de Google.

Si deseas tener más flexibilidad para personalizar tus grupos en Looker (Google Cloud Core), desactiva estas opciones. Tus grupos de Looker (Google Cloud Core) seguirán reflejando la configuración de Grupos de Google, pero podrás realizar una administración adicional de grupos y usuarios en Looker (Google Cloud Core), como agregar usuarios de Google a grupos de Looker o asignar roles de Looker directamente a usuarios de Google.

En el caso de la instancia de Looker (Google Cloud Core), estas opciones están desactivadas de forma predeterminada.

La sección Administración avanzada de roles contiene las siguientes opciones:

  • Impedir que los usuarios individuales de Google reciban roles directos: Si activas esta opción, se evita que los administradores de Looker asignen roles de Looker directamente a los usuarios de Google. Los usuarios de Google recibirán roles solo a través de sus pertenencias a grupos. Si los usuarios de Google pueden pertenecer a grupos de Looker integrados (no replicados), pueden heredar sus roles de los Grupos de Google replicados y de los grupos de Looker integrados. A los usuarios de Google a los que se les hayan asignado roles directamente se les quitarán esos roles la próxima vez que accedan.

    Si esta opción está desactivada, los administradores de Looker pueden asignar roles de Looker directamente a los usuarios de Google dentro de la instancia de Looker (Google Cloud Core).

  • Impedir la pertenencia directa a grupos que no pertenecen a Google: Esta opción evita que los administradores de Looker agreguen miembros de grupos reflejados directamente a grupos integrados de Looker que no forman parte de la configuración del grupo reflejado en la página Autenticación de Google.

    Si se selecciona esta opción, los usuarios de Google que anteriormente se asignaron a grupos integrados de Looker se quitarán de esos grupos cuando accedan la próxima vez.

    Si se borra esta opción, los administradores de Looker pueden agregar usuarios de Google directamente a los grupos integrados de Looker.

  • Evitar la herencia de roles de grupos que no son de Google: Esta opción evita que los miembros de los grupos reflejados hereden roles de los grupos integrados de Looker. Si los Grupos de Google replicados pueden ser miembros de grupos integrados de Looker, los usuarios de Google pueden conservar la membresía en cualquier grupo integrado de Looker. Los usuarios de Google que heredaron roles de un grupo integrado de Looker perderán esos roles la próxima vez que accedan.

    Si esta opción está desactivada, los grupos reflejados o los usuarios de Google que se agreguen como miembros de un grupo integrado de Looker heredarán los roles asignados a este grupo.

  • Auth Requires Role: Si esta opción está activada, los usuarios de Google deben tener asignado un rol de observador. Los usuarios de Google que no tengan un rol asignado no podrán acceder a Looker (Google Cloud Core).

    Si esta opción está desactivada, los usuarios de Google pueden autenticarse en Looker (Google Cloud Core) incluso si no tienen un rol asignado. Un usuario sin un rol asignado no podrá ver ningún dato ni realizar ninguna acción en Looker (Google Cloud Core), pero podrá acceder a Looker (Google Cloud Core).

Cómo establecer un rol predeterminado de Looker

Si el botón de activación Reflejar Grupos de Google está inhabilitado, el parámetro de configuración Roles para usuarios nuevos aparecerá en la página Autenticación de Google. Este parámetro de configuración te permite establecer el rol de Looker predeterminado que se otorgará a las cuentas de usuario con el rol de IAM de usuario de la instancia de Looker (roles/looker.instanceUser) o el rol de IAM de lector de Looker (roles/looker.viewer) cuando accedan por primera vez a una instancia de Looker (Google Cloud Core). Para establecer un rol predeterminado, sigue estos pasos:

  1. Navega a la página Autenticación de Google en la sección Autenticación del menú Administrador.
  2. En la configuración Roles para usuarios nuevos, selecciona el rol que deseas otorgar a todos los usuarios nuevos de forma predeterminada. La configuración contiene una lista de todos los roles predeterminados y roles personalizados de la instancia de Looker (Google Cloud Core).

Los roles de administrador no pueden ser roles predeterminados. A las cuentas de usuario con un rol de IAM de administrador de Looker (roles/looker.admin) se les otorgará el rol de Administrador a través de IAM de Looker cuando accedan por primera vez, además del rol que se seleccione en la configuración de Roles para usuarios nuevos.

Si habilitas el botón de activación Reflejar Grupos de Google después de personalizar el parámetro de configuración Roles para usuarios nuevos, los roles asignados a los usuarios a través de este parámetro de configuración se quitarán cuando accedan por última vez y se reemplazarán por los roles asignados a través del parámetro de configuración Reflejar Grupos de Google.

Probar la autenticación de usuarios

Haz clic en el botón Probar autenticación de Google para probar la configuración. Las pruebas redireccionarán al servidor de OAuth de Google y abrirán una pestaña del navegador. En la pestaña, se muestra la siguiente información:

  • Si Looker (Google Cloud Core) pudo comunicarse con el servidor y realizar la validación.
  • La información del usuario que Looker (Google Cloud Core) obtiene del servidor Debes validar que el servidor muestre los resultados correctos.
  • Un seguimiento para mostrar cómo se encontró la información Usa el seguimiento para solucionar el problema si la información es incorrecta. Si necesitas información adicional, puedes leer el archivo del servidor XML sin procesar.
  • Las versiones decodificadas y sin procesar del token de ID recibido Se pueden usar para confirmar los detalles del usuario y la configuración de Google.

Guardar y aplicar la configuración

Una vez que hayas terminado de ingresar la información y todas las pruebas sean exitosas, selecciona la casilla de verificación Confirmé la configuración anterior y quiero habilitar su aplicación a nivel global y haz clic en Enviar para guardarla.

Cómo agregar usuarios a una instancia de Looker (Google Cloud Core)

Una vez que se crea una instancia de Looker (Google Cloud Core), se pueden agregar usuarios a través de IAM. Para agregar usuarios, sigue estos pasos:

  1. Asegúrate de tener el rol de Administrador de IAM de proyecto o otro rol que te permita administrar el acceso de IAM.
  2. Navega al Google Cloud proyecto de la consola en el que reside la instancia de Looker (Google Cloud Core).

  3. Navega a la sección IAM y administración > IAM de la Google Cloud consola.

  4. Selecciona Otorgar acceso.

  5. En la sección Agregar principales, agrega uno o más de los siguientes elementos:

    • Un correo electrónico de la Cuenta de Google
    • Un Grupo de Google
    • Un dominio de Google Workspace
  6. En la sección Asignar roles, selecciona uno de los roles de IAM predefinidos de Looker (Google Cloud Core) o un rol personalizado que hayas agregado.

  7. Haz clic en Guardar.

  8. Comunica a los usuarios nuevos de Looker (Google Cloud Core) que se les otorgó acceso y diríjalos a la URL de la instancia. Desde allí, pueden acceder a la instancia, momento en el que se crearán sus cuentas. No se enviará ninguna comunicación automática.

Si cambias el rol de IAM de un usuario, este se propagará a la instancia de Looker (Google Cloud Core) en pocos minutos. Si hay una cuenta de usuario de Looker existente, el rol de ese usuario en Looker no se modificará.

Todos los usuarios deben aprovisionarse mediante los pasos de IAM descritos anteriormente, con una excepción: Puedes crear cuentas de servicio solo para la API de Looker en la instancia de Looker (Google Cloud Core).

Cómo acceder a Looker (Google Cloud Core) con OAuth

Cuando accedan por primera vez, se les pedirá a los usuarios que acedezcan con su Cuenta de Google. Cuando otorgue acceso, debe usar la misma cuenta que el administrador de Looker incluyó en el campo Agregar principales. Los usuarios verán la pantalla de consentimiento de OAuth que se configuró durante la creación del cliente de OAuth. Después de que los usuarios acepten la pantalla de consentimiento, se crearán sus cuentas en la instancia de Looker (Google Cloud Core) y accederán a ellas.

Después de eso, los usuarios accederán automáticamente a Looker (Google Cloud Core), a menos que su autorización venza o el usuario la revoque. En esos casos, los usuarios volverán a ver la pantalla de consentimiento de OAuth y se les pedirá que den su consentimiento para la autorización.

Es posible que a algunos usuarios se les asignen credenciales de API para usarlas en la recuperación de un token de acceso a la API. Si la autorización de esos usuarios vence o se revoca, sus credenciales de API dejarán de funcionar. También dejarán de funcionar todos los tokens de acceso a la API actuales. Para resolver el problema, el usuario debe volver a autorizar sus credenciales. Para ello, debe volver a acceder a la IU de Looker (Google Cloud Core) en cada instancia de Looker (Google Cloud Core) afectada. Como alternativa, usar cuentas de servicio solo para la API ayuda a evitar una falla de autorización de credenciales para los tokens de acceso a la API.

Cómo quitar el acceso de OAuth a Looker (Google Cloud Core)

Si tienes un rol que te permite administrar el acceso de IAM, puedes quitar el acceso a una instancia de Looker (Google Cloud Core) revocando el rol de IAM que otorgó el acceso. Si quitas el rol de IAM de una cuenta de usuario, ese cambio se propagará a la instancia de Looker (Google Cloud Core) en unos minutos. El usuario ya no podrá autenticarse en la instancia. Sin embargo, la cuenta de usuario seguirá apareciendo como activa en la página Usuarios. Para quitar la cuenta de usuario de la página Usuarios, borra al usuario en la instancia de Looker (Google Cloud Core).

Cómo usar OAuth como método de autenticación alternativo

OAuth es el método de autenticación alternativo cuando SAML o OIDC es el método de autenticación principal.

Para configurar un OAuth como método de copia de seguridad, otorga a cada usuario de Looker (Google Cloud Core) el rol de IAM adecuado para acceder a la instancia.

Una vez que se configura el método de copia de seguridad, los usuarios pueden acceder a él mediante los siguientes pasos:

  1. Selecciona Autenticar con Google en la página de acceso.
  2. Aparecerá un diálogo para confirmar la autenticación de Google. Selecciona Confirmar en el diálogo.

Luego, los usuarios pueden acceder con sus Cuentas de Google. Cuando acceda por primera vez con OAuth, se le pedirá que acepte la pantalla de consentimiento de OAuth que se configuró durante la creación de la instancia.

¿Qué sigue?