현재 Apigee Edge 문서가 표시되고 있습니다.
Apigee X 문서로 이동 정보
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> Bearer 토큰만 지원됩니다. MAC 토큰은 지원되지 않습니다. 기본적으로 액세스 토큰은 승인 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 사양에 따라 값이 추출됩니다. 속성 값은 지정된 흐름 변수에서 동적으로 파생되거나 정책의 기본값을 사용하여 정적으로 파생됩니다. 둘 다 지정된 경우 Flow 변수가 우선합니다. |
권한 부여 유형에 대한 액세스 토큰 정책 생성, 승인 코드, 사용자 인증 정보, 클라이언트 사용자 인증 정보 |
성공 시 설정된 변수:
|
샘플 정책: <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 사양에 따라 값이 추출됩니다. 속성 값은 지정된 흐름 변수에서 동적으로 파생되거나 정책의 기본값을 사용하여 정적으로 파생됩니다. 둘 다 지정된 경우 Flow 변수가 우선합니다. |
암시적 권한 부여 유형의 액세스 토큰 정책 생성 |
성공 시 설정된 변수:
|
샘플 정책: <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 사양에 따라 값이 추출됩니다. 속성 값은 지정된 흐름 변수에서 동적으로 파생되거나 정책의 기본값을 사용하여 정적으로 파생됩니다. 둘 다 지정된 경우 Flow 변수가 우선합니다. |
액세스 토큰 정책 갱신 |
성공 시 설정된 변수:
|
샘플 정책: <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_token
oauth_token_secret
oauth_callback_confirmed
oauth_response
oauth_consumer_key
oauth_consumer_secret
액세스 토큰 정책 생성
샘플 정책:
<OAuthV1 name="GenerateAccessToken"> <Operation>GenerateAccessToken</Operation> </OAuthV1>
성공 시 설정된 변수:
oauth_token
oauth_token_secret
oauth_response
oauth_consumer_key
oauth_consumer_secret
액세스 토큰 확인 정책
샘플 정책:
<OAuthV1 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> </OAuthV1>
성공 시 설정된 변수:
oauth_token
oauth_token_secret
oauth_response
oauth_consumer_key
oauth_consumer_secret
API 키 정책 확인
샘플 정책:
<GetOAuthV1Info name="VerifyApiKey"> <OAuthConfig>{config_name}</OAuthConfig>* <APIKey ref="{variable_name}" /> </GetOAuthV1Info>
* 선택사항
성공 시 설정된 변수:
oauth_consumer_key
oauth_consumer_secret
소비자 정책 확인
샘플 정책:
<GetOAuthV1Info name="VerifyConsumer"> <OAuthConfig>{config_name}</OAuthConfig>* <ConsumerKey ref="{variable_name}" /> </GetOAuthV1Info>
* 선택사항
성공 시 설정된 변수:
oauth_consumer_key
oauth_consumer_secret
토큰 정책 확인
샘플 정책:
<GetOAuthV1Info name="VerifyToken"> <OAuthConfig>{config_name}</OAuthConfig>* <RequestToken ref="{variable_name}" /> </GetOAuthV1Info>
* 선택사항
성공 시 설정된 변수:
oauth_token
oauth_token_secret