Utiliser acurl

<ph type="x-smartling-placeholder"></ph> Vous consultez la documentation Apigee Edge.
Accédez à la page Documentation sur Apigee X.
En savoir plus

L'utilitaire acurl(1) fournit un wrapper pratique pour un 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 en obtenir un nouveau.
  • Transmet ce jeton dans l'en-tête Authorization de la requête API.

Vous utilisez des jetons d'accès pour appeler les points de terminaison de l'API Edge avec OAuth2, y compris Workflows LDAP et SAML.

Si vous utilisez OAuth2 pour accéder à l'API Edge, mais 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. L'une des façons d'obtenir via l'utilitaire 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 Le 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. Veuillez saisir un nom d'utilisateur et un mot de passe, ou un code secret. Votre nom d'utilisateur Apigee, qui est 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 pas besoin de transmettre votre adresse e-mail jusqu'à ce que les jetons d'accès et d'actualisation aient expiré. Si vous mettez en cache des jetons pour plusieurs utilisateurs, vous devez spécifier votre nom d'utilisateur à chaque appel.
PASSWORD Facultatif. Veuillez saisir un nom d'utilisateur et un mot de passe, ou un code secret. Mot de passe de votre compte Apigee. Si vous omettez le mot de passe, vous serez invité à saisissez-le la première fois que vous utilisez acurl et lors de tous les appels suivants sans valeur d'actualisation. Si vous ne souhaitez pas utiliser votre mot de passe directement dans la commande, vous pouvez utiliser un un code secret à usage unique au lieu de votre mot de passe.
MFACODE Optional Un algorithme multifacteur temporaire à six chiffres (MFA). Ce code est obligatoire si vous utilisez -u et que la MFA est activée. Un message s'affichera 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. Veuillez saisir un nom d'utilisateur et un mot de passe, ou un code secret. Un code secret à usage unique que vous pouvez utiliser à la place mot de passe. Un code secret est requis lors de l'authentification avec un IdP SAML et peut être utilisé pour s'authentifier auprès d'un IdP LDAP.

Exemple :

acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com -p 424242
acurl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u ahamilton@apigee.com:mypassw0rd
acurl 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 tous les curl options. Par exemple, vous pouvez transmettre des en-têtes, spécifier le verbe HTTP, ajouter un corps et activer Niveau de détail à l'aide des options curl standards:

Option acurl meaning curl meaning
-u username username
-m MFA code max time (doit utiliser le format long --max-time)
-p passcode proxy tunnel (doit utiliser le format long --proxytunnel)
-v verbose verbose
-h help help (doit utiliser le format long --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 les résultats en fonction du point de terminaison de l'API Edge que vous appelé. De plus, acurl stocke les jetons d'accès et d'actualisation. dans ~/.sso-cli.

Vous pouvez continuer à passer des appels sans saisir d'identifiants (mot de passe et MFA (facultatif) ou code secret). jusqu'à ce que le jeton d'accès et le le jeton d'actualisation expire, comme décrit dans la section Expiration du jeton.

Migrer depuis curl

Si vous utilisez curl, la migration vers l'utilitaire acurl est simple et plus besoin d'encoder manuellement les identifiants. Après avoir téléchargé et installé l'utilitaire, vous pouvez remplacer:

curl -u username
par:
acurl -u username

L'utilitaire acurl encode votre identifiants et vous demander occasionnellement les identifiants supplémentaires requis pour obtenir de nouvelles paires de jetons.

L'utilitaire acurl peut également servir à remplacer curl pour les utilisateurs machine. Pour plus d'informations, Voir OAuth2 pour les utilisateurs machine et Utilisateurs de machines 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 (les nom d'utilisateur et mot de passe de votre compte Apigee ou un code secret) de sorte que acurl peut 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 détails sur une organisation à l'aide de la commande Get organisation:

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 de la fonction 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 y invite pour vos identifiants Apigee.

Cette requête permet d'obtenir des informations sur le projet "ahamilton-eval" organisation. Pour obtenir la liste complète 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 désormais disponible en tant que "Logiciel". sous la section contrat régissant votre utilisation de Google Cloud Platform, y compris du Service Les conditions d'utilisation spécifiques sont disponibles à l'adresse https://cloud.google.com/terms/service-terms.