1. Avant de commencer
L'intégration signée permet de présenter des Looks, des visualisations, des explorations ou des tableaux de bord intégrés de manière privée à vos utilisateurs, sans qu'ils aient besoin d'identifiants Looker distincts. Les utilisateurs seront authentifiés via votre propre application.
L'intégration signée commence par la création d'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 lui accorder. Vous signerez ensuite l'URL avec une clé secrète fournie par Looker.
Prérequis
- Disposer d'une instance Looker en cours d'exécution
- être administrateur de votre instance Looker ;
Points abordés
- Configurer votre instance Looker pour autoriser l'intégration signée
- Générer une clé secrète
- Informations à collecter pour les inclure dans votre URL d'intégration signée
- Générer une URL d'intégration signée
- Ajouter l'élément intégré à votre application
2. Hébergement Looker approprié
Certains navigateurs utilisent par défaut une règle de sécurité qui bloque les cookies tiers, ce qui empêche l'intégration signée de fonctionner. Pour cet atelier de programmation, le moyen le plus simple de résoudre ce problème consiste à autoriser temporairement les cookies tiers dans votre navigateur :
Dans une configuration de production, vous devez choisir l'une des stratégies suivantes pour gérer les cookies tiers :
- Placez votre instance Looker et les applications dans lesquelles vous utiliserez l'intégration signée sur le même domaine. Par exemple, votre instance Looker peut se trouver à l'adresse
looker.mycompany.com
, tandis que votre site d'intégration signé se trouve à l'adresseanalytics.mycompany.com
. - Activez la fonctionnalité Intégration sans cookie, qui permet aux navigateurs qui bloquent les cookies tiers de s'authentifier sur différents domaines. Cette option nécessite une configuration supplémentaire, comme indiqué sur la page de documentation Looker Intégration sans cookie.
3. Générer une clé secrète
Pour créer une URL d'intégration signée, vous aurez besoin d'une clé secrète de Looker. Pour ce faire :
- Accédez à la page Intégrer dans la section Admin de Looker.
- Sélectionnez Activé dans le menu déroulant Intégrer l'authentification SSO, puis sélectionnez Mettre à jour.
- Sélectionnez le bouton Réinitialiser le secret dans la section Intégrer le secret pour générer votre secret d'intégration.
Copiez ce secret dans un emplacement sécurisé, car vous ne pourrez pas le récupérer dans Looker sans le réinitialiser. Si vous réinitialisez la clé, les intégrations qui utilisaient l'ancienne clé ne fonctionneront plus.
4. Recueillir les entrées de l'URL d'intégration signée
Pour créer une URL d'intégration signée, vous devez rassembler les informations suivantes.
URL des données à afficher
Récupérez l'URL de la présentation, de l'exploration, de la visualisation de requête ou du tableau de bord que vous souhaitez intégrer. Supprimez ensuite le domaine et placez /embed
avant le chemin d'accès.
Par exemple, https://instance_name.cloud.looker.com/looks/4
deviendra /embed/looks/4
.
ou https://instance_name.cloud.looker.com/explore/my_model/my_explore
deviendrait /embed/explore/my_model/my_explore
.
Autorisations que vous souhaitez accorder à l'utilisateur intégré
Choisissez les autorisations que vous souhaitez accorder à l'utilisateur intégré. Vous trouverez les autorisations pertinentes pour l'intégration signée sur la page de documentation Intégration signée de Looker.
Pour les besoins de cet atelier de programmation, les autorisations suivantes constituent probablement une liste viable minimale :
access_data
see_lookml_dashboards
see_looks
see_user_dashboards
explore
Si vous souhaitez tester la capacité des utilisateurs intégrés à parcourir et enregistrer du contenu, vous pouvez également envisager les points suivants :
save_content
embed_browse_spaces
embed_save_shared_space
Accès au modèle que vous souhaitez accorder à l'utilisateur intégré
Choisissez les modèles Looker auxquels l'utilisateur intégré doit avoir accès. L'utilisateur doit au moins avoir accès au modèle qui sous-tend la présentation, l'exploration, la visualisation de requête ou le tableau de bord que vous avez choisi d'afficher.
Attributs utilisateur que vous souhaitez que l'utilisateur intégré possède
Choisissez les attributs utilisateur Looker que vous souhaitez attribuer à l'utilisateur intégré, le cas échéant. Pour cet atelier de programmation, il n'est peut-être pas nécessaire d'ajouter d'attributs utilisateur.
Groupes auxquels l'utilisateur intégré doit appartenir
Déterminez les ID de groupe (et non les noms de groupe) auxquels l'utilisateur doit appartenir, le cas échéant. Il n'est pas nécessaire d'ajouter des groupes pour cet atelier de programmation.
ID utilisateur et groupe de votre entreprise
Les URL d'intégration signées Looker vous obligent à fournir un identifiant unique pour chaque utilisateur de votre application qui consulte un élément Looker intégré. Looker appelle cela l'ID utilisateur externe, qui peut être n'importe quelle chaîne.
Si nécessaire, vous pouvez également fournir un "ID de groupe externe". Il s'agit d'un identifiant unique pour le groupe auquel appartient l'utilisateur dans votre application.
5. Choisir votre script de génération d'URL
Pour créer une URL d'intégration signée appropriée, vous devrez utiliser du code afin d'encoder correctement l'URL avec votre clé secrète et de générer d'autres éléments liés à la sécurité.
Heureusement, plusieurs exemples de scripts dans différents langages de programmation sont disponibles dans le dépôt GitHub looker_embed_sso_examples de Looker. Choisissez le script qui vous convient et copiez-le dans votre environnement de développement.
6. Renseigner les données et exécuter le script
Le script de génération d'URL que vous avez choisi comporte des variables ou un objet dans lequel vous pouvez placer toutes les informations que vous avez collectées précédemment, ainsi que des exemples de la façon dont ces informations doivent être présentées :
Nom du script | Nombre approximatif de lignes pour votre entrée |
| 15 - 28 |
| 18 - 35 |
| 193 - 202 |
| 87 - 104 |
| 103 - 111 |
| 88 - 101 |
| 14 - 27 |
Après avoir remplacé les exemples par les données que vous avez collectées, exécutez le script pour générer votre URL d'intégration signée. Notez l'URL pour l'étape suivante.
7. Tester l'URL
Pour tester votre URL finale, collez-la dans le validateur d'URI d'intégration sur la page Intégrer de la section Admin de Looker. Bien que cette fonctionnalité ne puisse pas déterminer si les données et les autorisations que vous envisagez ont été configurées correctement, elle peut valider le bon fonctionnement de votre authentification.
8. Intégrer l'URL dans un iFrame
Enfin, intégrez votre Look, votre exploration, votre visualisation de requête ou votre tableau de bord dans votre application en ajoutant l'URL que vous avez générée à l'attribut src
d'un iframe
. Placez cet iframe dans votre application ou votre environnement de test.
Si vous le souhaitez, vous pouvez interagir avec l'iframe à l'aide de JavaScript en utilisant les événements JavaScript intégrés de Looker.
9. Informations supplémentaires
La fonctionnalité d'intégration signée de Looker doit être configurée avec soin pour s'assurer que les utilisateurs intégrés sont limités à la visibilité et aux autorisations souhaitées pour les données. Veuillez tenir compte des points suivants :
- La page de documentation Intégration signée de Looker fournit des informations détaillées sur la façon de générer une URL d'intégration signée, ainsi que toutes les options de configuration disponibles.
- La page de documentation Bonnes pratiques de sécurité pour l'analyse intégrée de Looker fournit des conseils pour configurer l'intégration signée de manière sécurisée.
- L'intégration signée est souvent utilisée par les clients Looker pour présenter des données à leurs propres clients, tout en exigeant que les clients de différentes entreprises ou groupes ne se connaissent pas. Dans ce cas, nous vous recommandons vivement de configurer Looker en tant que système fermé, parfois appelé "installation multilocataire".
- La fonctionnalité d'intégration signée est disponible via l'API Looker.