acurl verwenden

Sie sehen die Dokumentation zu Apigee Edge.
Zur Apigee X-Dokumentation
weitere Informationen

Das Dienstprogramm acurl(1) bietet einen Convenience-Wrapper um einen standardmäßigen curl-Befehl. acurl:

  • Ihre Apigee-Anmeldedaten werden gegen ein OAuth2-Zugriffstoken ausgetauscht.
  • Erkennt, wenn ein Zugriffstoken abgelaufen ist, und verwendet das Aktualisierungstoken, um ein neues Zugriffstoken abzurufen.
  • Gibt dieses Token im Header Authorization der API-Anfrage weiter.

Sie verwenden Zugriffstokens, um Edge API-Endpunkte mit OAuth2 aufzurufen, einschließlich LDAP- und SAML-Workflows.

Wenn Sie OAuth2 für den Zugriff auf die Edge API verwenden, aber nicht acurl, müssen Sie ein Zugriffstoken anfordern und es selbst zum Header der API-Anfrage hinzufügen. Eine Möglichkeit, ein Zugriffstoken abzurufen, ist das Dienstprogramm get_token.

acurl installieren

Bevor Sie acurl verwenden können, müssen Sie es installieren.

acurl-Syntax

Das Dienstprogramm acurl verwendet die folgende Syntax:

acurl API_URL -u USERNAME:PASSWORD [-m MFACODE]

oder

acurl API_URL -p PASSCODE

Wobei:

Option Erforderlich? Beschreibung
API_URL Erforderlich Der Apigee Edge API-Endpunkt. Eine vollständige Liste der Endpunkte finden Sie in der Referenz zur Apigee Edge API.
USERNAME Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Ihr Apigee-Nutzername, der normalerweise die E-Mail-Adresse ist, die mit Ihrem Apigee-Konto verknüpft ist. Wenn du get_token das erste Mal anrufst, musst du deinen Nutzernamen oder einen Sicherheitscode weitergeben. Sie müssen Ihre E-Mail-Adresse erst dann noch einmal eingeben, wenn das Zugriffs- und Aktualisierungstoken abgelaufen ist. Wenn Sie Tokens für mehr als einen Nutzer im Cache speichern, müssen Sie bei jedem Aufruf Ihren Nutzernamen angeben.
PASSWORD Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Das Passwort für Ihr Apigee-Konto. Wenn Sie das Passwort weglassen, werden Sie aufgefordert, es bei der ersten Verwendung von acurl sowie bei allen nachfolgenden Aufrufen ohne gültiges Aktualisierungstoken einzugeben. Wenn Sie Ihr Passwort nicht direkt im Befehl verwenden möchten, können Sie anstelle Ihres Passworts einen Einmalcode-Sicherheitscode verwenden.
MFACODE Optional Ein temporärer sechsstelliger MFA-Code (Multi-Faktor-Authentifizierung). Dieser Code ist erforderlich, wenn Sie -u verwenden und MFA aktiviert ist. Wenn Sie diese Option auslassen, erhalten Sie eine entsprechende Aufforderung (es sei denn, Sie befinden sich im Sicherheitscodemodus). Wenn MFA nicht aktiviert ist oder Sie einen scriptbasierten Ablauf haben, können Sie -m "" angeben, um Aufforderungen zu vermeiden.
PASSCODE Optional. Dazu ist eine Kombination aus Nutzername und Passwort oder ein Sicherheitscode erforderlich. Ein einmaliger Sicherheitscode, den Sie anstelle eines Passworts verwenden können. Ein Sicherheitscode ist bei der Authentifizierung mit einem SAML-IdP erforderlich und kann für die Authentifizierung bei einem LDAP-IdP verwendet werden.

Beispiel:

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

Zusätzlich zu den oben aufgeführten Optionen akzeptiert acurl alle curl-Optionen. Sie können beispielsweise Header übergeben, das HTTP-Verb angeben, einen Text hinzufügen und die Ausführlichkeit mit den curl-Standardoptionen aktivieren:

Option acurl meaning curl meaning
-u username username
-m MFA code max time (muss --max-time im Langformat verwenden)
-p passcode proxy tunnel (muss --proxytunnel im Langformat verwenden)
-v verbose verbose
-h help help (muss --help im Langformat verwenden)
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}'

Ein erfolgreicher acurl-Aufruf gibt Ergebnisse basierend auf dem aufgerufenen Edge API-Endpunkt zurück. Außerdem speichert acurl sowohl das Zugriffs- als auch das Aktualisierungstoken in ~/.sso-cli.

Sie können so lange Aufrufe ausführen, ohne Anmeldedaten (Passwort und optionaler MFA oder Sicherheitscode) einzugeben, bis sowohl das Zugriffstoken als auch das Aktualisierungstoken ablaufen (siehe Ablauf des Tokens).

Von curl migrieren

Wenn Sie curl verwenden, ist die Migration zum Dienstprogramm acurl unkompliziert und es ist nicht mehr notwendig, Anmeldedaten manuell zu codieren. Wenn Sie das Dienstprogramm heruntergeladen und installiert haben, können Sie

curl -u username
durch
acurl -u username
ersetzen

Das acurl-Dienstprogramm codiert Ihre Anmeldedaten und fordert Sie gelegentlich zur Eingabe zusätzlicher Anmeldedaten auf, die zum Abrufen neuer Tokenpaare erforderlich sind.

Das Dienstprogramm acurl kann auch verwendet werden, um curl für Computernutzer zu ersetzen. Weitere Informationen finden Sie unter OAuth2 für Computernutzer und Computernutzer in SAML-Zonen.

acurl zum ersten Mal aufrufen

Wenn Sie die API zum ersten Mal mit acurl aufrufen, geben Sie Ihre Apigee-Anmeldedaten an (Nutzername und Passwort Ihres Apigee-Kontos oder Sicherheitscode), damit acurl sie gegen ein Zugriffstoken und ein Aktualisierungstoken austauschen kann.

Das folgende Beispiel zeigt einen ersten Anruf mit acurl, um Details zu einer Organisation über den Endpunkt Organisation abrufen abzurufen:

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"
}

Das Dienstprogramm acurl ruft ein Zugriffstoken ab und fügt es in den Aufruf an den Edge API-Endpunkt ein:

curl -H "Authorization: Bearer oauth2_access_token" ...

Das Zugriffstoken wird lokal in ~/.sso-cli gespeichert und für nachfolgende Aufrufe verwendet.

Nach Ablauf des Zugriffstokens verwendet acurl automatisch das Aktualisierungstoken, um ein neues Zugriffstoken abzurufen. Wenn das Aktualisierungstoken abläuft, fordert acurl Sie dazu auf, Ihre Apigee-Anmeldedaten einzugeben.

Mit dieser Anfrage werden Details zur Organisation „ahamilton-eval“ abgerufen. Eine vollständige Liste der Edge API-Endpunkte finden Sie in der Apigee Edge API-Referenz.


(1) Copyright 2023 Google LLC
Das acurl-Tool wird als „Software“ im Rahmen der Vereinbarung zur Nutzung der Google Cloud Platform zur Verfügung gestellt, einschließlich der dienstspezifischen Nutzungsbedingungen unter https://cloud.google.com/terms/service-terms.