Использование get_token

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

Утилита get_token (1) позволяет вам обменять свои учетные данные Apigee на токен доступа и обновления, который вы можете использовать для доступа к Edge API. Токены также можно использовать с реализациями рабочих процессов OAuth2 SAML и LDAP.

get_token позволяет вам:

  • Получите токен доступа или обновления.
  • Вывод токенов в stdout для использования в переменных и командах.
  • Храните токены на своем диске.

Затем вы можете добавить действительный токен в свои запросы к Edge API и получить новый токен, когда истечет срок действия вашего.

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

синтаксис get_token

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

get_token -u USERNAME:PASSWORD [-m MFACODE]

или

get_token -p passcode

Где:

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

Например:

get_token
get_token -u ahamilton@apigee.com:mypassw0rd -m 424242
get_token -p mypass

Успешный вызов печатает действительный токен доступа на stdout и сохраняет токены доступа и обновления в ~/.sso-cli . Вы можете использовать эти токены до истечения срока их действия, как описано в разделе Срок действия токена .

После первого успешного вызова get_token вам не нужно указывать свои учетные данные до истечения срока действия токенов.

Вызовите get_token в первый раз

Если вы не укажете никаких параметров при первом вызове, get_token предложит вам следующее:

  • Код доступа при аутентификации с помощью поставщика удостоверений SAML (IDP).
  • В противном случае — ваше имя пользователя, пароль и временный код MFA.

В следующем примере метод get_token вызывается впервые и для аутентификации используется комбинация имени пользователя и пароля с необязательным кодом MFA:

get_token
Enter username:
ahamilton@apigee.com
Enter the password for user 'ahamilton@apigee.com':
[hidden input]
Enter the six-digit code if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:
123456

ey42bGciOiJSUzI1NiJ9.eyJqdGkiOiJhM2YwNjA5ZC1lZTIxLTQ1YjAtOGQyMi04MTQ0MTYxNjNhNTMiLCJzdWIiOiIyZDFl
  <snip>
VlLmNvbSIsInppZCI6InVhYSIsImF1ZCI6WyJlZGdlY2xpIiwic2NpbSIsIm9wZW5pZCIsInBhc3N3b3JkIiwiYXBwcm54242

Добавьте свой токен доступа в запрос

После успешного вызова get_token вы можете использовать токен доступа, передав его в заголовке Authorization ваших вызовов API Edge несколькими способами. Ты можешь:

  • Скопируйте содержимое ответа get_token и вставьте его прямо в заголовок:
    curl https://api.enterprise.apigee.com/v1/organizations/danger4242-eval \
      -H "Authorization: Bearer B42CnTIYPxr...88NI5Q"
  • Объедините команды, чтобы получить токен и добавить его в заголовок:
    token=$(get_token); curl -H "Authorization: Bearer $token" \
      https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval

    Обратите внимание, что get_token использует синтаксис подстановки команд $(...) для выполнения.

  • Вызовите get_token внутри вызова curl :
    curl -H "Authorization: Bearer $(get_token)" \
      https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval

    Обратите внимание, что get_token использует синтаксис подстановки команд $(...) для выполнения.

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

Используйте get_token с SAML и LDAP.

Утилита get_token может использоваться с SAML, LDAP или любым другим базовым IDP. get_token поддерживает использование нескольких URL-адресов единого входа и нескольких учетных записей. Одному пользователю с несколькими учетными записями будет предложено указать имя пользователя для каждого вызова get_token .

Очистите кеш get_token

Вы можете использовать следующие дополнительные флаги для очистки кэша get_token :

  • --clear-sso-cache

    Очищает каталог кэша для SSO_LOGIN_URL в $HOME /.sso-cli удаляя все кэшированные токены доступа и обновления для сервера.

  • --clear-all-sso-cache

    Очищает все каталоги в $HOME /.sso-cli , удаляя все кэшированные токены.


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