Pour effectuer des opérations avec l'API Looker, vous devez d'abord vous authentifier auprès d'elle. La procédure à suivre varie selon que vous utilisez un SDK ou non.
S'authentifier avec un SDK
Voici la méthode d'authentification recommandée pour les API :
Créez des identifiants 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 API pour vous.
Les identifiants d'API sont toujours associés à un compte utilisateur Looker. Les requêtes API s'exécutent "en tant que" l'utilisateur associé aux identifiants API. Les appels à l'API ne renverront que les données que l'utilisateur est autorisé à voir et ne modifieront que ce qu'il est autorisé à modifier.
Les identifiants 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 ce faire, suivez les instructions de 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 d'API ultérieures.
Authentification sans SDK
L'authentification de l'API avec un SDK est la méthode recommandée. Pour vous authentifier sans SDK :
Créez des identifiants 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 API pour vous.
Les identifiants d'API sont toujours associés à un compte utilisateur Looker. Les requêtes API s'exécutent "en tant que" l'utilisateur associé aux identifiants API. Les appels à l'API ne renverront que les données que l'utilisateur est autorisé à voir et ne modifieront que ce qu'il 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 API que vous avez générés à l'étape 1, qui incluent 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 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 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 et renverront une réponse HTTP 401 Authorization Required
.
Interaction de l'API avec les paramètres de connexion des utilisateurs
L'authentification de l'API Looker est totalement indépendante de la connexion des utilisateurs Looker. Les protocoles d'authentification des utilisateurs tels que les codes secrets à usage unique (OTP, A2F) et l'authentification par annuaire (LDAP, SAML, etc.) ne s'appliquent pas à l'authentification de l'API Looker.
Par conséquent, la suppression des informations d'un utilisateur d'un protocole d'authentification n'entraîne pas la suppression de ses identifiants API. Les procédures décrites sur la page de documentation Supprimer les informations personnelles des utilisateurs permettent de supprimer toutes les données personnelles d'un utilisateur de Looker, ce qui l'empêche de se connecter, y compris via l'API.
Gérer les identifiants d'API
- Plusieurs ensembles d'identifiants API peuvent être associés à un même compte utilisateur Looker.
- Vous pouvez créer et supprimer des identifiants API sans affecter l'état du compte utilisateur.
- La suppression d'un compte utilisateur Looker invalide tous les identifiants API associés à ce compte.
- Le code secret du client API doit rester privé. Évitez de stocker les secrets du client API dans le code source ou dans d'autres endroits visibles par de nombreuses personnes.
- En production, évitez d'utiliser des identifiants API liés à des comptes administrateur Looker. Créez des comptes utilisateur à 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 d'API prévues.
S'authentifier avec 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 savoir comment configurer l'authentification CORS, consultez la page de documentation Authentification de l'API Looker à l'aide d'OAuth.