Configurer un hub d'actions locales pour les actions qui utilisent OAuth et le streaming

Si une instance Looker hébergée par un client ne peut pas communiquer avec Action Hub hébergé par Looker, les administrateurs Looker risquent de ne pas pouvoir activer les actions compatibles avec les résultats diffusés ou qui utilisent OAuth. En outre, les utilisateurs de Looker peuvent rencontrer des requêtes bloquées lors de l'envoi ou de la planification de données à des actions compatibles avec la diffusion de résultats, et peuvent ne pas être en mesure de configurer des actions OAuth.

Pour utiliser les intégrations Looker, Looker Action Hub et l'instance Looker doivent pouvoir communiquer entre eux. Les administrateurs d'instances hébergées par un client qui souhaitent en savoir plus sur les solutions adaptées à leur architecture d'instance peuvent consulter les recommandations décrites dans la section Remarques concernant les instances hébergées par le client de la page de documentation Partager des données via un centre d'action.

Si l'instance utilise un certificat SSL émis par une autorité de certification qui ne figure pas sur cette liste de certificats racine, il est possible que les actions OAuth et de streaming ne soient pas utilisables sur une instance Looker hébergée par le client.

Pour voir les actions configurées pour accepter les résultats diffusés ou OAuth, consultez la liste des services intégrés de Looker sur la page de documentation Paramètres d'administration – Actions.

Cette page explique comment lancer un serveur de hub d'actions locales afin d'utiliser des actions Looker compatibles avec les résultats diffusés ou utilisant Google OAuth. Vous pouvez configurer votre propre serveur de hub d'action locale en créant un conteneur ou une machine virtuelle (VM) qui héberge une copie clonée du code du dépôt Looker Action Hub, puis en suivant ces étapes, comme décrit plus en détail dans les sections suivantes:

  1. Créez une configuration de conteneur ou de machine virtuelle (VM) pour le serveur Action Hub.
  2. Configurer les identifiants Google OAuth
  3. Configurez l'écran de consentement Google OAuth.
  4. Configurez vos variables d'environnement.
  5. Générez une clé API.
  6. Lancez-vous dans le nouveau Action Hub.
  7. Ajoutez le nouveau Action Hub à votre instance Looker.

Créer une configuration de conteneur ou de machine virtuelle (VM) pour le serveur Action Hub

Votre VM ou conteneur doit respecter les exigences d'allocation et de réseau ainsi que les dépendances suivantes:

Looker recommande d'allouer 2 threads de processeur/vCPU et au moins 2 Go de mémoire pour ce conteneur ou cette VM. Si vous prévoyez une utilisation intensive de vos actions, envisagez d'augmenter la mémoire au-delà de 2 Go.

Configuration réseau requise

Votre Action Hub doit disposer d'une adresse IP statique ou d'une adresse pouvant être résolue via un système de noms de domaine (DNS) interne.

Votre réseau doit être compatible avec les exigences de communication suivantes:

  • L'instance Looker doit pouvoir communiquer avec Action Hub.
  • Google Auth doit pouvoir communiquer avec Action Hub.
  • Un navigateur connecté en interne doit pouvoir accéder à Action Hub.
  • Le Action Hub doit pouvoir atteindre les serveurs Google Drive.

Dépendances requises

Lorsque vous clonez le dépôt d'actions Looker dans la VM ou le conteneur que vous venez de créer:

  • Assurez-vous que Node 12.13 est installé.
  • Exécutez yarn install pour installer les packages nécessaires.

Une fois votre environnement configuré, vous devez créer des identifiants Google OAuth pour votre serveur Action Hub dans la console Google Cloud API.

Configurer des identifiants Google OAuth

Pour configurer des identifiants Google OAuth pour vos actions, procédez comme suit:

Créer les identifiants Google OAuth

