אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X. מידע
Apigee Edge כולל קבוצה של מדיניות שמאגדת את היכולות של OAuth 1.0a ו-OAuth 2. ניהול מחזור החיים של טוקנים וסודות, כולל יצירה, אימות ואחסון, מתבצע על ידי Apigee Edge בשם השירותים שלכם בקצה העורפי.
במסמך הזה מפורטים משתני התהליך שהוגדרו על ידי מדיניות OAuth. אפשר להשתמש במשתנים כדי להטמיע התנהגות מותאמת אישית בתהליכי OAuth. מידע על שימוש ב-OAuth זמין במאמר בנושא OAuth.
משתני הרשאה באמצעות OAuth 2.0
המשתנים של זרימת הנתונים שמוגדרים בטבלה הזו מאוכלסים כשמדיניות OAuth המתאימה מופעלת, ולכן הם זמינים למדיניות אחרת או לאפליקציות שמופעלות בזרימת הנתונים של ה-proxy ל-API.
| אימות המדיניות של טוקן הגישה |
* משתנים של מוצרי API |
|
מדיניות לדוגמה: <OAuthV2 name="VerifyAccessToken"> <Operation>VerifyAccessToken</Operation> <Scope>space-separated-scopes</Scope>* <AccessToken>flow.variable</AccessToken>* <AccessTokenPrefix>Bearer</AccessTokenPrefix>* </OAuthV2> יש תמיכה רק בטוקנים מסוג bearer. אין תמיכה בטוקנים של MAC. כברירת מחדל, צריך להעביר את אסימון הגישה בכותרת של בקשת ה-HTTP Authorization. לדוגמה:
אפשר להעביר כל
אם לא מציינים את השדות האופציונליים, הערכים מחולצים בהתאם למפרט של 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 המתאימה מופעלת, ולכן הם זמינים למדיניות אחרת או לאפליקציות שמופעלות בזרימת הנתונים של ה-proxy ל-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