Utiliser Google OAuth pour l'authentification des utilisateurs de Looker (Google Cloud Core)

Google OAuth est utilisé avec Identity and Access Management (IAM) pour authentifier les utilisateurs de Looker (Google Cloud core).

Lorsque vous utilisez OAuth pour l'authentification, Looker (Google Cloud Core) authentifie les utilisateurs via le protocole OAuth 2.0. Utilisez n'importe quel client OAuth 2.0 pour créer des identifiants d'autorisation lorsque vous créez une instance. Par exemple, cette page explique comment configurer l'authentification pour une instance Looker (Google Cloud Core) à l'aide de la console Google Cloud pour créer des identifiants OAuth.

Si une autre méthode est la méthode d'authentification principale, Google OAuth est la méthode d'authentification de secours par défaut. Google OAuth est également la méthode d'authentification utilisée par l'assistance client Cloud pour fournir une assistance.

Authentification et autorisation avec OAuth et IAM

Lorsqu'ils sont utilisés avec OAuth, les rôles IAM Looker (Google Cloud Core) fournissent les niveaux d'authentification et d'autorisation suivants pour toutes les instances Looker (Google Cloud Core) d'un Google Cloud projet donné. Attribuez l'un des rôles IAM suivants à chacun de vos comptes principaux, en fonction des niveaux d'accès que vous souhaitez leur accorder:

Rôle IAM Authentification Autorisation
Utilisateur de l'instance Looker (roles/looker.instanceUser)

peut se connecter aux instances Looker (Google Cloud Core) ;

Lors de la première connexion à Looker (Google Cloud Core), le rôle Looker par défaut défini dans Rôles pour les nouveaux utilisateurs est accordé.

Impossible d'accéder aux ressources Looker (Google Cloud Core) dans la console Google Cloud.

Lecteur Looker (roles/looker.viewer) peut se connecter aux instances Looker (Google Cloud Core) ; Lors de la première connexion à Looker (Google Cloud Core), le rôle Looker par défaut défini dans Rôles pour les nouveaux utilisateurs est accordé.

peut afficher la liste des instances Looker (Google Cloud Core) et leurs détails dans la console Google Cloud ;
Administrateur Looker (roles/looker.admin) peut se connecter aux instances Looker (Google Cloud Core) ; Lors de la première connexion à Looker (Google Cloud Core), le rôle Looker par défaut défini dans Rôles pour les nouveaux utilisateurs est accordé.

