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

כרגע מוצג התיעוד של Apigee Edge.
כניסה למסמכי התיעוד של Apigee X.
מידע

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

לפרטים, אפשר לקרוא את המאמר בנושא שימוש באסימוני OAuth של צד שלישי.

ציון כתובות אתרים מרובות של קריאה חוזרת (callback)

כשמשתמשים בסוג ההרשאה של קוד ההרשאה, צריך לציין כתובת URL לקריאה חוזרת (callback) כשרושמים את אפליקציית הפיתוח. כתובת ה-URL לקריאה חוזרת (callback) מציינת בדרך כלל את כתובת ה-URL של אפליקציה שמיועדת לקבל קוד הרשאה מטעם אפליקציית הלקוח. בנוסף, מחרוזת כתובת ה-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 לקריאה חוזרת, עם פרמטר של שאילתת הקוד .code שמכיל את קוד ההרשאה.

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

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

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

יכול להיות שתידרשו לאמת שמשתמש קצה של האפליקציה אישר את האפליקציה. לשם כך אפשר להשתמש ב-Audit API של Apigee Edge.

דגימת OAuth יוצאת

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