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

Si une instance Looker hébergée par le client ne peut pas communiquer avec le hub d'actions hébergé par Looker, les administrateurs Looker peuvent ne pas pouvoir activer les actions qui acceptent les résultats en streaming ou qui utilisent OAuth. De plus, les utilisateurs de Looker peuvent être confrontés à des requêtes mises en attente lors de l'envoi ou de la planification de données vers des actions compatibles avec les résultats diffusés en continu, et ne pas pouvoir configurer d'actions OAuth.

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

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 un client.

Pour afficher les actions configurées pour prendre en charge la diffusion de résultats ou OAuth, consultez la liste des services intégrés de Looker sur la page de documentation Paramètres administrateur - Actions.

Cette page explique comment démarrer un serveur Action Hub local pour utiliser des actions Looker qui acceptent les résultats diffusés ou qui utilisent Google OAuth. Vous pouvez configurer votre propre serveur de hub d'actions local 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 procédant comme suit, comme décrit plus en détail dans les sections suivantes :

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

Créer une configuration de conteneur ou de machine virtuelle (VM) pour le serveur du hub d'actions

Votre VM ou conteneur doit répondre aux exigences et dépendances d'allocation et de réseau suivantes :

Looker recommande d'allouer 2 threads de CPU/vCPU et au moins 2 Go de mémoire à 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 prendre en charge les exigences de communication suivantes:

  • L'instance Looker doit pouvoir communiquer avec le hub d'actions.
  • Google Auth doit pouvoir communiquer avec le hub d'actions.
  • Un navigateur connecté en interne doit pouvoir accéder au hub d'actions.
  • Le hub d'actions doit pouvoir accéder aux serveurs Google Drive.

Dépendances requises

Lorsque vous clonez le dépôt d'actions Looker dans votre VM ou conteneur nouvellement créé :

  • 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 API Google Cloud.

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 et votre secret client Google OAuth :

  1. Accédez à la page Gérer les ressources de Google Cloud, puis cliquez sur CREATE PROJECT (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 le nouveau projet créé, sélectionnez-le.
  3. Dans la barre latérale gauche de la console, accédez à la section API et Services > Identifiants.
  4. Cliquez sur Créer des identifiants.
  5. Dans le menu déroulant, cliquez sur ID client OAuth.
  6. Vous devrez peut-être configurer un écran de consentement OAuth. Si tel est le cas, suivez les instructions de la section Configurer l'écran de consentement OAuth plus loin sur cette page, puis passez à l'étape 7.
  7. Dans le champ 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 plus tard.

Cette page de la console d'API Google vous permet de configurer un écran de consentement pour toutes les applications de votre projet. Il permet aux utilisateurs d'autoriser l'accès à leurs données et de leur fournir un lien vers toute documentation juridique ou sur la confidentialité. Si vous avez déjà effectué cette étape ou si vous n'avez pas besoin de configurer d'écran de consentement, 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 d'autorisation :

  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. Pour le Logo de l'application, vous pouvez également importer un fichier image à utiliser sur l'écran de consentement OAuth.
  6. Si vous le souhaitez, saisissez le lien vers la page d'accueil de l'application. Il doit être hébergé sur le même domaine racine que votre Action Hub.
  7. Vous pouvez également 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 votre hub d'actions.
  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. Cela inclut l'adresse e-mail, le profil, OpenID et https://mail.google.com. Comme cette liste comprend des informations utilisateur sensibles, Google doit vérifier votre écran de consentement OAuth avant de pouvoir la publier.
  13. Cliquez sur SAVE AND CONTINUE (ENREGISTRER ET CONTINUER).
  14. Si vous le souhaitez, dans la section Utilisateurs tests, ajoutez les utilisateurs auxquels vous souhaitez accorder l'accès au hub d'actions 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 de gauche, cliquez sur Credentials (Identifiants) pour revenir à la configuration de vos identifiants OAuth.

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

Définir vos variables d'environnement

Dans votre environnement de VM ou de conteneur, 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 ensembles 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. il est utilisé 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 l'utiliser plus tard lors de la configuration. Cette clé est générée en fonction de ACTION_HUB_SECRET.

Démarrer le serveur de votre hub d'actions local

Pour démarrer votre hub d'actions, exécutez la commande suivante :

yarn start

Ajouter votre Action Hub à votre instance Looker

Pour ajouter votre hub d'actions à 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 hub d'action).
  3. Saisissez votre ACTION_HUB_BASE_URL, puis cliquez sur Ajouter un hub d'actions. Votre Action Hub devrait s'afficher sous un nouvel en-tête nommé "ACTION_HUB_BASE_URL". Vos actions Google Drive et Google Sheets devraient apparaître 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 de votre hub d'actions.
  5. Activez vos actions Google Drive et Google Sheets, puis vérifiez qu'elles sont correctement configurées dans votre hub d'actions.

Étape suivante

La prochaine étape consiste à publier l'application que vous avez créée dans la console Google APIs. Pour publier, accédez à la page Écran d'autorisation OAuth, puis cliquez sur le bouton Soumettre pour validation. Veuillez noter que la publication de votre application peut prendre un certain temps et nécessiter des étapes de validation avec Google.