Vérifié à chaque connexion à Looker (Google Cloud Core) qui utilise OAuth principal ou OAuth de secours, et chaque fois que l'utilisateur appelle l'API Looker, ce rôle (ou un rôle personnalisé incluant l'autorisation looker.instances.update) est attribué au rôle Administrateur via IAM dans l'instance. Le rôle Administrateur via IAM contient toutes les autorisations et fonctionnalités du rôle Administrateur Looker. Ce rôle ne peut pas être supprimé ni réaffecté dans l'instance Looker (Google Cloud Core). Pour supprimer le rôle Admin via IAM, réattribuez le compte principal à un rôle IAM autre que Looker Admin (roles/looker.admin). Les modifications apportées aux rôles IAM sont automatiquement synchronisées avec l'instance Looker (Google Cloud Core), même si l'utilisateur se connecte avec un fournisseur d'identité tiers après la modification. Pour en savoir plus, consultez la section Rôle d'administrateur Looker par rapport au rôle d'administrateur via le rôle d'administrateur Looker IAM.

Tant que le jeton d'actualisation OAuth d'un utilisateur est valide, son rôle s'affiche comme Administrateur via IAM dans Looker (Google Cloud Core), même s'il se connecte ultérieurement avec un fournisseur d'identité tiers. Si le jeton d'actualisation OAuth expire ou est révoqué, l'utilisateur doit se reconnecter à l'instance via OAuth pour récupérer le rôle Administrateur via IAM.

peut effectuer toutes les tâches administratives pour Looker (Google Cloud Core) dans la console Google Cloud ;

De plus, les comptes utilisateur disposant du rôle owner pour un projet peuvent se connecter à toutes les instances Looker (Google Cloud Core) de ce projet et les administrer. Ces utilisateurs se verront attribuer le rôle Administrateur Looker.

Si les rôles prédéfinis ne fournissent pas l'ensemble d'autorisations souhaité, vous pouvez également créer vos propres rôles personnalisés.

Les comptes Looker (Google Cloud Core) sont créés lors de la première connexion à une instance Looker (Google Cloud Core).

Rôle d'administrateur Looker par rapport au rôle d'administrateur via le rôle d'administrateur Looker IAM

Dans une instance Looker (Google Cloud Core), deux rôles utilisent l'ensemble d'autorisations administrateur et confèrent les mêmes droits d'administrateur dans l'instance. Le tableau suivant récapitule les similitudes et les différences entre les deux rôles.

Propriété Rôle Administrateur Looker Rôle Administrateur Looker IAM
Source fiable Accordé par un autre administrateur dans l'instance Looker (Google Cloud Core) Lié directement au rôle IAM d'administrateur Looker
peuvent être ajoutés ou supprimés dans une instance Looker (Google Cloud Core) ? Oui Non
Peut-on ajouter ou supprimer des rôles avec IAM ? Non Oui
Autorisations dans Looker (Google Cloud Core) Toutes les autorisations Toutes les autorisations
Autorisations dans la console Google Cloud Aucun Accès complet à toutes les ressources Looker (Google Cloud Core)
Validation des rôles En continu dans l'instance Looker (Google Cloud Core) À chaque connexion à l'instance Looker (Google Cloud Core) et à chaque appel d'API Looker.

La propagation des modifications apportées à un rôle avec IAM peut prendre plusieurs minutes.
Champ d'application Instance Looker (Google Cloud Core) individuelle Toutes les instances Looker (Google Cloud Core) d'un Google Cloud projet

Un utilisateur peut disposer des rôles Administrateur et Administrateur via IAM dans Looker. Par conséquent, si vous souhaitez révoquer les droits d'administrateur, veillez à supprimer à la fois le rôle IAM et le rôle administrateur dans l'instance Looker (Google Cloud Core).

Configurer OAuth dans l'instance Looker (Google Cloud Core)

Dans l'instance Looker (Google Cloud Core), la page Google de la section Authentification du menu Administration vous permet de configurer certains paramètres OAuth Google.

Définir un rôle Looker par défaut dans l'instance Looker (Google Cloud Core)

Avant d'ajouter des utilisateurs, vous pouvez définir le rôle Looker par défaut qui sera attribué aux comptes utilisateur disposant du rôle IAM "Utilisateur de l'instance Looker" (roles/looker.instanceUser) ou du rôle IAM "Lecteur Looker" (roles/looker.viewer) lors de leur première connexion à une instance Looker (Google Cloud Core). Pour définir un rôle par défaut, procédez comme suit:

  1. Accédez à la page Google dans la section Authentification du menu Administration.
  2. Dans le paramètre Rôles pour les nouveaux utilisateurs, sélectionnez le rôle que vous souhaitez attribuer à tous les nouveaux utilisateurs par défaut. Ce paramètre contient la liste de tous les rôles par défaut et des rôles personnalisés de l'instance Looker (Google Cloud Core).

Les rôles d'administrateur ne peuvent pas être des rôles par défaut. Les comptes utilisateur disposant d'un rôle IAM administrateur Looker (roles/looker.admin) se verront attribuer le rôle Looker Administrateur via IAM lors de leur première connexion, en plus du rôle sélectionné dans le paramètre Rôles pour les nouveaux utilisateurs.

Spécifier la méthode utilisée pour fusionner des utilisateurs OAuth avec un compte Looker (Google Cloud Core)

Dans le champ Fusionner les utilisateurs à l'aide de, spécifiez la méthode à utiliser pour fusionner une première connexion OAuth avec un compte utilisateur existant. Vous pouvez fusionner des utilisateurs à partir des systèmes suivants:

  • SAML
  • OIDC

Si vous avez mis en place plusieurs systèmes, vous pouvez en spécifier plusieurs dans ce champ. Looker (Google Cloud Core) recherche les utilisateurs dans les systèmes listés dans l'ordre dans lequel ils sont spécifiés. Par exemple, si vous avez d'abord créé des utilisateurs à l'aide d'OIDC, puis que vous avez ensuite utilisé SAML, Looker (Google Cloud Core) fusionnera d'abord par OIDC, puis par SAML.

Lorsqu'un utilisateur se connecte pour la première fois via OAuth, cette option le connecte à son compte existant en recherchant le compte associé à une adresse e-mail correspondante. Si aucun compte utilisateur n'existe pour l'utilisateur, un compte utilisateur est créé.

Ajouter des utilisateurs à une instance Looker (Google Cloud Core)

Une fois une instance Looker (Google Cloud Core) créée, vous pouvez ajouter des utilisateurs via IAM. Pour ajouter des utilisateurs, procédez comme suit:

  1. Assurez-vous de disposer du rôle Administrateur de projet IAM ou d'un autre rôle vous permettant de gérer l'accès IAM.
  2. Accédez au projet de console Google Cloud dans lequel se trouve l'instance Looker (Google Cloud Core).

  3. Accédez à la section IAM et Administration > IAM de la console Google Cloud.

  4. Sélectionnez Accorder l'accès.

  5. Dans la section Ajouter des comptes principaux, ajoutez une ou plusieurs des informations suivantes:

    • Adresse e-mail du compte Google
    • un groupe Google
    • Un domaine Google Workspace
  6. Dans la section Attribuer des rôles, sélectionnez l'un des rôles IAM Looker (Google Cloud Core) prédéfinis ou un rôle personnalisé que vous avez ajouté.

  7. Cliquez sur Enregistrer.

  8. Informez les nouveaux utilisateurs de Looker (Google Cloud Core) que l'accès leur a été accordé et redirigez-les vers l'URL de l'instance. Ils peuvent ensuite se connecter à l'instance, et leurs comptes seront créés. Aucune communication automatique ne sera envoyée.

Si vous modifiez le rôle IAM d'un utilisateur, il est propagé à l'instance Looker (Google Cloud Core) en quelques minutes. Si un compte utilisateur Looker existe déjà, le rôle Looker de cet utilisateur reste inchangé.

Tous les utilisateurs doivent être provisionnés en suivant les étapes IAM décrites précédemment, à une exception près: vous pouvez créer des comptes de service réservés à l'API Looker dans l'instance Looker (Google Cloud Core).

Se connecter à Looker (Google Cloud Core) avec OAuth

Lors de la première connexion, les utilisateurs sont invités à se connecter avec leur compte Google. Ils doivent utiliser le même compte que celui indiqué par l'administrateur Looker dans le champ Ajouter des comptes principaux lors de l'octroi de l'accès. Les utilisateurs verront l'écran de consentement OAuth configuré lors de la création du client OAuth. Une fois que les utilisateurs ont accepté l'écran de consentement, leurs comptes sont créés dans l'instance Looker (Google Cloud Core) et ils sont connectés.

Les utilisateurs seront ensuite automatiquement connectés à Looker (Google Cloud Core), sauf si leur autorisation expire ou est révoquée par l'utilisateur. Dans ces scénarios, les utilisateurs verront à nouveau l'écran de consentement OAuth et seront invités à donner leur consentement.

Certains utilisateurs peuvent se voir attribuer des identifiants API pour récupérer un jeton d'accès à l'API. Si l'autorisation de ces utilisateurs expire ou est révoquée, leurs identifiants d'API ne fonctionnent plus. Tous les jetons d'accès à l'API actuels cesseront également de fonctionner. Pour résoudre le problème, l'utilisateur doit réautoriser ses identifiants en se reconnectant à l'interface utilisateur de Looker (Google Cloud Core) pour chaque instance Looker (Google Cloud Core) concernée. Vous pouvez également utiliser des comptes de service réservés aux API pour éviter une erreur d'autorisation des identifiants pour les jetons d'accès aux API.

Supprimer l'accès OAuth à Looker (Google Cloud Core)

Si vous disposez d'un rôle qui vous permet de gérer l'accès IAM, vous pouvez supprimer l'accès à une instance Looker (Google Cloud Core) en révoquant le rôle IAM qui a accordé l'accès. Si vous supprimez le rôle IAM d'un compte utilisateur, ce changement se propage dans l'instance Looker (Google Cloud Core) en quelques minutes. L'utilisateur ne pourra plus s'authentifier auprès de l'instance. Toutefois, le compte utilisateur apparaîtra toujours comme actif sur la page Utilisateurs. Pour supprimer le compte utilisateur de la page Utilisateurs, supprimez l'utilisateur dans l'instance Looker (Google Cloud Core).

Utiliser OAuth comme méthode d'authentification de secours

OAuth est la méthode d'authentification de secours lorsque SAML ou OIDC est la méthode d'authentification principale.

Pour configurer OAuth comme méthode de sauvegarde, accordez à chaque utilisateur Looker (Google Cloud Core) le rôle IAM approprié pour se connecter à l'instance.

Une fois la méthode de sauvegarde configurée, les utilisateurs y accèdent en procédant comme suit:

  1. Sélectionnez S'authentifier avec Google sur la page de connexion.
  2. Une boîte de dialogue s'affiche pour confirmer l'authentification Google. Sélectionnez Confirmer dans la boîte de dialogue.

Les utilisateurs peuvent ensuite se connecter avec leur compte Google. Lors de la première connexion avec OAuth, ils seront invités à accepter l'écran de consentement OAuth configuré lors de la création de l'instance.

Étape suivante