현재 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 | Optional | 임시 6자리 다단계 인증 (MFA) 코드. -u 를 사용하고 MFA를 사용 설정한 경우 이 코드가 필요합니다.
생략하면 메시지가 표시됩니다 (비밀번호 모드가 아닌 경우). MFA를 사용 설정하지 않았거나 스크립트화된 흐름이 있는 경우 메시지가 표시되지 않도록 -m "" 를 지정할 수 있습니다. |
PASSCODE | 선택사항. 사용자 이름과 비밀번호 조합 또는 비밀번호가 필요합니다. | 비밀번호 대신 사용할 수 있는 일회용 비밀번호 비밀번호는 SAML IDP로 인증할 때 필요하며 LDAP IDP로 인증하는 데 사용할 수 있습니다. |
예를 들면 다음과 같습니다.
get_tokenget_token -u ahamilton@apigee.com:mypassw0rd -m 424242
get_token -p mypass
호출이 성공하면 유효한 액세스 토큰이 stdout
에 출력되고 액세스 토큰과 갱신 토큰이 모두 ~/.sso-cli
에 저장됩니다. 토큰 만료에 설명된 대로 이러한 토큰은 만료될 때까지 사용할 수 있습니다.
get_token
를 처음 호출한 후에는 토큰이 만료될 때까지 사용자 인증 정보를 포함하지 않아도 됩니다.
get_token 처음 호출
첫 번째 호출에서 옵션을 지정하지 않으면 get_token
에서 다음을 묻는 메시지를 표시합니다.
- 비밀번호(SAML ID 공급업체(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
를 성공적으로 호출한 후에는 다양한 방법으로 Edge API 호출의 Authorization
헤더에 액세스 토큰을 전달하여 사용할 수 있습니다.
방법은 다음과 같습니다.
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
가 실행되도록 명령어 대체 구문$(...)
을 사용합니다. curl
호출 내에서get_token
를 호출합니다.curl -H "Authorization: Bearer $(get_token)" \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval
get_token
가 실행되도록 명령어 대체 구문$(...)
을 사용합니다.
이 샘플 요청은 'ahamilton-eval' 조직에 대한 세부정보를 가져옵니다. Edge API 엔드포인트의 전체 목록은 Apigee Edge API 참조를 확인하세요.
SAML 및 LDAP과 함께 get_token 사용
get_token
유틸리티는 SAML, LDAP 또는 기타 기본 IDP와 함께 사용할 수 있습니다.
get_token
에서는 여러 SSO 로그인 URL과 계정을 사용할 수 있습니다.
계정이 여러 개인 단일 사용자에게 각 get_token
호출의 사용자 이름을 지정하라는 메시지가 표시됩니다.
get_token 캐시 지우기
다음과 같은 선택적 플래그를 사용하여 get_token
캐시를 지울 수 있습니다.
--clear-sso-cache
$HOME/.sso-cli
에서 SSO_LOGIN_URL의 캐시 디렉터리를 지우며 서버의 캐시된 액세스 및 갱신 토큰을 삭제합니다.--clear-all-sso-cache
$HOME/.sso-cli
아래의 모든 디렉터리를 지우고 캐시된 토큰을 모두 삭제합니다.
(1) Copyright 2023 Google LLC
get_token
도구는 Google Cloud Platform 사용에 적용되는 계약에 따라 '소프트웨어'로 제공되며 https://cloud.google.com/terms/service-terms에서 확인할 수 있는 서비스별 약관이 포함됩니다.