Использование акурла

Вы просматриваете документацию Apigee Edge .
Перейдите к документации Apigee X.
информация

Утилита acurl (1) представляет собой удобную оболочку стандартной команды curl . acurl :

  • Обменивает ваши учетные данные Apigee на токен доступа OAuth2.
  • Обнаруживает, когда срок действия токена доступа истек, и использует токен обновления для получения нового токена доступа.
  • Передаёт этот токен в заголовке Authorization запроса API.

Вы используете токены доступа для вызова конечных точек Edge API с помощью OAuth2 , включая рабочие процессы LDAP и SAML .

Если вы используете OAuth2 для доступа к Edge API, но не используете acurl , вам необходимо получить токен доступа и добавить его в заголовок запроса API самостоятельно. Один из способов получить токен доступа — использовать утилиту get_token .

Установить акерл

Прежде чем вы сможете использовать acurl , вы должны его установить .

синтаксис acurl

Утилита acurl использует следующий синтаксис:

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

или

acurl API_URL -p PASSCODE

Где:

Вариант Необходимый? Описание
API_URL Необходимый Конечная точка API Apigee Edge. Полный список конечных точек см. в справочнике по API Apigee Edge .
USERNAME Необязательный. Требуется комбинация имени пользователя и пароля или пароль. Ваше имя пользователя Apigee, которое обычно представляет собой адрес электронной почты, связанный с вашей учетной записью Apigee. Вы должны передать свое имя пользователя или пароль при первом вызове get_token . Вам не нужно будет снова вводить свой адрес электронной почты, пока не истечет срок действия токенов доступа и обновления. Если вы кэшируете токены для более чем одного пользователя, вы должны указывать свое имя пользователя при каждом вызове.
PASSWORD Необязательный. Требуется комбинация имени пользователя и пароля или пароль. Пароль для вашей учетной записи Apigee. Если вы опустите пароль, вам будет предложено ввести его при первом использовании acurl и при любых последующих вызовах без действительного токена обновления. Если вы не хотите использовать свой пароль непосредственно в команде, вместо пароля можно использовать одноразовый код-пароль.
MFACODE Необязательный Временный шестизначный код многофакторной аутентификации (MFA) . Этот код необходим, если вы используете -u и включен MFA. Вам будет предложено, если оно опущено (кроме режима пароля). Если у вас не включен MFA или у вас есть скриптовый поток, вы можете указать -m "" чтобы избежать запросов.
PASSCODE Необязательный. Требуется комбинация имени пользователя и пароля или пароль. Одноразовый пароль, который можно использовать вместо пароля. Код доступа требуется при аутентификации с помощью IDP SAML и может использоваться для аутентификации с IDP LDAP.

Например:

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

В дополнение к параметрам, показанным выше, acurl принимает все параметры curl . Например, вы можете передавать заголовки, указывать HTTP-команду, добавлять тело и включать многословие, используя стандартные параметры curl :

Вариант acurl meaning curl meaning
username username
MFA code max time (необходимо использовать полную форму --max-time )
-п passcode proxy tunnel (необходимо использовать длинную форму --proxytunnel )
-v verbose verbose
-час help help (необходимо использовать длинную форму --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}'

Успешный вызов acurl возвращает результаты в зависимости от того, какую конечную точку Edge API вы вызвали. Кроме того, acurl хранит токены доступа и обновления в ~/.sso-cli .

Вы можете продолжать совершать вызовы без ввода учетных данных (пароля и дополнительного MFA или пароля) до тех пор, пока не истечет срок действия токена доступа и токена обновления, как описано в разделе Срок действия токена .

Миграция с Curl

Если вы используете curl , переход на утилиту acurl прост и устраняет необходимость вручную кодировать учетные данные. После того, как вы скачали и установили утилиту, вы можете заменить:

curl -u username
с:
acurl -u username

Утилита acurl зашифрует ваши учетные данные и время от времени запрашивает дополнительные учетные данные, необходимые для получения новых пар токенов.

Утилита acurl также может использоваться для замены curl для пользователей компьютеров. Дополнительные сведения см. в разделах OAuth2 для пользователей компьютеров и Пользователи компьютеров в зонах SAML .

Вызов acurl в первый раз

При первом вызове API с помощью acurl вы предоставляете свои учетные данные Apigee (имя пользователя и пароль вашей учетной записи Apigee или код доступа), чтобы acurl мог обменять их на токен доступа и токен обновления.

В следующем примере показан первоначальный вызов с помощью acurl для получения сведений об организации с помощью конечной точки 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"
}

Утилита acurl получает токен доступа и вставляет его в вызов конечной точки Edge API:

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

Токен доступа хранится локально в ~/.sso-cli и используется для последующих вызовов.

По истечении срока действия токена доступа acurl автоматически использует токен обновления для получения нового токена доступа. Когда срок действия токена обновления истечет, acurl запросит у вас учетные данные Apigee.

Этот запрос позволяет получить подробную информацию об организации «ахамильтон-эвал». Полный список конечных точек Edge API см. в справочнике по Apigee Edge API .


(1) Авторские права принадлежат Google LLC, 2023 г.
Инструмент acurl доступен как «Программное обеспечение» в соответствии с соглашением, регулирующим использование вами Google Cloud Platform, включая Условия для конкретных услуг, доступные по адресу https://cloud.google.com/terms/service-terms .