Le dépôt du SDK Embed de Looker inclut un exemple de code et une démonstration du SDK Embed. En raison des exigences de sécurité de Looker, la démo nécessite un peu de configuration. La démo nécessite également votre secret d'intégration Looker. Le secret d'intégration donne accès à toutes vos données. Veuillez donc noter les points suivants :
- Ne partagez pas votre secret avec les personnes auxquelles vous ne souhaitez pas accorder un accès complet à votre instance.
- Ne réinitialisez pas votre secret si vous l'utilisez déjà dans un autre contexte.
- Ne configurez pas votre code pour stocker le secret dans le navigateur Web.
Étape 1 : Activez l'intégration dans votre instance Looker
Pour en savoir plus, consultez la page de documentation Intégration signée.
- Accédez à Admin > Plate-forme Embed dans votre instance Looker. Cette opération nécessite des droits d'administrateur.
- Par défaut, le serveur de démonstration s'exécute sur
http://localhost:8080
. En ajoutant cette adresse à la liste d'autorisation des domaines intégrés, vous pouvez permettre à la démo de recevoir des messages de Looker. - Activez Authentification intégrée.
- Pour afficher votre secret d'intégration, vous devez le réinitialiser. Copiez le secret dans un emplacement sécurisé.
Étape 2 : Personnalisez les paramètres de démonstration pour votre instance Looker
Indiquez votre secret d'intégration au serveur. Pour ce faire, utilisez l'une des méthodes suivantes :
- Définissez-le sur
LOOKER_EMBED_SECRET
dans votre environnement shell. - Créez un fichier nommé
.env
à la racine du répertoire du SDK. Ajoutez une ligne à ce fichier :LOOKER_EMBED_SECRET="YourLookerSecret"
Fournissez l'adresse hôte de votre instance Looker au serveur en utilisant l'une des méthodes suivantes :
- Définissez-le sur
LOOKER_WEB_URL
dans votre environnement shell. - Ajoutez
LOOKER_WEB_URL="yourinstance.looker.com:yourport"
au fichier.env
.
Modifiez le fichier ENV pour spécifier les ID du contenu que vous souhaitez intégrer.
# Looker Embed Data Configuration
# Set to - if demo needs to ignore it
# Dashboard IDs
LOOKER_DASHBOARD_ID=1
LOOKER_DASHBOARD_ID_2=2
# Look ID
LOOKER_LOOK_ID=1
# Explore ID
LOOKER_EXPLORE_ID=model::explore
# Extension ID
LOOKER_EXTENSION_ID=extension::my-great-extension
# Report ID
LOOKER_REPORT_ID=aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
# Query Visualization ID
LOOKER_QUERY_VISUALIZATION_ID=1234567890ABCDEF123456
Modifiez le fichier demo/demo_user.json
pour qu'il corresponde au type d'utilisateur que vous souhaitez intégrer.
{
// External embed user ID. IDs are not shared with regular users. Required
"external_user_id": "user1",
// First and last name. Optional
"first_name": "Pat",
"last_name": "Embed",
// Duration before session expires, in seconds. Required.
"session_length": 3600,
// Enforce logging in with these permissions. Recommended.
"force_logout_login": true,
// External embed group ID. Optional.
"external_group_id": "group1",
// Looker Group IDs. Optional
"group_ids": [],
// Permissions. See documentation for details. Required.
// Can any combination of:
// access_data
// see_looks
// see_user_dashboards
// see_lookml_dashboards
// explore
// create_table_calculations
// download_with_limit
// download_without_limit
// see_drill_overlay
// see_sql
// save_content
// embed_browse_spaces
// schedule_look_emails
// send_to_sftp
// send_to_s3
// send_outgoing_webhook
// schedule_external_look_emails
"permissions": [
"access_data",
"see_looks",
"see_user_dashboards",
"explore",
"save_content",
"embed_browse_spaces"
],
// Model access permissions. Required.
"models": ["powered_by", "thelook"],
// User attributes. Optional.
"user_attributes": { "locale": "en_US" },
}
Étape 3 : Compiler et exécuter la démo
Pour compiler et exécuter la démo, suivez les étapes correspondant au serveur approprié.
Serveur de nœud
- Exécuter
npm install
- Exécuter
npm start
Le serveur indiquera l'hôte et le port sur lesquels il s'exécute. Si elle est différente de http://localhost:8080
, vous devrez l'ajouter à votre liste d'autorisation des domaines intégrés.
Serveur Python
- Exécuter
npm install
- Exécuter
npm run python
Le serveur indiquera l'hôte et le port sur lesquels il s'exécute.
Vous devrez peut-être pip install six
pour installer la couche de compatibilité Python 2/3.