Vous consultez la documentation Apigee Edge.
Accédez à la
documentation Apigee X. info
L'utilitaire get_token(1) vous permet d'échanger vos identifiants Apigee contre un jeton d'accès
et un jeton d'actualisation que vous pouvez utiliser pour accéder aux API Edge. Les jetons peuvent également être utilisés avec les implémentations SAML
et LDAP des workflows OAuth2.
get_token vous permet d'effectuer les opérations suivantes :
- Obtenir un jeton d'accès ou d'actualisation.
- Imprimer des jetons dans
stdoutpour les utiliser dans des variables et des commandes. - Stocker des jetons sur votre disque.
Vous pouvez ensuite ajouter un jeton valide à vos requêtes adressées à l'API Edge et obtenir un nouveau jeton lorsque le vôtre expire.
Prérequis : Vous devez l'installer avant de pouvoir utiliser get_token.
Syntaxe get_token
L'utilitaire get_token utilise la syntaxe suivante :
get_token -u USERNAME:PASSWORD [-m MFACODE]
ou
get_token -p passcode
Où :
| Élément | Obligatoire ? | Description |
|---|---|---|
| USERNAME | Facultatif. Une combinaison nom d'utilisateur/mot de passe ou un code secret est obligatoire. | Votre nom d'utilisateur Apigee, qui correspond généralement à l'adresse e-mail associée à votre compte Apigee.
Vous devez transmettre votre nom d'utilisateur ou un code secret la première fois que vous appelez get_token.
Vous n'aurez plus besoin de transmettre votre adresse e-mail
tant que les jetons d'accès et d'actualisation n'auront pas expiré. Si vous mettez en cache des jetons
pour plusieurs utilisateurs, vous devez spécifier votre nom d'utilisateur dans chaque appel. |
| PASSWORD | Facultatif. Une combinaison nom d'utilisateur/mot de passe ou un code secret est obligatoire. | Le mot de passe de votre compte Apigee. Si vous omettez le mot de passe, vous serez invité à
le saisir la première fois que vous utiliserez get_token et lors de tout appel ultérieur sans jeton d'actualisation valide. Si vous ne souhaitez pas utiliser votre mot de passe directement dans la commande, vous pouvez utiliser un
code secret à usage unique à la place. |
| MFACODE | Facultatif | Code d'authentification multifacteur (MFA) temporaire à six chiffres. Ce code est obligatoire si vous utilisez -u et que la MFA est activée.
Vous serez invité à le saisir si vous l'omettez (sauf en mode code secret). Si la MFA n'est pas activée,
ou si vous disposez d'un flux scripté, vous pouvez spécifier -m "" pour éviter les invites. |
| PASSCODE | Facultatif. Une combinaison nom d'utilisateur/mot de passe ou un code secret est obligatoire. | Code secret à usage unique que vous pouvez utiliser à la place d'un mot de passe. Un code secret est obligatoire lors de l'authentification auprès d'un IdP SAML et peut être utilisé pour l'authentification auprès d'un IdP LDAP. |
Exemple :
get_tokenget_token -u ahamilton@apigee.com:mypassw0rd -m 424242get_token -p mypass
Un appel réussi imprime un jeton d'accès valide dans stdout et stocke les jetons d'accès et d'actualisation dans ~/.sso-cli. Vous pouvez utiliser ces jetons jusqu'à leur
expiration, comme décrit dans Expiration des jetons.
Après votre premier appel réussi à get_token, vous n'avez plus besoin d'inclure vos
identifiants tant que les jetons n'ont pas expiré.
Appeler get_token pour la première fois
Si vous ne spécifiez aucune option lors de votre premier appel, get_token vous demandera
les éléments suivants :
- Un code secret, si vous vous authentifiez auprès d'un fournisseur d'identité (IdP) SAML.
- Votre nom d'utilisateur, votre mot de passe et un code MFA temporaire dans le cas contraire.
L'exemple suivant appelle get_token pour la première fois et utilise une
combinaison nom d'utilisateur/mot de passe avec un code MFA facultatif pour l'authentification :
get_token Enter username:ahamilton@apigee.comEnter the password for user 'ahamilton@apigee.com':[hidden input]Enter the six-digit code if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:123456ey42bGciOiJSUzI1NiJ9.eyJqdGkiOiJhM2YwNjA5ZC1lZTIxLTQ1YjAtOGQyMi04MTQ0MTYxNjNhNTMiLCJzdWIiOiIyZDFl <snip> VlLmNvbSIsInppZCI6InVhYSIsImF1ZCI6WyJlZGdlY2xpIiwic2NpbSIsIm9wZW5pZCIsInBhc3N3b3JkIiwiYXBwcm54242
Ajouter votre jeton d'accès à une requête
Une fois que vous avez appelé get_token, vous pouvez utiliser le jeton d'accès en le transmettant de différentes manières dans l'en-tête Authorization de vos appels à l'API Edge.
Vous pouvez :
- Copier le contenu de la réponse
get_tokenet l'insérer directement dans votre en-tête :curl https://api.enterprise.apigee.com/v1/organizations/danger4242-eval \ -H "Authorization: Bearer B42CnTIYPxr...88NI5Q"
- Combiner des commandes pour obtenir le jeton et l'ajouter à l'en-tête :
token=$(get_token); curl -H "Authorization: Bearer $token" \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
Notez que
get_tokenutilise la syntaxe de substitution de commande$(...)pour qu'elle soit exécutée. - Appeler
get_tokendans l'appelcurl:curl -H "Authorization: Bearer $(get_token)" \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
Notez que
get_tokenutilise la syntaxe de substitution de commande$(...)pour qu'elle soit exécutée.
Ces exemples de requêtes permettent d'obtenir des informations sur l'organisation "ahamilton-eval". Pour obtenir la liste complète des points de terminaison de l'API Edge, consultez la documentation de référence de l'API Apigee Edge.
Utiliser get_token avec SAML et LDAP
L'utilitaire get_token peut être utilisé avec SAML, LDAP ou tout autre IdP sous-jacent.
get_token est compatible avec l'utilisation de plusieurs URL de connexion SSO et de plusieurs comptes.
Un même utilisateur disposant de plusieurs comptes sera invité à spécifier le nom d'utilisateur
pour chaque get_token appel.
Vider le cache get_token
Vous pouvez utiliser les indicateurs facultatifs suivants pour vider le cache get_token :
--clear-sso-cache
Efface le répertoire de cache pour SSO_LOGIN_URL sous
$HOME/.sso-clien supprimant tous les jetons d'accès et d'actualisation mis en cache pour le serveur.--clear-all-sso-cache
Efface tous les répertoires sous
$HOME/.sso-cli, en supprimant tous les jetons mis en cache.
(1) Copyright 2023 Google LLC
L'outil get_token est mis à disposition en tant que "Logiciel" en vertu du
contrat régissant votre utilisation de Google Cloud Platform, y compris les Conditions
spécifiques au service disponibles sur https://cloud.google.com/terms/service-terms.