Authentification de l'API Looker

Pour faire quoi que ce soit avec l'API Looker, vous devez d'abord vous authentifier auprès de celle-ci. La procédure à suivre varie selon que vous utilisez ou non un SDK.

Authentification avec un SDK

Il s'agit de la méthode recommandée pour l'authentification de l'API:

  1. Créez des identifiants pour l'API sur la page Utilisateurs dans la section "Administration" de votre instance Looker. Si vous n'êtes pas administrateur Looker, demandez à votre administrateur Looker de créer les identifiants de l'API pour vous.

    Les identifiants d'API sont toujours liés à un compte utilisateur Looker. Les requêtes API s'exécutent "en tant que" l'utilisateur associé aux identifiants de l'API. Les appels à l'API renvoient uniquement les données que l'utilisateur est autorisé à voir et ne modifient que ce qu'il est autorisé à modifier.

  2. Les identifiants d'API que vous avez générés incluent un ID client et un code secret du client. Vous devrez les fournir au SDK. Pour savoir comment procéder, consultez la documentation du SDK.

Le SDK se charge ensuite d'obtenir les jetons d'accès nécessaires et de les insérer dans toutes les requêtes API ultérieures.

Authentification sans SDK

Nous vous recommandons d'utiliser l'authentification d'API avec un SDK. Pour vous authentifier sans SDK:

  1. Créez des identifiants pour l'API sur la page Utilisateurs dans la section "Administration" de votre instance Looker. Si vous n'êtes pas administrateur Looker, demandez à votre administrateur Looker de créer les identifiants de l'API pour vous.

    Les identifiants d'API sont toujours liés à un compte utilisateur Looker. Les requêtes API s'exécutent "en tant que" l'utilisateur associé aux identifiants de l'API. Les appels à l'API renvoient uniquement les données que l'utilisateur est autorisé à voir et ne modifient que ce qu'il est autorisé à modifier.

  2. Obtenez un jeton d'accès OAuth 2.0 à court terme en appelant le point de terminaison login de l'API. Vous devez fournir les identifiants d'API que vous avez générés à l'étape 1, y compris un ID client et un code secret du client.

  3. Placez ce jeton d'accès dans l'en-tête d'autorisation HTTP des requêtes API Looker. Voici un exemple de requête d'API Looker comportant un en-tête d'autorisation:

    GET /api/3.0/user HTTP/1.1
    Host: test.looker.com
    Date: Wed, 19 Oct 2016 12:34:56 -0700
    Authorization: token mt6Xc8jJC9GfJzKBQ5SqFZTZRVX8KY6k49TMPS8F
    

Le jeton d'accès OAuth 2.0 peut être utilisé pour plusieurs requêtes API, jusqu'à ce qu'il expire ou soit invalidé en appelant le point de terminaison logout. Les requêtes API qui utilisent un jeton d'accès expiré échoueront avec une réponse HTTP 401 Authorization Required.

Interaction entre l'API et les paramètres de connexion des utilisateurs

L'authentification de l'API Looker est complètement indépendante de la connexion des utilisateurs à Looker. Les protocoles d'authentification des utilisateurs tels que les codes secrets à usage unique (OTP, 2FA) et l'authentification par annuaire (LDAP, SAML, etc.) ne s'appliquent pas à l'authentification de l'API Looker.

Par conséquent, supprimer les informations d'un utilisateur d'un protocole d'authentification utilisateur ne supprime pas ses identifiants d'API. Les procédures décrites sur la page de documentation Supprimer les informations personnelles sur l'utilisateur supprime toutes les données à caractère personnel d'un utilisateur de Looker, ce qui l'empêche de se connecter, y compris via l'API.

Gérer les identifiants pour les API

  • Plusieurs ensembles d'identifiants d'API peuvent être liés à un seul compte utilisateur Looker.
  • Les identifiants d'API peuvent être créés et supprimés sans affecter l'état du compte utilisateur.
  • La suppression d'un compte utilisateur Looker invalide tous les identifiants d'API qui lui sont associés.
  • Le code secret du client API doit rester privé. Évitez de stocker les codes secrets du client API dans le code source ou à d'autres emplacements visibles par de nombreuses personnes.
  • En production, évitez d'utiliser des identifiants d'API liés aux comptes administrateur Looker. Créez des comptes utilisateur avec des privilèges minimaux spécifiquement pour les activités d'API (souvent appelés "comptes de service") et créez des identifiants d'API sur ces comptes. N'accordez que les autorisations nécessaires pour les activités prévues de l'API.

Authentification HTTPS

Même si vous utilisez un SDK client pour gérer les informations d'authentification à votre place, vous vous demandez peut-être comment fonctionne l'authentification de l'API Looker. Pour obtenir des informations générales sur l'authentification, consultez S'authentifier auprès de l'API Looker sur GitHub.

Authentification via OAuth

Looker peut utiliser le protocole Cross-Origin Resource Sharing (CORS) pour permettre aux applications Web d'appeler l'API Looker depuis l'extérieur du domaine d'une instance Looker. Pour en savoir plus sur la configuration de l'authentification CORS, consultez la page de documentation Authentification via l'API Looker à l'aide d'OAuth.