Pour créer votre ID client Google OAuth et votre code secret du client:

  1. Accédez à la page Gérer les ressources de Google Cloud, puis cliquez sur CRÉER UN PROJET pour créer un projet.

    Pour en savoir plus sur la création d'un projet, consultez le guide Créer et gérer des projets.

  2. Une fois votre projet créé, sélectionnez-le.
  3. Dans la barre latérale gauche de la console, accédez à la page API et services > Identifiants.
  4. Cliquez sur Créer des identifiants.
  5. Dans la liste déroulante, cliquez sur ID client OAuth.
  6. Vous devrez peut-être configurer un écran de consentement OAuth. Dans ce cas, suivez les instructions de la section Configurer l'écran de consentement OAuth plus loin sur cette page, puis passez à l'étape 7.
  7. Pour le type d'application, sélectionnez Application Web.
  8. Indiquez le nom de votre application dans le champ Name (Nom).
  9. Dans la section Origines JavaScript autorisées, ajoutez l'adresse racine de l'application Looker que vous utilisez en interne.
  10. Définissez les URI de redirection autorisés pour les consoles Google Drive et Google Sheets, où ACTION_HUB_BASE_URL est l'adresse de votre Action Hub:
                https://<ACTION_HUB_BASE_URL>/actions/google_sheets/oauth_redirect
                https://<ACTION_HUB_BASE_URL>/actions/google_drive/oauth_redirect
            
  11. Cliquez sur le bouton Créer pour générer votre ID client OAuth et le code secret du client OAuth. Vous en aurez besoin par la suite.

Cette page de la console Google APIs vous permet de configurer un écran de consentement pour toutes les applications de votre projet. Il permet aux utilisateurs d'accorder l'accès à leurs données et de fournir un lien vers toute documentation légale ou sur la confidentialité. Si vous avez déjà effectué cette étape ou si vous n'avez pas besoin de configurer un écran d'autorisation, ignorez cette section et revenez à la fenêtre de votre terminal pour définir vos variables d'environnement, comme décrit dans la section Définir vos variables d'environnement plus loin sur cette page.

Pour configurer l'écran de consentement:

  1. Cliquez sur CONFIGURER L'ÉCRAN D'AUTORISATION.
  2. Indiquez s'il s'agit d'une application interne ou externe, puis cliquez sur CRÉER.
  3. Saisissez le nom de votre application dans le champ Nom de l'application.
  4. Dans le champ Adresse e-mail d'assistance utilisateur, saisissez une adresse e-mail à afficher sur l'écran de consentement OAuth pour l'assistance utilisateur.
  5. Si vous le souhaitez, pour le logo de l'application, importez un fichier image à utiliser sur l'écran de consentement OAuth.
  6. Vous pouvez également saisir la valeur Application home page link (Lien vers la page d'accueil de l'application), qui doit être hébergée sur le même domaine racine que votre Action Hub.
  7. Vous pouvez saisir un lien vers les règles de confidentialité de votre application dans le champ Lien vers les règles de confidentialité de l'application. Le lien doit être hébergé sur le même domaine racine que votre Action Hub.
  8. Vous pouvez également saisir un lien vers les conditions d'utilisation de votre application dans le champ Lien vers les conditions d'utilisation de l'application. Le lien doit être hébergé sur le même domaine racine que votre Action Hub.
  9. Dans la section Domaines autorisés, cliquez sur AJOUTER UN DOMAINE, puis saisissez le domaine racine utilisé par Action Hub.
  10. Dans le champ Coordonnées du développeur, saisissez une adresse e-mail à laquelle Google peut vous contacter.
  11. Cliquez sur SAVE AND CONTINUE (ENREGISTRER ET CONTINUER).
  12. Dans la section Champs d'application, ajoutez les types de données utilisateur auxquels votre application doit accéder. y compris l'adresse e-mail, le profil, OpenID et https://mail.google.com. Comme cette liste contient des informations sensibles sur l'utilisateur, Google doit vérifier votre écran de consentement OAuth avant de pouvoir la publier.
  13. Cliquez sur SAVE AND CONTINUE (ENREGISTRER ET CONTINUER).
  14. Vous pouvez également ajouter dans la section Utilisateurs tests les utilisateurs auxquels vous souhaitez accorder l'accès au Action Hub avant la validation.
  15. Cliquez sur SAVE AND CONTINUE (ENREGISTRER ET CONTINUER).
  16. Cliquez sur RETOUR AU TABLEAU DE BORD.
  17. Dans la barre latérale gauche, cliquez sur Credentials (Identifiants) pour revenir à la configuration de vos identifiants OAuth.

