Vous consultez la documentation Apigee Edge.
Accédez à la
documentation**Apigee X**. info
L'utilitaire acurl(1) fournit un wrapper pratique autour d'une commande curl
standard. acurl:
- Échange vos identifiants Apigee contre un jeton d'accès OAuth2.
- Détecte l'expiration d'un jeton d'accès et utilise le jeton d'actualisation pour obtenir un nouveau jeton d'accès.
- Transmet ce jeton dans l'en-tête
Authorizationde la requête API.
Vous utilisez des jetons d'accès pour appeler des points de terminaison de l'API Edge avec OAuth2, y compris les workflows LDAP et SAML.
Si vous utilisez OAuth2 pour accéder à l'API Edge, mais que vous n'utilisez pas acurl, vous devez obtenir un jeton d'accès et l'ajouter vous-même à l'en-tête de la requête API. Vous pouvez obtenir un
jeton d'accès à l'aide de l'get_token.
Installer acurl
Avant de pouvoir utiliser acurl, vous devez
l'installer.
Syntaxe acurl
L'utilitaire acurl utilise la syntaxe suivante :
acurl API_URL -u USERNAME:PASSWORD [-m MFACODE]
ou
acurl API_URL -p PASSCODE
Où :
| Option | Obligatoire ? | Description |
|---|---|---|
| API_URL | Obligatoire | Point de terminaison de l'API Apigee Edge. Pour obtenir la liste complète des points de terminaison, consultez la documentation de référence de l'API Apigee Edge. |
| USERNAME | Facultatif. Une combinaison de nom d'utilisateur et de 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 de nom d'utilisateur et de mot de passe ou un code secret est obligatoire. | 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 acurl 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 de nom d'utilisateur et de 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 fournisseur d'identité SAML et peut être utilisé pour l'authentification auprès d'un fournisseur d'identité LDAP. |
Exemple :
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-evalacurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.comacurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com -p 424242acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rdacurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd -m 123456
En plus des options présentées ci-dessus, acurl accepte toutes les curl
options. Par exemple, vous pouvez transmettre des en-têtes, spécifier le verbe HTTP, ajouter un corps et activer le mode verbeux à l'aide des options curl standards :
| Option | acurl meaning |
curl meaning |
|---|---|---|
| -u | username |
username |
| -m | MFA code |
max time (must use long form --max-time) |
| -p | passcode |
proxy tunnel (must use long form --proxytunnel) |
| -v | verbose |
verbose |
| -h | help |
help (must use long form --help) |
acurl -v -X POST -H 'Content-Type: application/json' \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval/apiproducts/myproduct/attributes/attr \ -u ahamilton@apigee.com -d '{"value":42}'
Un appel acurl réussi renvoie des résultats en fonction du point de terminaison de l'API Edge que vous
avez appelé. De plus, acurl stocke les jetons d'accès et d'actualisation
dans ~/.sso-cli.
Vous pouvez continuer à effectuer des appels sans saisir d'identifiants (mot de passe et MFA facultative, ou code secret) jusqu'à l'expiration du jeton d'accès et du jeton d'actualisation, comme décrit dans la section Expiration des jetons.
Migrer depuis curl
Si vous utilisez curl, la migration vers l'utilitaire acurl est simple et
élimine le besoin d'encoder manuellement les identifiants. Une fois que vous avez téléchargé et installé l'utilitaire, vous pouvez
remplacer :
curl -u usernameacurl -u usernameL'acurl utilitaire encodera vos
identifiants et vous demandera parfois les identifiants supplémentaires requis pour obtenir de nouvelles paires de jetons.
L'utilitaire acurl peut également être utilisé pour remplacer curl pour les utilisateurs automates. Pour en savoir plus,
consultez les sections OAuth2 pour les utilisateurs automates et Utilisateurs automates dans les zones SAML.
Appeler acurl pour la première fois
La première fois que vous appelez l'API avec acurl, vous fournissez vos identifiants Apigee (le
nom d'utilisateur et le mot de passe de votre compte Apigee, ou un code secret) afin que
acurl puisse les échanger contre un jeton d'accès et un jeton d'actualisation.
L'exemple suivant montre un appel initial avec acurl pour obtenir des informations sur une
organisation à l'aide du point de terminaison Get
organization :
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval \ -u ahamilton@apigee.com Enter the password for user 'ahamilton@apigee.com':[hidden input]Enter the six-digit code (no spaces) if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:1a2b3c{ "createdAt" : 1491854501264, "createdBy" : "noreply_iops@apigee.com", "displayName" : "ahamilton", "environments" : [ "prod", "test" ], "lastModifiedAt" : 1491854501264, "lastModifiedBy" : "noreply_iops@apigee.com", "name" : "ahamilton", "properties" : { "property" : [ { "name" : "features.isSmbOrganization", "value" : "false" }, { "name" : "features.isCpsEnabled", "value" : "true" } ] }, "type" : "trial" }
L'utilitaire acurl obtient un jeton d'accès et l'insère dans l'appel au
point de terminaison de l'API Edge :
curl -H "Authorization: Bearer oauth2_access_token" ...
Le jeton d'accès est stocké localement dans ~/.sso-cli et utilisé pour
les appels suivants.
Une fois le jeton d'accès expiré, acurl utilise automatiquement le jeton d'actualisation pour obtenir
un nouveau jeton d'accès. Lorsque le jeton d'actualisation expire, acurl vous demande
vos identifiants Apigee.
Cette requête obtient 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.
(1) Copyright 2023 Google LLC
L'outil acurl 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.