คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่
เอกสารประกอบของ Apigee X 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 โดยค่าเริ่มต้น ระบบจะต้องส่งโทเค็นเพื่อการเข้าถึงในส่วนหัวคำขอ HTTP Authorization header. เช่น
คุณสามารถส่ง
หากไม่ได้ระบุช่องที่ไม่บังคับ ระบบจะดึงค่าตามข้อกำหนด 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 ระบบจะดึงค่าแอตทริบิวต์แบบไดนามิกจากตัวแปรโฟลว์ที่ระบุ หรือ แบบคงที่โดยใช้ค่าเริ่มต้นในนโยบาย หากระบุทั้ง 2 อย่าง ตัวแปรโฟลว์จะมีความสำคัญเหนือกว่า |
| นโยบายการสร้างโทเค็นเพื่อการเข้าถึงสำหรับประเภทการให้สิทธิ์ รหัสการให้สิทธิ์ ข้อมูลเข้าสู่ระบบของผู้ใช้ และ ข้อมูลเข้าสู่ระบบของไคลเอ็นต์ |
ตัวแปรที่ตั้งค่าเมื่อสำเร็จ:
|
|
นโยบายตัวอย่าง <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 ระบบจะดึงค่าแอตทริบิวต์แบบไดนามิกจากตัวแปรโฟลว์ที่ระบุ หรือ แบบคงที่โดยใช้ค่าเริ่มต้นในนโยบาย หากระบุทั้ง 2 อย่าง ตัวแปรโฟลว์จะมีความสำคัญเหนือกว่า |
| นโยบายการสร้างโทเค็นเพื่อการเข้าถึงสำหรับประเภทการให้สิทธิ์โดยนัย |
ตัวแปรที่ตั้งค่าเมื่อสำเร็จ:
|
|
นโยบายตัวอย่าง <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 ระบบจะดึงค่าแอตทริบิวต์แบบไดนามิกจากตัวแปรโฟลว์ที่ระบุ หรือ แบบคงที่โดยใช้ค่าเริ่มต้นในนโยบาย หากระบุทั้ง 2 อย่าง ตัวแปรโฟลว์จะมีความสำคัญเหนือกว่า |
| นโยบายการรีเฟรชโทเค็นเพื่อการเข้าถึง |
ตัวแปรที่ตั้งค่าเมื่อสำเร็จ:
|
|
นโยบายตัวอย่าง <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