הדף הזה רלוונטי ל-Apigee ול-Apigee Hybrid.
לעיון במסמכי התיעוד של
Apigee Edge
כדי ש-Apigee יפעל כשרת הרשאות OAuth2, הוא צריך לחשוף נקודות קצה שבהן לקוחות יכולים לבקש טוקנים וקודי הרשאה. במאמר הזה מוסבר בקצרה על נקודות הקצה האלה ואיך מגדירים אותן ב-Apigee.
מהי נקודת קצה מסוג OAuth2?
נקודת קצה (endpoint) של OAuth2 היא כתובת URL שלקוחות קוראים לה כדי לבקש טוקנים של OAuth (או קודי הרשאה). הנה דוגמה לבקשה של טוקן גישה:
$ curl -i -H "ContentType: x-www-form-urlencoded" \ -X POST "https://apitest.acme.com/oauth/client_credential/accesstoken" \ -d "grant_type=client_credentials" \ -H "Authorization: Basic c3FIOG9vSGV4VHo4QzAySVg5T1JvNnJoZ3ExaVNyQWw6WjRsanRKZG5lQk9qUE1BVQ"
כדי לעבד את הבקשה הזו, צריך מדיניות OAuthV2. כפי שאפשר להבין מהבקשה לדוגמה שלמעלה, המדיניות צריכה לתמוך בסוג ההרשאה client credentials (פרטי כניסה של לקוח) ולפעול בנתיב /oauth/client_credentials/accesstoken.
זוהי מדיניות לדוגמה של OAuthV2 שהוגדרה לקבל את client_credentials סוג ההרשאה. מידע על רכיבי הגדרה אופציונליים שאפשר להגדיר באמצעות המדיניות הזו זמין במאמר בנושא מדיניות OAuthV2.
<OAuthV2 name="GenerateAccessToken">
<Operation>GenerateAccessToken</Operation>
<ExpiresIn>1800000</ExpiresIn> <!-- 30 minutes -->
<SupportedGrantTypes>
<GrantType>client_credentials</GrantType>
</SupportedGrantTypes>
<GenerateResponse enabled="true"/>
</OAuthV2>זוהי דוגמה להגדרת נקודת קצה ליצירת טוקן גישה. המדיניות GenerateAccessToken תופעל, והיא צריכה להיות מוגדרת לתמיכה בסוג ההרשאה client_credentials.
...
<Flow name="generate-access-token">
<Request>
<Step>
<Name>GenerateAccessToken</Name>
</Step>
</Request>
<Response/>
<Condition>(proxy.pathsuffix MatchesPath "/token") and (request.verb = "POST")</Condition>
</Flow>
...אם הלקוח מספק את פרטי הכניסה הנכונים, המדיניות יוצרת ומחזירה טוקן. אחרת, היא מחזירה שגיאה.
נושאים קשורים
למידע מפורט על כל סוגי ההרשאות הנתמכים וקוד לדוגמה, אפשר לעיין במאמר קבלת אסימוני OAuth 2.0