הסבר על נקודות קצה של OAuth

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

כדי לבצע את תפקידו כשרת הרשאות OAuth2, Apigee Edge צריך לחשוף נקודות קצה שבהן לקוחות יכולים לבקש אסימונים וקודי אימות. במאמר הזה נסביר בקצרה על נקודות הקצה האלה ואיך להגדיר אותן ב-Edge.

מהי נקודת קצה (endpoint) של OAuth2?

נקודת קצה של OAuth2 היא כתובת URL שהלקוחות מפעילים כדי לבקש אסימוני OAuth (או קודי אימות). הנה בקשה לדוגמה לאסימון גישה:

$ curl -i -H 'ContentType: x-www-form-urlencoded' \
-X POST 'https://docs-test.apigee.net/oauth/client_credential/accesstoken' \
-d 'grant_type=client_credentials' \
-H 'Authorization: Basic c3FIOG9vSGV4VHo4QzAySVg5T1JvNnJoZ3ExaVNyQWw6WjRsanRKZG5lQk9qUE1BVQ'

בסביבת Apigee Edge, נדרשת מדיניות שתטפל בבקשות מסוג זה. כפי שניתן להסיק מהבקשה, המדיניות חייבת לתמוך בסוג המענק 'פרטי כניסה של לקוח', והמדיניות חייבת לפעול בנתיב /oauth/client_credentials/accesstoken.

המדיניות הנכונה במקרה הזה היא מדיניות OAuthV2, שמוגדרת להפעלה בתהליך כמו בדוגמה הבאה (כאשר שם המדיניות הוא GenerateAccessTokenClient):

        <Flow name="AccessTokenClientCredential">
            <Description/>
            <Request>
                <Step>
                    <FaultRules/>
                    <Name>GenerateAccessTokenClient</Name>
                </Step>
            </Request>
            <Response/>
            <Condition>(proxy.pathsuffix MatchesPath &quot;/accesstoken&quot;) and (request.verb = &quot;POST&quot;)</Condition>
        </Flow>

אם הלקוח מספק את פרטי הכניסה הנכונים, המדיניות יוצרת ומחזירה אסימון. אחרת, היא תחזיר שגיאה.

איתור של נקודות הקצה המוגדרות כברירת מחדל

Apigee מוסיפה דוגמה של שרת proxy לנקודת קצה (endpoint) של OAuth2, כברירת מחדל, לכל ארגון חדש שנוצר. אם תחפשו, תוכלו למצוא שרת proxy בשם oauth בארגון שלכם.

כדי למצוא את שרת ה-proxy הזה:

  1. ניגשים לדף שרתי proxy של API, כפי שמתואר בהמשך.

    Edge

    כדי לגשת לדף שרתי proxy של API באמצעות ממשק המשתמש של Edge:

    1. נכנסים לאתר apigee.com/edge.
    2. בסרגל הניווט הימני, בוחרים באפשרות פיתוח > שרתי proxy של API.
    3. לוחצים על +שרת proxy.

    Classic Edge (ענן פרטי)

    כדי לגשת לדף שרתי proxy של API באמצעות ממשק המשתמש הקלאסי של Edge:

    1. נכנסים אל http://ms-ip:9000. ms-ip הוא כתובת ה-IP או שם ה-DNS של הצומת של שרת הניהול.
    2. בסרגל הניווט העליון, בוחרים באפשרות APIs > API Proxies (ממשקי API > ממשקי API).
  2. ברשימת שרתי ה-proxy, בוחרים את השרת שנקרא oauth.
  3. בדף הסקירה הכללית של שרת ה-proxy, בוחרים בכרטיסייה פיתוח כדי להציג את עורך שרת ה-proxy, ובודקים את המדיניות ואת התהליכים בשרת ה-proxy.

שיטה מומלצת: יצירת שרת proxy משלכם לנקודת קצה (endpoint) של OAuth2

שרת ה-Proxy של oauth שמוגדר כברירת מחדל מוגבל: הוא תומך רק בסוג המענק של פרטי הכניסה של הלקוח. שרת ה-proxy הזה נועד לשמש כדוגמה בלבד. בסביבת הייצור, כדאי ליצור שרת proxy שמגדיר את נקודות הקצה של OAuth2 שעומדות בדרישות שלך.

הערה חשובה אחת: שרת proxy שמגדיר נקודות קצה של OAuth2 הוא בדרך כלל שרת proxy ללא יעד. שרת ה-proxy פועל בתור שירות שמופעל ב-ProxyEndpoint וחוזר ישירות ללקוח.

נושאים קשורים

בקשת אסימוני גישה וקודי הרשאה