Apigee Edge 문서입니다.
Go to the
Apigee X documentation. info
Apigee Edge는 OAuth 1.0a 및 OAuth 2 기능을 정책 집합으로 캡슐화합니다. 생성, 유효성 검사, 저장을 비롯한 토큰 및 보안 비밀의 수명 주기 관리는 백엔드 서비스를 대신하여 Apigee Edge에서 관리 합니다.
이 문서에서는 OAuth 정책에 의해 정의된 흐름 변수를 지정합니다. 변수를 사용하여 OAuth 흐름의 커스텀 동작을 구현할 수 있습니다. OAuth 사용에 대해서는 OAuth를 참조하세요.
OAuth 2.0 플로우 변수
이 표에 정의된 흐름 변수는 각 OAuth 정책이 실행될 때 채워지며 API 프록시 흐름에서 실행되는 다른 정책 또는 애플리케이션에서 사용할 수 있습니다.
| 액세스 토큰 정책 확인 |
* API 제품 변수 |
|
샘플 정책: <OAuthV2 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> <Scope>space-separated-scopes</Scope>* <AccessToken>flow.variable</AccessToken>* <AccessTokenPrefix>Bearer</AccessTokenPrefix>* </OAuthV2> 전달자 토큰만 지원됩니다. MAC 토큰은 지원되지 않습니다. 기본적으로 액세스 토큰은 Authorization HTTP 요청 헤더에 전달되어야 합니다. 예를 들면 다음과 같습니다.
모든
선택적 필드가 지정되지 않은 경우 값은 OAuth 2.0 사양에 따라 추출됩니다. |
| 승인 코드 정책 생성 |
성공 시 설정되는 변수:
|
|
샘플 정책: <OAuthV2 name="GetAuthCode"> <Operation>GenerateAuthorizationCode</Operation> <ExpiresIn>1000<ExpiresIn> <ResponseType>flow.variable</ResponseType>* <ClientId>flow.variable</ClientId>* <RedirectUri>flow.variable</RedirectUri>* <Scope>flow.variable</Scope>* <State>flow.variable</State>* <Attributes>* <Attribute name=”1” ref=”flow.variable”>value1</Attribute> <Attribute name=”2” ref=”flow.variable”>value2</Attribute> </Attributes> </OAuthV2> * 선택사항 모든
선택적 필드가 지정되지 않은 경우 값은 OAuth 2.0 사양에 따라 추출됩니다. 속성 값은 지정된 흐름 변수에서 동적으로 파생되거나 정책의 기본값을 사용하여 정적으로 파생됩니다. 두 가지 모두 지정되면 흐름 변수가 우선합니다. |
| 부여 유형 승인 코드, 사용자 인증 정보, 클라이언트 사용자 인증 정보의 액세스 토큰 정책 생성 |
성공 시 설정되는 변수:
|
|
샘플 정책: <OAuthV2 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> <ExpiresIn>1000<ExpiresIn> <SupportedGrantTypes>* <GrantType>authorization_code</GrantType> <GrantType>password</GrantType> <GrantType>client_credentials</GrantType> </SupportedGrantTypes> <GrantType>flow.variable</GrantType>* <ClientId>flow.variable</ClientId>* <RedirectUri>flow.variable</RedirectUri>* <Scope>flow.variable</Scope>* <AppEndUser>flow.variable</AppEndUser>* <Code>flow.variable</Code>* <UserName>flow.variable</UserName>* <PassWord>flow.variable</PassWord>* <Attributes>* <Attribute name=”1” ref=”flow.variable”>value1</Attribute> <Attribute name=”2” ref=”flow.variable”>value2</Attribute> </Attributes> </OAuthV2> * 선택사항 모든
선택적 필드가 지정되지 않은 경우 값은 OAuth 2.0 사양에 따라 추출됩니다. 속성 값은 지정된 흐름 변수에서 동적으로 파생되거나 정책의 기본값을 사용하여 정적으로 파생됩니다. 두 가지 모두 지정되면 흐름 변수가 우선합니다. |
| 암시적 부여 유형의 액세스 토큰 정책 생성 |
성공 시 설정되는 변수:
|
|
샘플 정책: <OAuthV2 name="GenerateAccessToken"> <Operation>GenerateAccessTokenImplicitGrant</Operation> <ExpiresIn>1000<ExpiresIn> <ResponseType>flow.variable></ResponseType>* <ClientId>flow.variable></ClientId>* <RedirectUri>flow.variable></RedirectUri>* <Scope>flow.variable></Scope>* <State>flow.variable></State>* <AppEndUser>flow.variable</AppEndUser>* <Attributes>* <Attribute name=”1” ref=”flow.variable”>value1</Attribute> <Attribute name=”2” ref=”flow.variable”>value2</Attribute> </Attributes> </OAuthV2> * 선택사항 모든
선택적 필드가 지정되지 않은 경우 값은 OAuth 2.0 사양에 따라 추출됩니다. 속성 값은 지정된 흐름 변수에서 동적으로 파생되거나 정책의 기본값을 사용하여 정적으로 파생됩니다. 두 가지 모두 지정되면 흐름 변수가 우선합니다. |
| 액세스 토큰 정책 새로고침 |
성공 시 설정되는 변수:
|
|
샘플 정책: <OAuthV2 name="RefreshAccessToken"> <Operation>RefreshAccessToken</Operation> <ExpiresIn>1000<ExpiresIn> <GrantType>flow.variable</GrantType>* <RefreshToken>flow.variable</RefreshToken>* </OAuthV2> * 선택사항 모든
선택적 필드가 지정되지 않은 경우 값은 OAuth 2.0 사양에 따라 추출됩니다. |
| 클라이언트 속성 정책 가져오기 |
|
샘플 정책: <GetOAuthV2Info name="GetClientAttributes"> <ClientId ref="{variable_name}"/> </GetOAuthV2Info> 샘플 정책: <GetOAuthV2Info name="GetClientAttributes">
<ClientId>{client_id}</ClientId>
</GetOAuthV2Info> |
| 액세스 토큰 속성 정책 가져오기 |
성공 시 설정되는 변수:
|
|
샘플 정책: <GetOAuthV2Info name="GetTokenAttributes"> <AccessToken ref="{variable_name}"/> </GetOAuthV2Info> 샘플 정책: <GetOAuthV2Info name="GetTokenAttributes">
<AccessToken>{access_token}</AccessToken>
</GetOAuthV2Info> |
| 승인 코드 속성 정책 가져오기 |
|
샘플 정책: <GetOAuthV2Info name="GetAuthCodeAttributes"> <AuthorizationCode ref="{variable_name}"/> </GetOAuthV2Info> 샘플 정책: <GetOAuthV2Info name="GetAuthCodeAttributes">
<AuthorizationCode>{authorization_code}</AuthorizationCode>
</GetOAuthV2Info> |
| 갱신 토큰 속성 정책 가져오기 |
|
샘플 정책: <GetOAuthV2Info name="GetTokenAttributes"> <RefreshToken ref="{variable_name}"/> </GetOAuthV2Info> 샘플 정책: <GetOAuthV2Info name="GetTokenAttributes">
<RefreshToken>{refresh_token}</RefreshToken>
</GetOAuthV2Info> |
OAuth 1.0a 흐름 변수
이 표에 정의된 흐름 변수는 각 OAuth 정책이 실행될 때 채워지며 API 프록시 흐름에서 실행되는 다른 정책 또는 애플리케이션에서 사용할 수 있습니다.
요청 토큰 정책 생성
샘플 정책:
<OAuthV1 name="GenerateRequestToken"> <Operation>GenerateRequestToken</Operation> </OAuthV1>
성공 시 설정되는 변수:
oauth_tokenoauth_token_secretoauth_callback_confirmedoauth_responseoauth_consumer_keyoauth_consumer_secret
액세스 토큰 정책 생성
샘플 정책:
<OAuthV1 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> </OAuthV1>
성공 시 설정되는 변수:
oauth_tokenoauth_token_secretoauth_responseoauth_consumer_keyoauth_consumer_secret
액세스 토큰 확인 정책
샘플 정책:
<OAuthV1 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> </OAuthV1>
성공 시 설정되는 변수:
oauth_tokenoauth_token_secretoauth_responseoauth_consumer_keyoauth_consumer_secret
API 키 정책 확인
샘플 정책:
<GetOAuthV1Info name="VerifyApiKey"> <OAuthConfig>{config_name}</OAuthConfig>* <APIKey ref="{variable_name}" /> </GetOAuthV1Info>
* 선택사항
성공 시 설정되는 변수:
oauth_consumer_keyoauth_consumer_secret
소비자 정책 확인
샘플 정책:
<GetOAuthV1Info name="VerifyConsumer"> <OAuthConfig>{config_name}</OAuthConfig>* <ConsumerKey ref="{variable_name}" /> </GetOAuthV1Info>
* 선택사항
성공 시 설정되는 변수:
oauth_consumer_keyoauth_consumer_secret
토큰 정책 확인
샘플 정책:
<GetOAuthV1Info name="VerifyToken"> <OAuthConfig>{config_name}</OAuthConfig>* <RequestToken ref="{variable_name}" /> </GetOAuthV1Info>
* 선택사항
성공 시 설정되는 변수:
oauth_tokenoauth_token_secret