Pour effectuer des actions avec l'API Looker, vous devez d'abord vous authentifier. La procédure à suivre varie selon que vous utilisez ou non un SDK.
Authentification via un SDK
Il s'agit de la méthode recommandée pour l'authentification de l'API:
Créez des identifiants d'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 d'API pour vous.
Les identifiants de l'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 de l'API renvoient uniquement les données que l'utilisateur est autorisé à voir, et ne modifient que ce que l'utilisateur est autorisé à modifier.
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
L'authentification via un SDK est la méthode recommandée. Pour vous authentifier sans SDK:
Créez des identifiants d'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 d'API pour vous.
Les identifiants de l'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 de l'API renvoient uniquement les données que l'utilisateur est autorisé à voir, et ne modifient que ce que l'utilisateur est autorisé à modifier.
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, y compris un ID client et un code secret du client.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 de l'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
Vous pouvez utiliser le jeton d'accès OAuth 2.0 dans plusieurs requêtes API, jusqu'à ce qu'il expire ou qu'il soit invalidé en appelant le point de terminaison logout
. Les requêtes API qui utilisent un jeton d'accès arrivé à expiration échoueront avec la réponse HTTP 401 Authorization Required
.
Interaction avec l'API avec les paramètres de connexion de l'utilisateur
L'authentification à 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 des annuaires (LDAP, SAML, etc.) ne s'appliquent pas à l'authentification via l'API Looker.
Pour cette raison, supprimer les informations d'un utilisateur d'un protocole d'authentification ne supprime pas ses identifiants d'API. Les procédures de la page Supprimer des informations à caractère personnel de l'utilisateur supprime toutes les données à caractère personnel d'un utilisateur de Looker, l'empêchant ainsi de se connecter, y compris via l'API.
Gérer les identifiants pour les API
- Plusieurs ensembles d'identifiants d'API peuvent être associés à un même 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 API associés à ce compte utilisateur.
- Le code secret du client API doit rester privé. Évitez de stocker les codes secrets du client API dans du 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 à privilèges minimaux spécifiques pour les activités d'API (souvent appelées "comptes de service") et créez des identifiants d'API sur ces comptes. N'accordez que les autorisations nécessaires pour les activités d'API prévues.
Authentification HTTPS
Même si vous utilisez un SDK client pour gérer les détails de l'authentification à votre place, vous souhaitez peut-être comprendre le fonctionnement de l'authentification de l'API Looker. Pour obtenir des informations générales sur l'authentification, consultez la page Comment 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 en dehors du domaine d'une instance Looker. Pour en savoir plus sur la configuration de l'authentification CORS, consultez la page Authentification de l'API Looker à l'aide du protocole OAuth.