Authentification pour l'API Looker

Pour utiliser l'API Looker, vous devez d'abord vous y authentifier. 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 des API :

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

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

  2. Les identifiants API que vous avez générés incluent un ID client et un secret client. Vous devrez les fournir au SDK. Pour ce faire, consultez la documentation du SDK.

Le SDK se chargera 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

La méthode recommandée consiste à utiliser l'authentification API avec un SDK. Pour s'authentifier sans SDK:

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

    Les identifiants de l'API sont toujours associés à un compte utilisateur Looker. Les requêtes d'API s'exécutent "en tant que" l'utilisateur associé aux identifiants de l'API. Les appels à l'API ne renvoient que 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 devrez fournir les identifiants d'API que vous avez générés à l'étape 1, qui incluent un ID et un code secret du client.

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

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

Le jeton d'accès OAuth 2.0 peut être utilisé pour plusieurs requêtes d'API, jusqu'à son expiration ou son invalidité en appelant le point de terminaison logout. Les requêtes API qui utilisent un jeton d'accès arrivé à expiration échouent et renvoient une réponse HTTP 401 Authorization Required.

Interaction avec l'API avec 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.

C'est pourquoi la suppression des informations d'un utilisateur dans un protocole d'authentification ne supprime pas ses identifiants API. En suivant les procédures de la page de documentation Supprimer les informations personnelles sur l'utilisateur, vous supprimez de Looker toutes les données à caractère personnel d'un utilisateur, ce qui l'empêche de se connecter, y compris via l'API.

Gérer les identifiants de l'API

  • Plusieurs ensembles d'identifiants d'API peuvent être liés à un même compte utilisateur Looker.
  • Vous pouvez créer et supprimer des identifiants d'API sans affecter l'état du compte utilisateur.
  • La suppression d'un compte utilisateur Looker invalide tous les identifiants d'API associés au compte utilisateur.
  • Le code secret du client API doit rester privé. Évitez de stocker des secrets client d'API dans le code source ou dans d'autres endroits accessibles à de nombreuses personnes.
  • En production, évitez d'utiliser des identifiants d'API associés à des comptes administrateur Looker. Créer des comptes utilisateur dotés de privilèges minimaux spécifiquement pour les activités d'API (souvent appelées « comptes de service ») et créer des identifiants d'API sur ces comptes. N'accordez que les autorisations nécessaires aux activités d'API prévues.

Authentification HTTPS

Même si vous utilisez un SDK client pour gérer les détails d'authentification à votre place, vous vous demandez peut-être comment fonctionne l'authentification de l'API Looker. Pour en savoir plus sur l'authentification, consultez How to Authenticate to the Looker API (Authentifier à l'API Looker) sur GitHub.

Authentification via OAuth

Looker peut utiliser le protocole de partage des ressources entre origines multiples (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 de l'API Looker à l'aide d'OAuth.