Les entreprises utilisent différents fournisseurs OpenID Connect (OP) pour se coordonner avec OpenID Connect (par exemple, Okta ou OneLogin). Les termes utilisés dans les instructions de configuration suivantes et dans l'interface utilisateur de Looker peuvent ne pas correspondre directement à ceux utilisés par votre opérateur.
La page OpenID Connect de la section Authentification du menu "Administration" vous permet de configurer Looker pour authentifier les utilisateurs à l'aide du protocole OpenID Connect. Cette page décrit ce processus et inclut des instructions pour associer des groupes OpenID Connect à des rôles et autorisations Looker.
Conditions requises
Looker n'affiche la page OpenID Connect dans la section Authentification du menu Administration que si les conditions suivantes sont remplies:
- Vous disposez du rôle Administrateur.
- Votre instance Looker est configurée pour utiliser OpenID Connect.
Si ces conditions sont remplies et que la page OpenID Connect ne s'affiche pas, déposez une demande d'assistance pour activer OpenID Connect sur votre instance.
Considérations liées à la planification
- Envisagez d'utiliser l'option Connexion alternative pour les utilisateurs spécifiés pour autoriser les administrateurs Looker à accéder à Looker sans OpenID Connect.
- Ne désactivez pas l'authentification OpenID Connect lorsque vous êtes connecté à Looker avec OpenID Connect, sauf si vous avez configuré une autre connexion de compte. Sinon, vous risqueriez de vous retrouver bloqué dans l'application.
- Looker peut migrer des comptes existants vers OpenID Connect à l'aide d'adresses e-mail provenant des configurations actuelles d'adresse e-mail et de mot de passe, de LDAP, de SAML ou de Google Auth. Vous pourrez le configurer lors du processus de configuration.
- Looker n'est compatible qu'avec l'authentification OpenID Connect à l'aide du flux avec code d'autorisation OpenID Connect. Les autres flux de code ne sont pas acceptés.
- La spécification OpenID Connect inclut un mécanisme de découverte facultatif. Looker n'est pas compatible avec ce mécanisme. Vous devez donc fournir des URL explicites dans la section Paramètres d'authentification OpenID Connect, comme décrit dans la section Configurer les paramètres d'authentification OpenID Connect.
Configurer OpenID Connect
Pour configurer la connexion entre Looker et OpenID Connect, procédez comme suit:
- Fournissez l'URL Looker à votre fournisseur OpenID Connect (OP).
- Obtenez les informations requises auprès de votre opérateur.
Configurer Looker sur votre OP
Votre fournisseur OpenID Connect (OP) aura besoin de l'URL de votre instance Looker. Votre opérateur peut l'appeler URI de redirection ou URI de redirection de connexion, entre autres. Sur le site Web de votre opérateur de plate-forme, indiquez-lui l'URL par laquelle vous accédez généralement à votre instance Looker dans un navigateur, suivie de /openidconnect
. Par exemple, https://instance_name.looker.com/openidconnect
.
Obtenir des informations auprès de votre opérateur
Pour configurer Looker pour l'authentification OpenID Connect, vous devez obtenir les informations suivantes auprès de votre OP:
- Un identifiant client et un code secret client. Ces informations sont généralement fournies par l'OP sur son site Web lorsque vous configurez l'URI de redirection.
- Lors du processus d'authentification OpenID Connect, Looker se connecte à trois points de terminaison différents : un point de terminaison d'authentification, un point de terminaison de jeton d'ID et un point de terminaison d'informations utilisateur. Vous aurez besoin des URL que votre OP utilise pour chacun de ces points de terminaison.
- Chaque opération fournit des informations sur l'utilisateur dans des ensembles appelés champs d'application. Vous devez connaître les noms des champs d'application que votre opérateur utilise. OpenID Connect nécessite le champ d'application
openid
, mais votre OP inclura probablement d'autres champs d'application, tels queemail
,profile
etgroups
. - Dans OpenID Connect, les attributs qui stockent les données utilisateur sont appelés revendications. Vous devez savoir quelles revendications votre OP transmet à Looker pour fournir les informations utilisateur souhaitées dans votre instance Looker. Looker nécessite des revendications contenant des informations sur l'adresse e-mail et le nom, mais si vous disposez d'autres attributs utilisateur, tels que le fuseau horaire ou le service, Looker doit également identifier les revendications qui contiennent ces informations. Les revendications peuvent être incluses dans la réponse du point de terminaison "Informations utilisateur" ou du point de terminaison "Jeton d'identification". Looker peut mapper les revendications renvoyées par l'un des points de terminaison sur les attributs utilisateur Looker.
De nombreux OP fournissent des informations sur la configuration d'OpenID Connect sous la forme d'un document de découverte. Vous pouvez ainsi collecter tout ou partie des informations dont vous avez besoin pour configurer Looker pour OpenID Connect. Si vous n'avez pas accès à un document de découverte, vous devez obtenir les informations nécessaires auprès de votre opérateur de téléphonie ou de votre équipe d'authentification interne.
La section suivante est issue d'un exemple de document de découverte:
{ "issuer": "https://accounts.google.com", "authorization_endpoint": "https://accounts.google.com/o/oauth2/v2/auth", "token_endpoint": "https://www.googleapis.com/oauth2/v4/token", "userinfo_endpoint": "https://www.googleapis.com/oauth2/v3/userinfo", "revocation_endpoint": "https://accounts.google.com/o/oauth2/revoke", "jwks_uri": "https://www.googleapis.com/oauth2/v3/certs", "response_types_supported": [ "code", "token", "id_token", "code token" "code id_token", "token id_token", "code token id_token", "none" ], "subject_types_supported": [ "public" ], "id_token_signing_alg_values_supported": [ "RS256" ], "scopes_supported": [ "openid", "email", "profile" ], "token_endpoint_auth_methods_supported": [ "client_secret_post", "client_secret_basic" ], "claims_supported": [ "aud", "email", "email_verified", "exp", "family_name", "given_name", "iat", "iss", "locale", "name", "picture", "sub" ],
Configurer les paramètres d'authentification OpenID Connect
Utilisez les informations de configuration que vous avez obtenues dans le document de découverte de votre opérateur de téléphonie mobile, auprès de votre opérateur ou de votre équipe d'authentification interne pour saisir les paramètres de connexion dans les champs suivants:
Identifiant: identifiant client propre à votre instance Looker. Cette information doit vous être fournie par votre opérateur.
Secret: clé de secret client propre à votre instance Looker. Cette information doit vous être fournie par votre opérateur.
Émetteur: URL sécurisée qui identifie votre OP.
Audience (Audience) : identifiant indiquant à votre OP l'identité du client. Il correspond souvent à la valeur de l'attribut Identifiant, mais peut être différent.
URL d'autorisation: URL de l'OP à partir de laquelle la séquence d'authentification commence. Souvent appelé authorization_endpoint
dans un document de découverte.
URL du jeton: URL à laquelle Looker récupère un jeton OAuth après avoir été autorisé. Souvent appelé token_endpoint
dans un document de découverte.
URL des informations utilisateur: URL à laquelle Looker récupère des informations détaillées sur l'utilisateur. Souvent appelé userinfo_endpoint
dans un document de découverte.
Champs d'application: liste des champs d'application utilisés par l'OP pour fournir des informations sur l'utilisateur à Looker, séparés par une virgule. Vous devez inclure le champ d'application openid
et tous les champs d'application qui incluent les informations requises par Looker, y compris les adresses e-mail, les noms d'utilisateur et les attributs utilisateur configurés sur votre instance Looker.
Configurer les paramètres des attributs utilisateur
Dans cette section, vous allez mapper les revendications de l'OP sur les attributs utilisateur de Looker.
Dans la section User Attribute Settings (Paramètres des attributs utilisateur), saisissez le nom de la revendication de votre OP qui contient les informations correspondantes pour chaque champ. Cela indique à Looker comment mapper ces revendications aux informations utilisateur de Looker au moment de la connexion. Looker n'est pas particulièrement exigeant sur la manière dont les revendications sont construites. Il est simplement important que les informations saisies ici correspondent à la manière dont les revendications sont définies dans votre OP.
Revendications standards
Looker nécessite un nom d'utilisateur et des informations de messagerie pour l'authentification des utilisateurs. Saisissez les informations de réclamation correspondantes de votre opérateur dans cette section:
Revendication d'adresse e-mail: revendication utilisée par votre opérateur pour les adresses e-mail des utilisateurs, par exemple email
.
Revendiquer un prénom: revendication utilisée par votre opérateur pour les prénoms des utilisateurs, par exemple given_name
.
Revendication du nom de famille: revendication utilisée par votre opérateur pour les noms de famille des utilisateurs, par exemple family_name
.
Notez que certains opérateurs utilisent une seule revendication pour les noms, au lieu de séparer le prénom et le nom. Si c'est le cas pour votre demande d'accès, saisissez la revendication qui stocke les noms dans les champs Prenom et Nom. Pour chaque utilisateur, Looker utilisera le contenu jusqu'au premier espace comme prénom et tout ce qui suit comme nom.
Associations d'attributs
Vous pouvez également utiliser les données de vos revendications OpenID Connect pour renseigner automatiquement les valeurs des attributs utilisateur Looker lorsqu'un utilisateur se connecte. Par exemple, si vous avez configuré OpenID Connect pour établir des connexions spécifiques à l'utilisateur à votre base de données, vous pouvez associer vos revendications OpenID Connect aux attributs utilisateur Looker pour rendre vos connexions à la base de données spécifiques à l'utilisateur dans Looker.
Pour associer des revendications aux attributs utilisateur Looker correspondants:
- Saisissez la revendication telle qu'elle a été identifiée par votre opérateur dans le champ Claim (Revendication) et l'attribut utilisateur Looker avec lequel vous souhaitez l'associer dans le champ Looker User Attributes (Attributs utilisateur Looker).
- Cochez Obligatoire si vous souhaitez bloquer la connexion de tout compte utilisateur pour lequel aucune valeur n'est définie dans ce champ de revendication.
- Cliquez sur + et répétez ces étapes pour ajouter d'autres paires de revendications et d'attributs.
Notez que certaines opérations peuvent comporter des revendications "imbriquées". Exemple :
"zoneinfo": "America/Los Angeles",
"phone_number": "555-1235",
"address": {
"street_address": "1234 Main Street",
"locality": "Anyton",
"region": "IL",
"postal_code": "60609",
"country": "US"
},
Dans l'exemple précédent, la revendication locality
est imbriquée dans la revendication address
. Pour les revendications imbriquées, spécifiez la revendication parente et les revendications imbriquées, séparées par un caractère barre oblique ( /
). Pour configurer Looker pour la revendication locality
dans l'exemple, saisissez address/locality
.
Groupes et rôles
Vous pouvez demander à Looker de créer des groupes qui reflètent vos groupes OpenID Connect gérés en externe, puis d'attribuer des rôles Looker aux utilisateurs en fonction de leurs groupes OpenID Connect en miroir. Lorsque vous modifiez votre appartenance à un groupe OpenID Connect, ces modifications sont automatiquement propagées dans la configuration des groupes de Looker.
La duplication des groupes OpenID Connect vous permet d'utiliser votre répertoire OpenID Connect défini en externe pour gérer les groupes et les utilisateurs Looker. Vous pouvez ainsi gérer votre appartenance à des groupes pour plusieurs outils SaaS (Software as a Service), tels que Looker, au même endroit.
Si vous activez Refléter les groupes OpenID Connect, Looker créera un groupe Looker pour chaque groupe OpenID Connect introduit dans le système. Vous pouvez consulter ces groupes Looker sur la page Groupes de la section Administration de Looker. Les groupes peuvent être utilisés pour attribuer des rôles aux membres du groupe, définir des contrôles d'accès aux contenus et attribuer des attributs utilisateur.
Groupes et rôles par défaut
Par défaut, le bouton Refléter les groupes OpenID Connect est désactivé. Dans ce cas, vous pouvez définir un groupe par défaut pour les nouveaux utilisateurs OpenID Connect. Dans les champs Nouveaux groupes d'utilisateurs et Nouveaux rôles d'utilisateurs, saisissez le nom des groupes ou des rôles Looker auxquels vous souhaitez attribuer de nouveaux utilisateurs Looker lorsqu'ils se connectent pour la première fois à Looker:
Ces groupes et rôles sont appliqués aux nouveaux utilisateurs lors de leur première connexion. Elles ne sont pas appliquées aux utilisateurs existants et ne sont pas réappliquées si elles sont supprimées des utilisateurs après leur connexion initiale.
Activer la duplication des groupes OpenID Connect
Pour dupliquer vos groupes OpenID Connect dans Looker, activez le bouton Dupliquer les groupes OpenID Connect:
Revendication des groupes: saisissez la revendication utilisée par votre opérateur de plate-forme pour stocker les noms de groupes. Looker crée un groupe Looker pour chaque groupe OpenID Connect introduit dans le système par la revendication de groupes. Vous pouvez consulter ces groupes Looker sur la page Groupes de la section Administration de Looker. Les groupes peuvent être utilisés pour définir des contrôles d'accès aux contenus et attribuer des attributs utilisateur.
Nom de groupe préféré / Rôles / Nom de groupe OpenID Connect: cet ensemble de champs vous permet d'attribuer un nom de groupe personnalisé et un ou plusieurs rôles au groupe OpenID Connect correspondant dans Looker:
Saisissez le nom du groupe OpenID Connect dans le champ Nom du groupe OpenID Connect. Les utilisateurs OpenID Connect inclus dans le groupe OpenID Connect seront ajoutés au groupe dupliqué dans Looker.
Saisissez un nom personnalisé pour le groupe dupliqué dans le champ Nom personnalisé. Il s'agit du nom qui s'affichera sur la page Groupes de la section Administration de Looker.
Dans le champ à droite du champ Nom personnalisé, sélectionnez un ou plusieurs rôles Looker qui seront attribués à chaque utilisateur du groupe.
Cliquez sur
+
pour ajouter des ensembles de champs afin de configurer d'autres groupes miroirs. Si vous avez configuré plusieurs groupes et que vous souhaitez supprimer la configuration d'un groupe, cliquez surX
à côté de l'ensemble de champs de ce groupe.
Si vous modifiez un groupe miroir précédemment configuré dans cet écran, sa configuration changera, mais le groupe lui-même restera intact. Par exemple, vous pouvez modifier le nom personnalisé d'un groupe, ce qui changera son apparence sur la page Groupes de Looker, mais pas les rôles attribués ni les membres du groupe. Si vous modifiez l'ID de groupe OpenID Connect, le nom et les rôles du groupe resteront inchangés, mais les membres du groupe seront réaffectés en fonction des utilisateurs qui sont membres du groupe OpenID Connect externe qui possède le nouvel ID de groupe OpenID Connect.
Si vous supprimez un groupe sur cette page, il ne sera plus dupliqué dans Looker et ses membres ne disposeront plus des rôles qui leur étaient attribués dans Looker via ce groupe.
Toutes les modifications apportées à un groupe dupliqué seront appliquées aux utilisateurs de ce groupe lors de leur prochaine connexion à Looker.
Gestion avancée des rôles
Si vous avez activé le bouton Refléter les groupes OpenID Connect, Looker affiche ces paramètres. Les options de cette section déterminent le niveau de flexibilité des administrateurs Looker lorsqu'ils configurent des groupes Looker et des utilisateurs qui ont été mis en miroir à partir d'OpenID Connect.
Par exemple, si vous souhaitez que votre groupe Looker et la configuration de l'utilisateur correspondent exactement à votre configuration OpenID Connect, activez ces options. Lorsque les trois premières options sont activées, les administrateurs Looker ne peuvent pas modifier l'appartenance aux groupes miroirs et ne peuvent attribuer des rôles aux utilisateurs que via des groupes miroirs OpenID Connect.
Si vous souhaitez avoir plus de flexibilité pour personnaliser davantage vos groupes dans Looker, désactivez ces options. Vos groupes Looker continueront de refléter votre configuration OpenID Connect, mais vous pourrez gérer davantage de groupes et d'utilisateurs dans Looker, par exemple en ajoutant des utilisateurs OpenID Connect à des groupes spécifiques à Looker ou en attribuant des rôles Looker directement à des utilisateurs OpenID Connect.
Pour les nouvelles instances Looker ou les instances qui ne disposent pas de groupes miroirs configurés précédemment, ces options sont désactivées par défaut.
Pour les instances Looker existantes qui ont configuré des groupes miroirs, ces options sont activées par défaut.
La section Gestion avancée des rôles contient les options suivantes:
Empêcher les utilisateurs OpenID Connect individuels de recevoir des rôles directs: si vous activez cette option, les administrateurs Looker ne pourront plus attribuer des rôles Looker directement aux utilisateurs OpenID Connect. Les utilisateurs OpenID Connect ne recevront des rôles que via les groupes dont ils sont membres. Si les utilisateurs OpenID Connect sont autorisés à faire partie de groupes Looker intégrés (non mis en miroir), ils peuvent toujours hériter de leurs rôles à la fois des groupes OpenID Connect mis en miroir et des groupes Looker intégrés. Les rôles attribués directement aux utilisateurs OpenID Connect seront supprimés lors de leur prochaine connexion.
Si cette option est désactivée, les administrateurs Looker peuvent attribuer des rôles Looker directement aux utilisateurs OpenID Connect comme s'ils étaient des utilisateurs configurés directement dans Looker.
Empêcher l'adhésion directe aux groupes autres qu'OpenID Connect: si vous activez cette option, les administrateurs Looker ne pourront plus ajouter d'utilisateurs OpenID Connect directement aux groupes Looker intégrés. Si les groupes OpenID Connect en miroir sont autorisés à être membres de groupes Looker intégrés, les utilisateurs OpenID Connect peuvent conserver leur appartenance à tous les groupes Looker parents. Tous les utilisateurs OpenID Connect qui étaient auparavant affectés à des groupes Looker intégrés seront supprimés de ces groupes lors de leur prochaine connexion.
Si cette option est désactivée, les administrateurs Looker peuvent ajouter des utilisateurs OpenID Connect directement à des groupes Looker intégrés.
Empêcher l'héritage de rôles à partir de groupes autres qu'OpenID Connect: si vous activez cette option, les membres des groupes OpenID Connect clonés ne peuvent pas hériter des rôles des groupes Looker intégrés. Tous les utilisateurs OpenID Connect qui héritaient auparavant de rôles d'un groupe Looker parent perdront ces rôles lors de leur prochaine connexion.
Si cette option est désactivée, les groupes OpenID Connect ou les utilisateurs OpenID Connect miroirs ajoutés en tant que membres d'un groupe Looker intégré hériteront des rôles attribués au groupe Looker parent.
Authentification nécessitant un rôle: si cette option est activée, un rôle doit être attribué aux utilisateurs OpenID Connect. Les utilisateurs OpenID Connect auxquels aucun rôle n'est attribué ne pourront pas se connecter à Looker.
Si cette option est désactivée, les utilisateurs OpenID Connect peuvent s'authentifier dans Looker même s'ils ne disposent d'aucun rôle. Un utilisateur sans rôle attribué ne pourra voir aucune donnée ni effectuer aucune action dans Looker, mais pourra se connecter à Looker.
Désactiver les groupes OpenID Connect miroirs
Si vous souhaitez arrêter la duplication de vos groupes OpenID Connect dans Looker, désactivez l'option Dupliquer les groupes OpenID Connect. Tous les groupes OpenID Connect miroirs vides seront supprimés.
Les groupes OpenID Connect miroir non vides resteront disponibles pour la gestion de contenu et la création de rôles. Toutefois, vous ne pouvez pas ajouter ni supprimer d'utilisateurs dans des groupes OpenID Connect miroirs.
Configurer les options de migration
Comme expliqué dans cette section, Looker vous recommande d'activer la Connexion alternative et de fournir une stratégie de fusion pour les utilisateurs existants.
Connexion alternative pour les utilisateurs spécifiés
Les connexions Looker par adresse e-mail et mot de passe sont toujours désactivées pour les utilisateurs ordinaires lorsque l'authentification OpenID Connect est activée. L'option Connexion alternative pour les utilisateurs spécifiés permet d'utiliser une autre adresse e-mail pour la connexion à l'aide de /login/email
pour les administrateurs et les utilisateurs spécifiés disposant de l'autorisation login_special_email
.
Cette option est utile en cas de problème de configuration OpenID Connect plus tard ou si vous devez prendre en charge certains utilisateurs qui ne disposent pas de comptes dans votre répertoire OpenID Connect.
Spécifier la méthode utilisée pour fusionner des utilisateurs OpenID Connect avec un compte Looker
Dans le champ Fusionner les utilisateurs à l'aide de, spécifiez la méthode à utiliser pour fusionner une première connexion Open ID Connect avec un compte utilisateur existant. Vous pouvez fusionner des utilisateurs à partir des systèmes suivants:
- Adresse e-mail/Mot de passe Looker (non disponible pour Looker (Google Cloud Core))
- LDAP (non disponible pour Looker (Google Cloud Core))
- SAML
Si vous avez mis en place plusieurs systèmes d'authentification, vous pouvez spécifier plusieurs systèmes à fusionner dans ce champ. Looker recherche les utilisateurs des systèmes listés dans l'ordre dans lequel ils sont spécifiés. Par exemple, supposons que vous ayez créé des utilisateurs à l'aide de l'adresse e-mail/du mot de passe Looker, puis que vous ayez activé LDAP, et que vous souhaitiez maintenant utiliser OpenID Connect. Dans l'exemple précédent, Looker fusionnerait d'abord les comptes par adresse e-mail et mot de passe, puis par LDAP.
Lorsqu'un utilisateur se connecte pour la première fois avec OpenID Connect, 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éé.
Fusionner des utilisateurs lorsque vous utilisez Looker (Google Cloud Core)
Lorsque vous utilisez Looker (Google Cloud Core) et OpenID Connect, la fusion fonctionne comme décrit dans la section précédente. Toutefois, cela n'est possible que si l'une des deux conditions suivantes est remplie:
- Condition 1: Les utilisateurs s'authentifient dans Looker (Google Cloud Core) à l'aide de leurs identités Google via le protocole OpenID Connect.
Condition 2: Avant de sélectionner l'option de fusion, vous avez effectué les deux étapes suivantes:
- Identités des utilisateurs fédérés dans Google Cloud à l'aide de Cloud Identity.
- Configurez l'authentification OAuth comme méthode d'authentification de secours à l'aide des utilisateurs fédérés.
Si la configuration ne remplit pas l'une de ces deux conditions, l'option Fusionner les utilisateurs à l'aide de n'est pas disponible.
Lors de la fusion, Looker recherche les enregistrements utilisateur qui partagent exactement la même adresse e-mail.
Tester l'authentification des utilisateurs
Lorsque vous spécifiez cette configuration, cliquez sur le bouton Test (Tester) pour tester votre configuration OpenID Connect.
Les tests seront redirigés vers les points de terminaison et un nouvel onglet du navigateur s'ouvrira. L'onglet affiche les éléments suivants:
- Indique si Looker a pu communiquer avec les différents points de terminaison et les valider.
- Une trace de la réponse du point de terminaison d'authentification
- Informations utilisateur obtenues par Looker à partir du point de terminaison d'informations utilisateur
- Versions décodées et brutes du jeton d'ID reçu
Vous pouvez utiliser ce test pour vérifier que les informations reçues des différents points de terminaison sont correctes et pour résoudre les erreurs éventuelles.
Conseils :
- Vous pouvez exécuter ce test à tout moment, même si OpenID Connect est partiellement configuré. L'exécution d'un test peut être utile lors de la configuration pour identifier les paramètres à configurer.
- Le test utilise les paramètres saisis sur la page Authentification OpenID Connect, même s'ils n'ont pas été enregistrés. Le test n'aura aucune incidence sur les paramètres de cette page.
Enregistrer et appliquer les paramètres
Une fois que vous avez saisi vos informations et que tous les tests sont réussis, cochez la case J'ai confirmé la configuration ci-dessus et je souhaite l'appliquer globalement, puis cliquez sur Mettre à jour les paramètres pour enregistrer.