Вы просматриваете документацию Apigee Edge .
Перейдите в документацию Apigee X.info
Утилита get_token (1) позволяет обменять ваши учетные данные Apigee на токен доступа и обновления, которые вы можете использовать для доступа к API Edge. Токены также можно использовать с реализациями рабочих процессов 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 | Необязательный | Временный шестизначный код многофакторной аутентификации (МФА) . Этот код необходим, если вы используете -u и у вас включена МФА. Если он пропущен, вам будет предложено ввести его (за исключением режима ввода пароля). Если у вас не включена МФА или у вас запущен скриптовый процесс, вы можете указать -m "" чтобы избежать запросов. |
| PASSCODE | Необязательно. Требуется комбинация имени пользователя и пароля или код доступа. | Одноразовый код доступа, который можно использовать вместо пароля. Код доступа необходим при аутентификации с SAML IDP и может использоваться для аутентификации с LDAP IDP. |
Например:
get_tokenget_token -u ahamilton@apigee.com:mypassw0rd -m 424242get_token -p mypass
В случае успешного вызова в stdout вывод выводится действительный токен доступа, а токен доступа и токен обновления сохраняются в файле ~/.sso-cli . Вы можете использовать эти токены до истечения срока их действия, как описано в разделе «Срок действия токена» .
После первого успешного вызова функции get_token вам не нужно указывать свои учетные данные до истечения срока действия токенов.
Вызов функции get_token при первом обращении
Если вы не укажете никаких параметров при первом вызове, get_token запросит у вас следующие данные:
- Пароль, если аутентификация выполняется с помощью поставщика идентификации SAML (IDP).
- В противном случае — ваше имя пользователя, пароль и временный код многофакторной аутентификации.
В следующем примере функция get_token вызывается впервые и использует комбинацию имени пользователя и пароля с необязательным кодом многофакторной аутентификации:
get_token Enter username:ahamilton@apigee.comEnter the password for user 'ahamilton@apigee.com':[hidden input]Enter the six-digit code if 'ahamilton@apigee.com' is MFA-enabled or press ENTER:123456ey42bGciOiJSUzI1NiJ9.eyJqdGkiOiJhM2YwNjA5ZC1lZTIxLTQ1YjAtOGQyMi04MTQ0MTYxNjNhNTMiLCJzdWIiOiIyZDFl <snip> VlLmNvbSIsInppZCI6InVhYSIsImF1ZCI6WyJlZGdlY2xpIiwic2NpbSIsIm9wZW5pZCIsInBhc3N3b3JkIiwiYXBwcm54242
Добавьте свой токен доступа к запросу.
После успешного вызова функции get_token вы можете использовать токен доступа, передав его в заголовке Authorization ваших вызовов к Edge API несколькими способами. Вы можете:
- Скопируйте содержимое ответа
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-адресов для входа в систему SSO и нескольких учетных записей. Одному пользователю с несколькими учетными записями будет предложено указать имя пользователя для каждого вызова get_token .
Очистите кэш get_token
Для очистки кэша get_token можно использовать следующие необязательные флаги:
--clear-sso-cache
Очищает кэш для SSO_LOGIN_URL в каталоге
$HOME /.sso-cli, удаляя все кэшированные токены доступа и обновления для сервера.--clear-all-sso-cache
Очищает все каталоги в папке
$HOME /.sso-cli, удаляя все кэшированные токены.
(1) Авторское право 2023 Google LLC
Инструмент get_token предоставляется в качестве «программного обеспечения» в соответствии с соглашением, регулирующим использование вами платформы Google Cloud Platform, включая Условия предоставления услуг, доступные по адресу https://cloud.google.com/terms/service-terms .