acurl verwenden

Sie lesen gerade die Dokumentation zu Apigee Edge.
Zur Dokumentation zuApigee X wechseln.
info

Das acurl(1) Dienstprogramm bietet einen praktischen Wrapper für einen Standard curl Befehl. acurl:

  • Tauscht Ihre Apigee-Anmeldedaten gegen ein OAuth2-Zugriffstoken aus.
  • Erkennt, wenn ein Zugriffstoken abgelaufen ist, und verwendet das Aktualisierungstoken, um ein neues Zugriffstoken zu erhalten.
  • Übergibt dieses Token im Authorization-Header der API-Anfrage.

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

Wenn Sie OAuth2 verwenden, um auf die Edge API zuzugreifen, aber acurl nicht verwenden, müssen Sie ein Zugriffstoken abrufen und es selbst dem Header der API-Anfrage hinzufügen. Eine Möglichkeit, ein Zugriffstoken zu erhalten, ist das 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 Apigee Edge API-Referenz.
USERNAME Optional. Eine Kombination aus Nutzername und Passwort oder ein Passcode ist erforderlich. Ihr Apigee-Nutzername, in der Regel die E-Mail-Adresse, die mit Ihrem Apigee-Konto verknüpft ist. Sie müssen Ihren Nutzernamen oder einen Passcode beim ersten Aufruf von get_token übergeben. Sie müssen Ihre E-Mail Adresse erst wieder übergeben, wenn das Zugriffstoken und das Aktualisierungstoken abgelaufen sind. Wenn Sie Tokens für mehrere Nutzer im Cache speichern, müssen Sie Ihren Nutzernamen in jedem Aufruf angeben.
PASSWORD Optional. Eine Kombination aus Nutzername und Passwort oder ein Passcode ist erforderlich. Das Passwort für Ihr Apigee-Konto. Wenn Sie das Passwort weglassen, werden Sie beim ersten Aufruf von acurl und bei allen nachfolgenden Aufrufen ohne gültiges Aktualisierungstoken aufgefordert, es einzugeben. Wenn Sie Ihr Passwort nicht direkt im Befehl verwenden möchten, können Sie stattdessen einen Einmal-Sicherheitscode anstelle Ihres Passworts verwenden.
MFACODE Optional Ein temporärer sechsstelliger Multi-Faktor Authentifizierungs-(MFA) Code. Dieser Code ist erforderlich, wenn Sie -u verwenden und MFA aktiviert haben. Bei Auslassung erfolgt eine Eingabeaufforderung (außer im Sicherheitscode-Modus). Wenn Sie MFA nicht aktiviert haben oder einen skriptbasierten Ablauf verwenden, können Sie -m "" angeben, um Eingabeaufforderungen zu vermeiden.
PASSCODE Optional. Eine Kombination aus Nutzername und Passwort oder ein Passcode ist erforderlich. Ein einmaliger Sicherheitscode, den Sie anstelle eines Passworts verwenden können. Ein Passcode ist erforderlich, wenn Sie sich mit einem SAML-IdP authentifizieren, und kann verwendet werden um sich mit einem LDAP-IdP zu authentifizieren.

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 gezeigten Optionen akzeptiert acurl alle curl Optionen. Sie können beispielsweise Header übergeben, das HTTP-Verb angeben, einen Textkörper hinzufügen und die Ausführlichkeit mit Standardcurl Optionen aktivieren:

Option acurl meaning curl meaning
-u username username
-m MFA code max time (muss in der Langform --max-time verwendet werden)
-p passcode proxy tunnel (muss in der Langform --proxytunnel verwendet werden)
-v verbose verbose
-h help help (muss in der Langform --help verwendet werden)
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 zurück, die auf dem aufgerufenen Edge API-Endpunkt basieren, den Sie aufgerufen haben. Außerdem speichert acurl sowohl das Zugriffstoken als auch das Aktualisierungstoken in ~/.sso-cli.

Sie können weiterhin Aufrufe durchführen, ohne Anmeldedaten (Passwort und optional MFA oder Passcode) eingeben zu müssen) bis sowohl das Zugriffstoken als auch das Aktualisierungstoken ablaufen, wie unter Ablauf von Tokens beschrieben.

Von curl migrieren

Wenn Sie curl verwenden, ist die Migration zum Dienstprogramm acurl einfach und Sie müssen Anmeldedaten nicht mehr manuell codieren. Nachdem Sie das Dienstprogramm heruntergeladen und installiert haben, können Sie ersetzen:

curl -u username
durch:
acurl -u username

Das Dienstprogramm acurl codiert Ihre Anmeldedaten und fordert Sie gelegentlich auf, die zusätzlichen Anmeldedaten einzugeben, die zum Abrufen neuer Tokenpaare erforderlich sind.

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

acurl zum ersten Mal aufrufen

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

Das folgende Beispiel zeigt einen ersten Aufruf mit acurl, um Details zu einer Organisation über den Endpunkt „Organisation abrufen“ zu erhalten:

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 acurl Dienstprogramm 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 zu erhalten. Wenn das Aktualisierungstoken abläuft, fordert acurl Sie auf, Ihre Apigee-Anmeldedaten einzugeben.

Diese Anfrage ruft Details zur Organisation „ahamilton-eval“ ab. 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.