Une fois que vous avez configuré votre écran de consentement OAuth, si vous étiez en train de configurer des identifiants Google OAuth, revenez à l'étape 7 de cette procédure et terminez la configuration des identifiants. Sinon, vous pouvez revenir à la fenêtre de votre terminal pour définir vos variables d'environnement.

Définir vos variables d'environnement

Dans votre environnement de VM ou de conteneurs, définissez les variables d'environnement suivantes:

    ACTION_HUB_LABEL=<your action hub label name>
        ACTION_HUB_SECRET=<some secret>
        ACTION_HUB_BASE_URL=<your action hub base address>
            # For example https://actions.company.com
            # DO NOT INCLUDE A TRAILING SLASH
        GOOGLE_SHEET_CLIENT_ID=<OAuth client ID>
        GOOGLE_SHEET_CLIENT_SECRET=<OAuth client secret>
        GOOGLE_DRIVE_CLIENT_ID=<OAuth client ID>
        GOOGLE_DRIVE_CLIENT_SECRET=<OAuth client secret>

Vous devriez pouvoir utiliser les mêmes OAuth client ID et OAuth client secret pour Google Drive et Google Sheets. Toutefois, il est préférable de définir les deux jeux de jetons d'API Google.

Définissez également la clé de chiffrement:

    CIPHER_MASTER="<hex aes-256 key>"

Cette clé n'est pas utilisée pour le chiffrement à long terme, mais uniquement pour chiffrer state lors d'un flux OAuth. Voici un exemple de clé hexadécimale aes-256:

    C4EFBBE2C364248419776459A00F2F4017CE77E29D9E8F64940687EA440A0CC9

Générer une clé API

Pour obtenir votre clé API, exécutez la commande suivante:

y arn generate-api-key

Conservez la clé générée pour une utilisation ultérieure dans la configuration. Cette clé est générée en fonction de la ACTION_HUB_SECRET.

Démarrer votre serveur local Action Hub

Pour démarrer Action Hub, exécutez la commande suivante:

yarn start

Ajouter votre Action Hub à votre instance Looker

Pour ajouter votre Action Hub à votre instance Looker:

  1. Dans Looker, accédez à la page Actions sous Plate-forme dans le panneau Administration.
  2. Faites défiler la page jusqu'en bas, puis cliquez sur le bouton Add Action Hub (Ajouter un Action Hub).
  3. Saisissez votre ACTION_HUB_BASE_URL, puis cliquez sur Add Action Hub (Ajouter un centre d'action). Votre Action Hub devrait s'afficher sous un nouvel en-tête, avec son nom et ACTION_HUB_BASE_URL. Vos actions Google Drive et Google Sheets devraient s'afficher sous cet en-tête.
  4. Si la connexion échoue, saisissez le api-key que vous avez généré précédemment dans le champ Jeton d'autorisation, puis cliquez sur le lien Actualiser en haut de l'en-tête Action Hub.
  5. Activez vos actions Google Drive et Google Sheets, et vérifiez qu'elles sont correctement configurées dans votre Action Hub.

Étape suivante

L'étape suivante consiste à publier l'application que vous avez créée dans la console Google APIs. Pour publier, accédez à la page Écran de consentement OAuth et cliquez sur le bouton Envoyer pour validation. Veuillez noter que le processus de publication de votre demande de participation peut prendre un certain temps et nécessitera quelques étapes de validation auprès de Google.