Korzystanie z Acurl

Wyświetlasz dokumentację Apigee Edge.
Przejdź do dokumentacji Apigee X.
info

Narzędzie acurl(1) to wygodna otoczka standardowego polecenia curl. acurl:

  • wymienia dane uwierzytelniające Apigee na token dostępu OAuth2;
  • wykrywa, kiedy token dostępu wygasł, i używa tokena odświeżania, aby uzyskać nowy token dostępu;
  • przekazuje ten token w nagłówku Authorization żądania do interfejsu API.

Tokeny dostępu służą do wywoływania punktów końcowych Edge API za pomocą protokołu OAuth2, w tym przepływów pracy LDAP i SAML.

Jeśli używasz protokołu OAuth2 do uzyskiwania dostępu do Edge API, ale nie używasz acurl, musisz samodzielnie uzyskać token dostępu i dodać go do nagłówka żądania do interfejsu API. Jednym ze sposobów uzyskania tokena dostępu jest użycie narzędzia get_token.

Instalowanie acurl

Zanim zaczniesz używać acurl, musisz je zainstalować.

Składnia acurl

Narzędzie acurl używa tej składni:

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

lub

acurl API_URL -p PASSCODE

Gdzie:

Opcja Wymagany? Opis
API_URL Wymagany Punkt końcowy Apigee Edge API. Pełną listę punktów końcowych znajdziesz w dokumentacji Apigee Edge API.
USERNAME Opcjonalnie. Wymagane jest połączenie nazwy użytkownika i hasła lub kod dostępu. Nazwa użytkownika Apigee, która jest zwykle adresem e-mail powiązanym z kontem Apigee. Przy pierwszym wywołaniu get_token musisz podać nazwę użytkownika lub kod dostępu. Nie musisz ponownie podawać adresu e-mail dopóki nie wygasną tokeny dostępu i odświeżania. Jeśli buforujesz tokeny dla więcej niż 1 użytkownika, musisz określić nazwę użytkownika w każdym wywołaniu.
PASSWORD Opcjonalnie. Wymagane jest połączenie nazwy użytkownika i hasła lub kod dostępu. Hasło do konta Apigee. Jeśli pominiesz hasło, przy pierwszym użyciu acurl i przy każdym kolejnym wywołaniu bez prawidłowego tokena odświeżania pojawi się prośba o jego podanie. Jeśli nie chcesz używać hasła bezpośrednio w poleceniu, możesz zamiast niego użyć a jednorazowego kodu dostępu.
MFACODE Opcjonalnie Tymczasowy 6-cyfrowy uwierzytelniania dwuskładnikowego (MFA) kod. Ten kod jest wymagany, jeśli używasz -u i masz włączone uwierzytelnianie dwuskładnikowe. Jeśli go pominiesz, pojawi się prośba o jego podanie (chyba że używasz kodu dostępu). Jeśli nie masz włączonego uwierzytelniania dwuskładnikowego lub masz skryptowy przepływ, możesz określić -m "" , aby uniknąć wyświetlania próśb.
PASSCODE Opcjonalnie. Wymagane jest połączenie nazwy użytkownika i hasła lub kod dostępu. Jednorazowy kod dostępu, którego możesz użyć zamiast hasła. Kod dostępu jest wymagany podczas uwierzytelniania za pomocą dostawcy tożsamości SAML i może być używany do uwierzytelniania za pomocą dostawcy tożsamości LDAP.

Na przykład:

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

Oprócz opcji pokazanych powyżej acurl akceptuje wszystkie curl opcje. Możesz na przykład przekazywać nagłówki, określać czasownik HTTP, dodawać treść i włączać szczegółowość za pomocą standardowych curl opcji:

Opcja 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}'

Prawidłowe wywołanie acurl zwraca wyniki na podstawie wywołanego punktu końcowego Edge API. Ponadto acurl przechowuje tokeny dostępu i odświeżania w ~/.sso-cli.

Możesz nadal wykonywać wywołania bez wpisywania danych uwierzytelniających (hasła i opcjonalnego uwierzytelniania dwuskładnikowego lub kodu dostępu) dopóki nie wygasną token dostępu i token odświeżania, zgodnie z opisem w sekcji Wygasanie tokena.

Migracja z curl

Jeśli używasz curl, migracja do narzędzia acurl jest prosta i eliminuje konieczność ręcznego kodowania danych uwierzytelniających. Po pobraniu i zainstalowaniu narzędzia możesz zastąpić:

curl -u username
tym:
acurl -u username

Narzędzie acurl zakoduje Twoje dane uwierzytelniające i od czasu do czasu poprosi Cię o dodatkowe dane uwierzytelniające wymagane do uzyskania nowych par tokenów.

Narzędzie acurl może też zastąpić curl w przypadku użytkowników maszyn. Więcej informacji znajdziesz w artykułach OAuth2 dla użytkowników maszyn i Użytkownicy maszyn w strefach SAML.

Pierwsze wywołanie acurl

Gdy po raz pierwszy wywołasz interfejs API za pomocą acurl, podaj dane uwierzytelniające Apigee (nazwę użytkownika i hasło do konta Apigee lub kod dostępu), aby acurl mogło wymienić je na token dostępu i token odświeżania.

Poniższy przykład pokazuje pierwsze wywołanie acurl w celu uzyskania szczegółów organizacji za pomocą punktu końcowego 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"
}

Narzędzie acurl pobiera token dostępu i wstawia go do wywołania punktu końcowego Edge API:

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

Token dostępu jest przechowywany lokalnie w ~/.sso-cli i używany do kolejnych wywołań.

Gdy token dostępu wygaśnie, acurl automatycznie użyje tokena odświeżania, aby uzyskać nowy token dostępu. Gdy token odświeżania wygaśnie, acurl poprosi Cię o podanie danych uwierzytelniających Apigee.

To żądanie pobiera szczegóły organizacji „ahamilton-eval”. Pełną listę punktów końcowych Edge API znajdziesz w dokumentacji Apigee Edge API.


(1) Copyright 2023 Google LLC
Narzędzie acurl jest udostępniane jako "Oprogramowanie" zgodnie z umową regulującą korzystanie przez Ciebie z Google Cloud Platform, w tym ze Szczegółowymi warunkami korzystania z usługi dostępnymi na stronie https://cloud.google.com/terms/service-terms.