נושאים מתקדמים של OAuth 2.0

מוצג המסמך של Apigee Edge.
עוברים אל מסמכי תיעוד של Apigee X.
מידע

שימוש באסימוני OAuth של צד שלישי

למידע נוסף, ראו שימוש של צד שלישי אסימוני OAuth.

הגדרה של כמה כתובות URL לקריאה חוזרת (callback)

כשמשתמשים בסוג הענקה של קוד ההרשאה, צריך לציין כתובת URL לקריאה חוזרת (callback) כש לרשום את אפליקציית המפתח. כתובת ה-URL לקריאה חוזרת (callback) מציינת בדרך כלל את כתובת ה-URL של אפליקציה שאמור לקבל קוד הרשאה בשם אפליקציית הלקוח. כמו כן, כתובת האתר הזו המחרוזת משמשת לאימות. הלקוח נדרש לשלוח את כתובת ה-URL הזו ל-Apigee Edge כאשר מבקשים קודי הרשאה ואסימוני גישה, והפרמטר redirect_uri חייב להתאים אחת רשומה. כדאי לעיין גם במאמר בקשת אסימוני גישה והרשאה קודים.

לדוגמה:

http://myorg-test.apigee.net/weather/oauth/authorizationcode?client_id=123456&response_type=code&redirect_uri=http://example.com/callback&scope=scope1%20scope2&state=abc

יש תרחיש לדוגמה של ציון כמה כתובות URL לקריאה חוזרת באפליקציה אחת של שרת proxy. עבור לדוגמה, ייתכן שתרצו לבצע אימות עבור מספר דומיינים. לדוגמה:

  • http://myexample.com/callback
  • http://myexample.uk/callback
  • http://myexample.ja/callback

Edge לא תומך בציון כמה כתובות URL לקריאה חוזרת או בשימוש בתווים כלליים לחיפוש אפליקציה למפתחים רשומה. כדי לעשות את זה, אפשר לציין כתובת URL ריקה לקריאה חוזרת (callback) כשרושמים אפליקציית מפתח, ואז מוסיפים לוגיקה במדיניות JavaScript כדי לאמת מזהי URI נכנסים להפניה אוטומטית.

שינוי של החזרת ברירת המחדל ההתנהגות של פעולת GenerateAuthCode

כברירת מחדל, הפעולה GenerateAuthCode במדיניות OAuthV2 מחזירה הפניה אוטומטית מסוג 302 אל כתובת URL לקריאה חוזרת (callback) עם פרמטר שאילתה .code שמכיל את קוד ההרשאה.

במקרים מסוימים, כדאי לשנות את ההתנהגות הזו. לדוגמה, יכול להיות שתרצו להחזיר 200 עם JSON מובנה שמכיל את הקוד.

כדי להשיג את התרחיש לדוגמה הזה, השתמשו במדיניות extractVariable כדי לאחזר את הקוד, AssignMessage policy להחזיר את הקוד במטען ייעודי (payload) של JSON עם סטטוס 200.

ביקורת הסכמה של משתמשי קצה באפליקציה

יכול להיות שתצטרכו לוודא שמשתמש הקצה באפליקציה אישר אותה. אפשר להשתמש ב-Apigee כדי לעשות זאת, יש להשתמש ב-Audit API.

דוגמת OAuth להודעות יוצאות

דוגמה ל-outbound-oauth במאגר לדוגמה של Apigee api-platform ב-GitHub. אפשר לשכפל את הדוגמה, לפרוס אותה להריץ אותו. הדוגמה הזו משתמשת ב-Microsoft Azure Translator API כדי לתרגם ציוצים. כדי לעשות את זה, מבצע קריאה יוצאת כדי לקבל אסימון גישה ל-OAuth, ולאחר מכן שומר את האסימון במטמון באמצעות ה-API מדיניות שמירה במטמון של שירותים, שנעשה בה שימוש חוזר באסימון ששמור במטמון בכל פעם שמתבצעת שיחה יוצאת. כמו כן, כוללת אפליקציית דפדפן להדגמה שמשמשת להפעלת שרת ה-proxy ל-API.