Utiliser Google OAuth pour l'authentification des utilisateurs 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 vous explique comment configurer l'authentification d'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'Cloud Customer Care 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 projet Google Cloud 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

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

peut afficher la liste des instances Looker (Google Cloud Core) et les détails des instances 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), ce rôle (ou un rôle personnalisé qui inclut l'autorisation looker.instances.update) est défini par défaut sur le rôle Administrateur Looker dans l'instance.

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 et administrer toutes les instances Looker (Google Cloud Core) de ce projet. Ces utilisateurs se verront attribuer le rôle Administrateur dans 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).

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 accorder à 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 comptes utilisateur disposant d'un rôle IAM Administrateur Looker (roles/looker.admin) se verront attribuer le rôle Administrateur Looker, quel que soit le rôle sélectionné dans le paramètre Rôles pour les nouveaux utilisateurs. Si nécessaire, vous pouvez remplacer le rôle d'administrateur par un autre.

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 d'autorisation 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