Ce document explique comment s'authentifier auprès de Dataform de manière automatisée. La façon dont vous vous authentifiez auprès de Dataform dépend de l'interface que vous utilisez pour accéder à l'API et de l'environnement dans lequel votre code s'exécute.
Pour en savoir plus sur l' Google Cloud authentification, consultez la section Présentation de l'authentification.
Accès API
Dataform est compatible avec l'accès automatisé. Vous pouvez accéder à l'API des manières suivantes :
Bibliothèques clientes
Les bibliothèques clientes Dataform offrent une compatibilité de langage de haut niveau avec l'authentification programmatique auprès de Dataform. Pour authentifier les appels aux API Google Cloud , les bibliothèques clientes sont compatibles avec les identifiants par défaut de l'application (ADC). Les bibliothèques recherchent des identifiants dans un ensemble d'emplacements définis et les utilisent pour authentifier les requêtes adressées à l'API. Le service ADC vous permet de mettre des identifiants à disposition de votre application dans divers environnements, tels que l'environnement de développement local ou l'environnement de production, sans avoir à modifier le code de votre application.
REST
Vous pouvez vous authentifier auprès de l'API Dataform à l'aide de vos identifiants gcloud CLI ou en utilisant les identifiants par défaut de l'application. Pour en savoir plus sur l'authentification pour les requêtes REST, consultez la page S'authentifier pour utiliser REST. Pour en savoir plus sur les types d'identifiants, consultez la section Identifiants gcloud CLI et identifiants ADC.
Configurer l'authentification pour Dataform
La façon dont vous configurez l'authentification dépend de l'environnement dans lequel votre code s'exécute.
Les options de configuration d'authentification suivantes sont les plus couramment utilisées. Pour accéder à davantage d'options et pour en savoir plus sur l'authentification, consultez la section Méthodes d'authentification.
Pour un environnement de développement local
Vous pouvez configurer les identifiants pour un environnement de développement local comme suit :
- Identifiants utilisateur pour les bibliothèques clientes ou les outils tiers
- Identifiants utilisateur pour les requêtes REST depuis la ligne de commande
- Emprunter l'identité d'un compte de service
Bibliothèques clientes ou outils tiers
Configurez les identifiants par défaut de l'application dans votre environnement local :
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
Un écran de connexion s'affiche. Une fois que vous êtes connecté, vos identifiants sont stockés dans le fichier d'identifiants local utilisé par ADC.
Pour en savoir plus sur l'utilisation des ADC dans un environnement local, consultez la section Configurer l'ADC pour un environnement de développement local.
Requêtes REST à partir de la ligne de commande
Lorsque vous effectuez une requête REST à partir de la ligne de commande, vous pouvez utiliser vos identifiants gcloud CLI en incluant gcloud auth print-access-token
dans la commande qui envoie la requête.
L'exemple suivant répertorie les comptes de service du projet spécifié. Vous pouvez utiliser le même modèle pour n'importe quelle requête REST.
Avant d'utiliser les données de requête ci-dessous, effectuez les remplacements suivants :
- PROJECT_ID: ID de votre Google Cloud projet.
Pour envoyer votre requête, développez l'une des options suivantes :
Pour en savoir plus sur l'authentification à l'aide de REST et gRPC, consultez la page S'authentifier pour utiliser REST. Pour en savoir plus sur la différence entre vos identifiants ADC locaux et vos identifiants gcloud CLI, consultez la section Configuration de l'authentification gcloud CLI et configuration ADC.
Emprunter l'identité d'un compte de service
Dans la plupart des cas, vous pouvez vous authentifier à partir d'un environnement de développement local à l'aide de vos identifiants utilisateur. Si cela n'est pas possible ou si vous devez tester les autorisations attribuées à un compte de service, vous pouvez emprunter l'identité d'un compte de service. Vous devez disposer de l'autorisation iam.serviceAccounts.getAccessToken
, qui est incluse dans le rôle IAM Créateur de jetons du compte de service (roles/iam.serviceAccountTokenCreator
).
Vous pouvez configurer gcloud CLI afin qu'elle utilise l'emprunt d'identité d'un compte de service à l'aide de la commande gcloud config set
:
gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL
Pour certains langages, vous pouvez emprunter l'identité d'un compte de service pour créer un fichier ADC local destiné aux bibliothèques clientes. Cette approche n'est compatible qu'avec les bibliothèques clientes Go, Java, Node.js et Python. Elle n'est pas compatible avec les autres langages.
Pour configurer un fichier ADC local avec l'emprunt d'identité d'un compte de service, utilisez l'option --impersonate-service-account
avec la commande gcloud auth application-default login
:
gcloud auth application-default login --impersonate-service-account=SERVICE_ACCT_EMAIL
Pour plus d'informations sur l'emprunt de l'identité d'un compte de service, consultez la page Emprunter l'identité d'un compte de service.
Contrôle des accès pour Dataform
Une fois que vous êtes authentifié auprès de Dataform, vous devez être autorisé à accéder aux ressources Google Cloud . Dataform utilise Identity and Access Management (IAM) pour l'autorisation.
Pour en savoir plus sur les rôles pour Dataform, consultez la page Contrôle des accès avec IAM. Pour en savoir plus sur IAM et les autorisations, consultez la section Présentation d'IAM.
Étape suivante
- Découvrez les méthodes d'authentificationGoogle Cloud .
- Consultez la liste des cas d'utilisation de l'authentification.