Contactez votre responsable de compte Looker si vous souhaitez utiliser ces fonctionnalités.
La représentation vectorielle continue de l'authentification unique (SSO) permet de présenter des styles privés, des visualisations, des explorations, des tableaux de bord ou des tableaux de bord LookML intégrés à vos utilisateurs sans qu'ils aient besoin de disposer d'informations de connexion Looker distinctes. Les utilisateurs seront authentifiés via votre propre application.
L'intégration SSO fonctionne en créant une URL Looker spéciale que vous utiliserez dans un iFrame. L'URL contient les informations que vous souhaitez partager, l'ID de l'utilisateur dans votre système et les autorisations que vous souhaitez accorder à cet utilisateur. Vous signerez ensuite l'URL avec une clé secrète fournie par Looker.
Pour l'intégration publique, consultez la section Intégration publique avec des balises iframe
de la page de documentation Partage public, importation et intégration de looks.
Hébergement approprié pour l'intégration SSO
Certains navigateurs (Safari ou les navigateurs contenant des extensions de blocage des annonces ou de suivi, par exemple) utilisent par défaut une règle de blocage des cookies tiers. Looker utilise des cookies pour l'authentification des utilisateurs. Par conséquent, il n'est pas possible d'authentifier l'iFrame intégré sur plusieurs domaines (à moins que l'utilisateur ne modifie les paramètres de confidentialité du cookie du navigateur). Par exemple, si vous souhaitez intégrer des informations sur https://mycompany.com
, vous devez vous assurer que Looker partage le même domaine, tel que https://analytics.mycompany.com
.
Si Looker héberge votre instance, contactez l'assistance Looker pour définir la configuration DNS requise afin d'activer l'utilisation d'un domaine personnalisé. Looker pourra ainsi partager le même domaine que l'application d'intégration et utiliser des cookies propriétaires, qui sont acceptés par défaut dans tous les navigateurs. Ouvrez une demande d'assistance dans le Centre d'aide de Looker en cliquant sur Nous contacter.
Si vous disposez d'une instance Looker hébergée par le client, assurez-vous que l'application qui utilisera l'intégration SSO utilise le même domaine que votre instance Looker.
Contrôler la visibilité des clients avec un système fermé
Dans une configuration d'intégration SSO, les utilisateurs de Looker présentent souvent des données à leurs propres clients, et les clients de différentes entreprises ou groupes ne doivent pas se connaître. Dans ce scénario, pour protéger les informations privées de vos clients, nous vous recommandons vivement de configurer Looker en tant que système fermé, également appelé installation mutualisée. Dans un système fermé, le contenu est cloisonné pour empêcher les utilisateurs de groupes différents de se connaître. C'est pourquoi nous vous recommandons d'activer l'option Système fermé avant d'autoriser les utilisateurs externes à accéder à votre instance.
Pour en savoir plus, consultez les pages Concevoir et configurer un système de niveaux d'accès et Bonnes pratiques de sécurité pour l'analyse intégrée.
Génération de la clé secrète de Looker
Pour vérifier la légitimité d'une demande d'intégration SSO et qu'elle n'a pas été falsifiée par un tiers, vous devez d'abord générer un "code secret d'intégration". Pour ce faire :
- Accédez à la page Intégrer dans la section Administration de Looker.
- Sélectionnez Activé dans la liste déroulante Intégrer l'authentification unique, puis cliquez sur Mettre à jour.
- Cliquez sur le bouton Reset Secret (Réinitialiser le secret) pour générer votre secret d'intégration. Assurez-vous de copier ce secret dans un emplacement sécurisé, car vous ne pourrez pas le récupérer à partir de Looker sans le réinitialiser. Si vous la réinitialisez, les intégrations qui utilisent l'ancienne clé ne fonctionneront plus.
Toute personne ayant accès à la clé secrète peut créer une URL pour accéder à n'importe quel modèle auquel une instance Looker est connectée, avec n'importe quelle autorisation. Protégez le secret d'intégration de l'authentification unique comme vous le feriez pour les identifiants d'administrateur de votre instance Looker intégrée, et laissez l'intégration SSO désactivée si vous ne l'utilisez pas.
Créer l'URL d'intégration
La création de l'URL appropriée nécessite que vous écriviez du code, afin de pouvoir encoder correctement l'URL avec votre clé secrète et générer d'autres éléments liés à la sécurité. Vous trouverez plusieurs exemples de scripts dans notre dépôt GitHub d'exemples d'authentification unique. Les sections suivantes expliquent les informations que vous devez fournir à ces scripts.
Collecte des informations Looker nécessaires
Pour commencer, vous devez d'abord déterminer toutes les informations à inclure. Vous avez alors besoin de :
URL d'intégration
Récupérez l'URL de l'apparence, de l'exploration, de la visualisation des requêtes ou du tableau de bord que vous souhaitez intégrer. Supprimez ensuite le domaine et placez /embed
avant le chemin d'accès, comme suit:
Élément | Format d'URL normal | URL d'intégration |
---|---|---|
Look | https://instance_name.looker.com/ looks/4 |
/embed/looks/4 |
Explorer | https://instance_name.looker.com/ explore/my_model/my_explore |
/embed/explore/my_model/my_explore |
Visualisation des requêtes | https://instance_name.looker.com/ explore/my_model/my_explore?qid=1234567890abcdefghij12 Les 22 caractères alphanumériques qui suivent le paramètre qid= dans l'URL Explorer comprennent le Query.client_id . Query.client_id |
/embed/query-visualization/Query.client_id |
Tableau de bord défini par l'utilisateur | https://instance_name.looker.com/ dashboards/1 |
/embed/dashboards/1 |
Ancien tableau de bord défini par l'utilisateur |
https://instance_name.looker.com/ dashboards-legacy/1 |
/embed/dashboards-legacy/1 |
tableau de bord LookML | https://instance_name.looker.com/ dashboards/my_model::my_dashboard |
/embed/dashboards/my_model::my_dashboard |
Ancien tableau de bord LookML |
https://instance_name.looker.com/ dashboards-legacy/my_model::my_dashboard |
/embed/dashboards-legacy/my_model::my_dashboard |
Le contenu intégré reflète toujours la version de production du contenu. Les modifications effectuées en mode Développement qui affectent le contenu et qui n'ont pas été déployées en production n'apparaîtront pas dans une intégration.
Autorisations
Un ensemble d'autorisations définit ce qu'un utilisateur ou un groupe peut faire. Les autorisations peuvent être appliquées de deux manières:
- Spécifique au modèle:ce type d'autorisation ne s'applique qu'aux ensembles de modèles qui appartiennent au même rôle.
- Instance large:ce type d'autorisation s'applique à l'instance Looker dans son ensemble. Les utilisateurs intégrés qui disposent d'autorisations à l'échelle de l'instance peuvent exécuter certaines fonctions sur l'ensemble de l'instance Looker, mais ne peuvent pas accéder au contenu basé sur des modèles non inclus dans l'ensemble de modèles de leur rôle.
Déterminez les autorisations que vous souhaitez accorder à l'utilisateur. La liste suivante répertorie toutes les autorisations disponibles pour l'intégration SSO. Les autorisations qui ne figurent pas dans la liste suivante ne sont pas compatibles avec l'intégration SSO:
Permission | Dépend de | Type | Définition |
---|---|---|---|
access_data |
Aucune | Modèle spécifique | Autorise l'utilisateur à accéder aux données (requis pour afficher les looks, les tableaux de bord ou les explorations) |
see_lookml_dashboards |
access_data |
Modèle spécifique | Permet à l'utilisateur de voir les tableaux de bord LookML |
see_looks |
access_data |
Modèle spécifique | Permettre à l'utilisateur de voir les looks |
see_user_dashboards |
see_looks |
Modèle spécifique | Permet à l'utilisateur de consulter les tableaux de bord définis par l'utilisateur et de parcourir les dossiers à partir d'une intégration |
explore |
see_looks |
Modèle spécifique | Permet à l'utilisateur de voir les pages Explorer |
create_table_calculations |
explore |
Au niveau de l'instance | Nécessité de créer des calculs de tableau dans une exploration |
create_custom_fields |
explore |
Au niveau de l'instance | ADDED 22.4 Nécessité de créer des champs personnalisés dans une propriété Explorer |
can_create_forecast |
explore |
Au niveau de l'instance | ADDED 22.12 Permet aux utilisateurs de créer ou de modifier des prévisions dans des visualisations. |
save_content |
see_looks |
Au niveau de l'instance | Autoriser l'utilisateur à modifier et à modifier les styles et les tableaux de bord |
send_outgoing_webhook |
see_looks |
Modèle spécifique | Permet à l'utilisateur de planifier des tableaux de bord et d'utiliser un webhook arbitraire |
send_to_s3 |
see_looks |
Modèle spécifique | Permet à l'utilisateur de planifier des tableaux de bord et d'afficher un bucket Amazon S3 |
send_to_sftp |
see_looks |
Modèle spécifique | Permet à l'utilisateur de programmer des tableaux de bord et d'utiliser un serveur SFTP |
schedule_look_emails |
see_looks |
Modèle spécifique | Permet aux utilisateurs de planifier des tableaux de bord et des invitations à être envoyées à leur propre adresse e-mail (définie avec un attribut utilisateur nommé "e-mail") ou à une adresse e-mail qui respecte les limites définies par la liste d'autorisation de domaines. Permet à l'utilisateur disposant des autorisations create_alerts d'envoyer des notifications d'alerte à une adresse e-mail respectant les limites définies par la liste d'autorisation des domaines de messagerie. |
schedule_external_look_emails |
schedule_look_ emails |
Modèle spécifique | Permet à l'utilisateur de planifier les tableaux de bord et le style à envoyer à n'importe quel e-mail. Permet à l'utilisateur disposant des autorisations create_alerts d'envoyer des notifications d'alerte à n'importe quel domaine de messagerie. |
send_to_ integration |
see_looks |
Modèle spécifique | Permet à l'utilisateur de diffuser du contenu Looker aux services tiers intégrés à Looker via le Looker Action Hub. Cette autorisation n'est pas liée aux actions sur les données. |
create_alerts |
see_looks |
Au niveau de l'instance | Permet à l'utilisateur de créer des alertes sur les tuiles du tableau de bord afin de recevoir des notifications lorsque les conditions spécifiées sont remplies ou dépassées. Les utilisateurs peuvent modifier, dupliquer et supprimer leurs propres alertes ainsi que celles d'autres utilisateurs publiques. Si l'espace de travail Slack de l'utilisateur n'est pas connecté à l'instance Looker, il ne pourra pas créer d'alertes qui envoient des notifications à Slack. |
download_with_limit |
see_looks |
Au niveau de l'instance | Permet à l'utilisateur de télécharger les résultats d'une requête soumise à une limite |
download_without_limit |
see_looks |
Au niveau de l'instance | Permet à l'utilisateur de télécharger les résultats d'une requête sans appliquer de limite |
see_sql |
see_looks |
Modèle spécifique | Permet à l'utilisateur d'afficher le code SQL des requêtes et les erreurs SQL résultant de l'exécution de requêtes. |
clear_cache_refresh |
access_data |
Modèle spécifique | ADDED 21.14 Les utilisateurs peuvent vider le cache et actualiser les tableaux de bord intégrés, les anciens tableaux de bord, les vignettes du tableau de bord, les looks et les explorations. |
see_drill_overlay |
access_data |
Modèle spécifique | Permet à l'utilisateur d'afficher le détail sans avoir à accéder à la page "Explorer" complète. |
embed_browse_spaces |
Aucune | Au niveau de l'instance | Active le navigateur de contenu pour qu'un utilisateur puisse parcourir les dossiers à partir d'une intégration. Tout utilisateur intégré qui dispose de l'autorisation embed_browse_spaces a accès à un dossier d'intégration personnel et au dossier Partagé de votre organisation, le cas échéant. L'autorisation embed_browse_spaces est recommandée pour les utilisateurs disposant de l'autorisation save_content . Ils peuvent ainsi parcourir des dossiers lorsqu'ils sélectionnent où enregistrer du contenu. Pour voir le contenu des dossiers, l'utilisateur doit également disposer des autorisations see_looks , see_user_dashboards et see_lookml_dashboards . |
embed_save../_shared_space |
Aucune | Au niveau de l'instance |
ADDED 21.4
Permet à l'utilisateur disposant de l'autorisation save_content d'accéder au dossier Partagé de l'organisation, le cas échéant, à partir de la boîte de dialogue Enregistrer. Les utilisateurs qui disposent de l'autorisation save_content , mais pas de l'autorisation embed_save_shared_space , pourront uniquement enregistrer du contenu dans leur dossier d'intégration personnelle.L'autorisation embed_save_shared_space ne remplace pas les autorisations d'accès au contenu. Par exemple, pour que l'utilisateur puisse enregistrer des modifications dans le dossier Partagé, il doit toujours disposer du droit d'accès Gérer les droits d'accès et Modifier au niveau du dossier Partagés. De plus, l'absence de l'autorisation embed_save_shared_space n'empêche pas un utilisateur disposant de l'autorisation save_content et d'un accès Gérer, modifier au dossier Partagé d'y enregistrer le contenu s'il dispose d'un autre moyen d'accéder au dossier Partagé, par exemple en utilisant l'option Explorer à partir d'ici du tableau de bord intégré. |
Accès au modèle
Déterminez les modèles LookML auxquels l'utilisateur doit avoir accès. Il s'agit simplement d'une liste de noms de modèles.
Attributs utilisateur
Déterminez quels attributs utilisateur l'utilisateur devrait avoir, le cas échéant. Vous avez besoin du nom de l'attribut utilisateur de Looker, ainsi que de la valeur que l'utilisateur devrait avoir pour cet attribut.
Groupes
Déterminez les groupes auxquels l'utilisateur doit appartenir, le cas échéant. Vous aurez besoin des ID des groupes, et non des noms des groupes. L'ajout d'un utilisateur SSO à un groupe Looker vous permet de gérer l'accès de cet utilisateur aux dossiers Looker. Les utilisateurs de l'intégration SSO ont accès à tous les dossiers partagés avec les membres de leurs groupes Looker.
Vous pouvez également utiliser le paramètre external_group_id
pour créer un groupe externe aux groupes Looker habituels. Dans ce cas, les utilisateurs SSO intégrés avec le même external_group_id
ont accès à un dossier partagé, nommé "Group" et unique au groupe externe.
Rôles intégrés
Les paramètres permissions
et models
créent un rôle pour l'utilisateur intégré. Ce rôle apparaît sous la forme d'un "rôle intégré" sur la page Utilisateurs de la section Admin de Looker. Si les paramètres permissions
, models
et group_ids
sont tous spécifiés dans l'URL d'intégration, le rôle intégré est ajouté à tous les rôles déjà attribués aux groupes répertoriés dans le paramètre group_ids
. Cela correspond aux rôles standards, car tous les rôles dans Looker s'ajoutent les uns aux autres.
Par exemple, supposons que vous ayez un groupe Looker dans l'ID 1
et qu'il dispose déjà de l'autorisation explore
pour un modèle nommé model_one
, et que vous créez une URL d'intégration avec les paramètres suivants:
group_ids
=[1]
permissions
=["access_data","see_looks"]
models
=["model_two"]
Dans ce cas, l'utilisateur intégré héritera de la possibilité d'afficher et d'explorer les données sur model_one
. Le rôle d'intégration créé avec les paramètres précédents accordera également la possibilité d'afficher les données sur model_two
.
Créer l'URL d'intégration
Une URL d'intégration SSO se présente comme suit:
https://HOST/login/embed/Embed URL?PARAMETERS&signature=SIGNATURE
Hôte
L'hôte est l'emplacement où votre instance Looker est hébergée. Par exemple, analytics.mycompany.com
. Veillez à inclure le numéro de port si vous n'avez pas activé le transfert de port, par exemple analytics.mycompany.com:9999
.
URL d'intégration
L'URL d'intégration a été déterminée précédemment. Son format est le suivant:
/embed/looks/4
/embed/explore/my_model/my_explore
/embed/query-visualization/Query.client_id
/embed/dashboards/1
ou/embed/dashboards-legacy/1
/embed/dashboards/my_model::my_dashboard
ou/embed/dashboards-legacy/my_model::my_dashboard
Cela signifie que le format /embed//embed/
s'affichera dans votre URL finale. C'est exact.
Si vous utilisez des événements JavaScript intégrés, assurez-vous d'ajouter un embed_domain
(le domaine où l'iFrame est utilisé) à la fin de l'URL d'intégration, comme suit:
/embed/looks/4
/embed/looks/4?embed_domain=https://mywebsite.com
embed_domain
est ajouté après l'URL d'intégration et avant les paramètres. Si vous aviez des paramètres existants, tels que nonce=626
, l'ajout de embed_domain
se présente comme suit:
/embed/looks/4?nonce=626
/embed/looks/4?embed_domain=https://mywebsite.com?nonce=626
Si vous utilisez le SDK Embed, veillez à ajouter embed_domain
et inclure sdk=2
à la fin de l'URL d'intégration, comme suit:
/embed/looks/4
/embed/looks/4?embed_domain=https://mywebsite.com&sdk=2
Le paramètre sdk=2
permet à Looker d'identifier que le SDK est présent et de bénéficier des fonctionnalités supplémentaires fournies par le SDK. Le SDK ne peut pas ajouter ce paramètre, car il fait partie de l'URL d'authentification unique signée.
Paramètres
Les paramètres d'URL suivants permettent de spécifier les informations nécessaires à l'intégration SSO:
Parameter | Valeur obligatoire ? | Description | Type de données | Exemple |
---|---|---|---|---|
nonce |
Yes | Toute chaîne aléatoire de votre choix, mais qui ne peut pas être répétée dans l'heure qui suit, et qui doit comporter moins de 255 caractères. Cela évite qu'un pirate informatique resoumise l'URL d'un utilisateur légitime pour collecter des informations qu'il ne devrait pas avoir. |
Chaîne JSON | "22b1ee700ef3dc2f500fb7" |
time |
Yes | Heure actuelle sous forme d'horodatage UNIX. | Integer | 1407876784 |
session_length |
Yes | Nombre de secondes pendant lesquelles l'utilisateur doit rester connecté à Looker, entre 0 et 2 592 000 secondes (30 jours). | Integer | 86400 |
external_user_id |
Yes | Identifiant de chaque utilisateur de l'application qui intègre Looker. Looker utilise external_user_id pour différencier les utilisateurs de l'intégration SSO, de sorte que chaque utilisateur doit disposer d'un ID unique.Vous pouvez créer un external_user_id pour un utilisateur avec n'importe quelle chaîne de votre choix, tant qu'il est propre à cet utilisateur. Chaque ID est associé à un ensemble d'autorisations, d'attributs utilisateur et de modèles. Un seul navigateur ne peut accepter qu'une seule external_user_id ou session utilisateur à la fois. Vous ne pouvez pas modifier les autorisations d'un utilisateur ni ses attributs en cours de session.Pour des raisons de sécurité, assurez-vous de ne pas utiliser le même external_user_id pour différentes sessions d'intégration pour différents utilisateurs interactifs, et de ne pas utiliser le même external_user_id pour un même utilisateur avec des autorisations, des valeurs d'attributs d'utilisateur ou un accès aux modèles différents.Utiliser le même external_user_id pour plusieurs utilisateurs ou pour le même utilisateur avec plusieurs autorisations, attributs d'utilisateur, ou à des ensembles de données |
Chaîne JSON | "user-4" |
permissions |
Yes | Liste des autorisations que l'utilisateur doit disposer. Pour obtenir la liste des autorisations autorisées, consultez la section Autorisations sur cette page. |
Tableau de chaînes | [ "access_data", "see_looks" ] |
models |
Yes | Liste des noms de modèles auxquels l'utilisateur doit avoir accès. | Tableau de chaînes | [ "model_one", "model_two" ] |
group_ids |
Non | Liste des groupes Looker dont l'utilisateur doit être membre, le cas échéant. Utilisez des ID de groupe plutôt que des noms de groupe. | Tableau d'entiers | [4, 3] |
external_group_id |
Non | Identifiant unique du groupe auquel l'utilisateur appartient, si vous le souhaitez, dans l'application qui intègre Looker. Les utilisateurs autorisés à enregistrer du contenu et à partager un ID de groupe externe pourront enregistrer et modifier le contenu dans un dossier Looker partagé appelé "Groupe". |
Chaîne JSON | "Accounting" |
user_attributes |
Non | Liste des attributs utilisateur de l'utilisateur, le cas échéant. Contient une liste de noms d'attributs utilisateur suivis de la valeur de l'attribut utilisateur. Si votre modèle LookML est localisé, vous pouvez utiliser l'attribut utilisateur locale dans l'URL d'intégration pour indiquer une langue d'intégration. Par exemple, si vous incluez le paramètre user_attributes { "locale" : "fr_FR" } , l'intégration chargera le français comme langue. |
Hachage de chaînes | { "vendor_id" : "17", "company" : "xactness" } |
access_filters |
Yes | Dans Looker 3.10, ce paramètre a été supprimé, mais il est toujours obligatoire dans l'URL. Utilisez access_filters avec un espace réservé vide, par exemple access_filters={} . |
Espace réservé vide | {} |
first_name |
Non | Prénom de l'utilisateur. Si ce champ n'est pas renseigné, first_name conservera la valeur de la dernière requête ou sera "Embed" si aucun prénom n'a été défini. |
Chaîne JSON | "Alice" |
last_name |
Non | Nom de l'utilisateur. Si ce champ n'est pas renseigné, last_name conservera la valeur de la dernière requête ou sera"Embed"si aucun nom de famille n'a été défini. |
Chaîne JSON | "Jones" |
user_timezone |
Non | Si vous avez activé Fuseaux horaires spécifiques à l'utilisateur, définit la valeur de l'option Fuseau horaire du lecteur dans la liste déroulante Fuseau horaire de l'interface ou du tableau de bord intégrés. Ce paramètre ne modifie pas directement le fuseau horaire dans lequel le contenu est affiché. L'utilisateur doit sélectionner le fuseau horaire souhaité dans la liste déroulante. Consultez les valeurs valides sur la page de documentation de référence sur l'intégration du fuseau horaire de l'intégration SSO. Conseil de l'équipe Chat:si vous souhaitez que le contenu intégré corresponde par défaut au fuseau horaire du lecteur, utilisez l'une des méthodes suivantes: ?query_timezone=user_timezone à l'URL d'intégration. Exemple:/embed/dashboards/1?query_timezone=user_timezone |
Chaîne JSON ou valeur null | "US/Pacific" ou null |
force_logout_login |
Yes | Si un utilisateur normal de Looker est déjà connecté à Looker et qu'il voit un élément SSO intégré, vous pouvez choisir : 1) Il doit afficher l'élément avec ses identifiants actuels ou 2) Il doit être déconnecté et reconnecté avec les identifiants SSO. |
Booléen (true ou false) | true |
Tous les paramètres précédents sont obligatoires, mais n'importe quel paramètre dont l'attribut est défini sur "Non" dans la colonne "Valeur requise" peut être utilisé avec une valeur vide. Par exemple, vous pouvez utiliser group_ids []
ou user_attributes {}
.
Signature
Pour générer la signature, procédez comme suit :
- Rassemblez les valeurs de paramètres suivantes dans cet ordre :
- Hôte, suivi de
login/embed/
(par exemple,analytics.mycompany.com/login/embed/
) - URL d'intégration
- Nonce
- Heure actuelle
- Durée de la session
- ID d'utilisateur externe
- Autorisations
- Modèles
- ID des groupes
- ID de groupe externe
- Attributs utilisateur
- Filtres d'accès (espace réservé vide)
- Hôte, suivi de
- Mettre en forme toutes les valeurs autres que les URL d'hôte et d'intégration au format JSON
- Concaténez les valeurs avec des sauts de ligne (
\n
). - Signez HMAC la chaîne concaténée avec votre secret d'intégration Looker.
Encodage
La dernière étape consiste à encoder votre URL.
Avant d'encoder l'URL, une URL à intégrer correctement mise en forme qui utilise tous les paramètres possibles peut se présenter comme suit:
https://analytics.mycompany.com/login/embed//embed/dashboards/1?
nonce="22b1ee700ef3dc2f500fb7"&
time=1407876784&
session_length=86400&
external_user_id="user-4"&
permissions=["access_data","see_user_dashboards","see_looks"]&
models=["model_one","model_two"]&
group_ids=[4,3]&
external_group_id="Allegra K"&
user_attributes={"vendor_id":"17","company":"xactness"}&
access_filters={}&
first_name="Alice"&
last_name="Jones"&
user_timezone="US/Pacific"&
force_logout_login=true&
signature=123456789ABCDEFGHIJKL
Comme indiqué précédemment, il est correct que /embed//embed/
s'affiche dans votre URL.
Après avoir encodé l'URL, elle se présente comme suit:
https://analytics.mycompany.com/login/embed/%2embed%2Fdashboards%2F1?
nonce=%2222b1ee700ef3dc2f500fb7&%22&
time=1407876784&
session_length=86400&
external_user_id=%22user-4%22&
permissions=%5B%22access_data%22%2C%22see_user_dashboards%22%2C%22see_looks%22%5D&
models=%5B%22model_one%22%2C%22model_two%22%5D&
group_ids=%5B4%2C3%5D&
external_group_id=%22Allegra%20K%22&
user_attributes=%7B%22vendor_id%22%3A%2217%22%2C%22company%22%3A%22xactness%22%7D&
access_filters%7B%7D%26%0A
first_name=%22Alice%22&
last_name=%22Jones%22&
user_timezone=%22US%2FPacific%22&
force_logout_login=true&
signature=123456789ABCDEFGHIJKL
Utiliser le point de terminaison de l'API create_sso_embed_url
L'API Looker inclut le point de terminaison create_sso_embed_url
, qui accepte un ensemble de paramètres d'intégration SSO incluant l'URL du contenu que vous souhaitez intégrer et renvoie une URL SSO complète, encodée et chiffrée.
Pour utiliser ce point de terminaison de l'API à partir d'un serveur Web, celui-ci doit pouvoir s'authentifier dans l'API Looker avec des droits d'administrateur. Le domaine du serveur Web doit également être répertorié dans la liste d'autorisation de domaines intégrés.
Vous pouvez également utiliser l'explorateur d'API pour générer une URL SSO qui utilise ce point de terminaison. Vous pouvez installer l'explorateur d'API sur votre instance Looker à partir de Looker Marketplace ou afficher une version publique sur le portail des développeurs de Looker. Une fois générée, l'URL SSO doit être copiée exactement et ne peut être utilisée qu'une seule fois, sinon elle échouera. API Explorer est également utile pour générer une URL SSO et la comparer à une URL SSO créée manuellement à des fins de dépannage.
Pour plus d'informations sur l'API Looker, consultez la page de documentation Premiers pas avec l'API Looker.
Tester l'URL d'intégration
Pour tester votre URL finale, collez-la dans l'outil Embed URI Validator de la page Embed (Intégrer) de la section Admin de Looker. Bien que cette option ne puisse pas vous indiquer si les données et les autorisations que vous avez configurées ont été correctement configurées, elle permet de vérifier que votre authentification fonctionne correctement.