המדיניות בנושא מחיקת OAuthOAuthV2Info

אתה צופה בתיעוד של Apigee Edge.
הצג תיעוד של Apigee X.

מה

מחיקת קוד ההרשאה או אסימון הגישה ל-OAuth V2 שצוין.

טעימות

מחיקת אסימון גישה

בהמשך מופיעה דוגמה למדיניות שמשמשת למחיקת אסימון גישה מסוג OAuth 2.0. בדוגמה הבאה נמצא אסימון הגישה שצריך למחוק בהודעת הבקשה, כדי למצוא את הכותרת access_token.

<DeleteOAuthV2Info name="DeleteAccessToken">
     <AccessToken ref="request.header.access_token"></AccessToken>
</DeleteOAuthV2Info>

מחיקת קוד האימות

בהמשך מופיעה דוגמה למדיניות שמשמשת למחיקת קוד הרשאה של OAuth 2.0. בדוגמה הבאה מופיע קוד האימות שרוצים למחוק בהודעת הבקשה. הדוח מחפש פרמטר בשם code.

<DeleteOAuthV2Info name="DeleteAuthCode">
     <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
</DeleteOAuthV2Info>

הפניה לרכיב

ההפניה לרכיב מתארת את האלמנטים והמאפיינים של המדיניות DeleteOAuthV2Info.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="DeleteOAuthV2Info-1">    
    <DisplayName>Delete OAuth v2.0 Info 1</DisplayName>
    <AccessToken ref={some-variable}></AccessToken>
    <!--<AuthorizationCode ref={some-variable}></AuthorizationCode>-->
    <Attributes/>
</DeleteOAuthV2Info

מאפיינים<DeleteOAuthV2Info>

<DeleteOAuthV2Info async="false" continueOnError="false" enabled="true" name="Delete-OAuth-v20-Info-1">
מאפיין תיאור ברירת המחדל נוכחות
אסינכרוני

מגדירים את הערך true כדי לציין שהמדיניות צריכה להיות במאגר שרשורים שונה מהמאגר שבו מתנהל תהליך הבקשה/התגובה. ברירת המחדל היא false.

ההגדרה הזו משמשת רק לאופטימיזציה פנימית.

false אופציונלי
קוד השגיאה OnOnError

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

false אופציונלי
פעיל מאפשרת לקבוע אם מדיניות מסוימת נאכפת או לא. אם המדיניות מוגדרת לערך false, המדיניות מושבתת והיא לא נאכפת (על אף שהמדיניות עדיין מקושרת לזרימת נתונים). true אופציונלי
name

השם הפנימי של המדיניות. מתבצעת הפניה לשם הזה ברכיבי השלבים כדי לצרף את המדיניות לזרימה.

הערה: התווים שאפשר להשתמש בשם שלהם מוגבלים לתווים הבאים: A-Z0-9._\-$ %. ממשק המשתמש לניהול אוכף מגבלות נוספות. למשל, הסרה אוטומטית של תווים שאינם אלפאנומריים.

לא רלוונטי חובה

רכיב <AccessToken>

מזהה את המשתנה שבו נמצא אסימון הגישה למחיקה. לדוגמה, אם אסימון הגישה מצורף לבקשת בקשה כפרמטר של שאילתה בשם "access_token", מציינים את request.queryparam.access_token. אפשר להשתמש בכל משתנה חוקי שמתייחס לאסימון. לחלופין, הם יכולים להעביר את המחרוזת של האסימון המילולי (אותיות נדירות).

 <AccessToken ref="request.queryparam.access_token"></AccessToken>
ברירת מחדל: לא רלוונטי
נוכחות: חובה לציין <AccessToken> או <AuthorizationCode>.
סוג: String

מאפיינים

מאפיין תיאור ברירת המחדל נוכחות
ref

משתנה של אסימון גישה. בדרך כלל, אחזור ממשתנה זרימה. לדוגמה: request.header.token או request.queryparam.token.

לא רלוונטי אופציונלי

רכיב <AuthorizationCode>

מזהה את המשתנה שבו נמצא קוד ההרשאה למחיקה. לדוגמה, אם קוד האימות מצורף לבקשת בקשה כפרמטר של שאילתה שנקרא "קוד", יש לציין את request.queryparam.code. אפשר להשתמש בכל משתנה חוקי שמתייחס לאסימון. לחלופין, הם יכולים להעביר את המחרוזת של האסימון המילולי (אותיות נדירות).

 <AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
ברירת מחדל: לא רלוונטי
נוכחות: חובה לציין <AccessToken> או <AuthorizationCode>.
סוג: String

מאפיינים

מאפיין תיאור ברירת המחדל נוכחות
ref

משתנה של אסימון גישה. בדרך כלל, אחזור ממשתנה זרימה. לדוגמה: request.header.code או request.queryparam.code.

לא רלוונטי אופציונלי

רכיב<DisplayName>

שם בשפה טבעית שמתייג את המדיניות בעורך של שרת ה-proxy לניהול ממשק המשתמש. אם לא מציינים אותו, המערכת תשתמש במאפיין שם המדיניות.

<DisplayName>DeleteOAuthV2Info 1</DisplayName>
ברירת מחדל: הערך של מאפיין המדיניות name.
נוכחות: אופציונלי
סוג: String

הפניה לשגיאה

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

שגיאות בזמן ריצה

השגיאות האלה עלולות להתרחש כשהמדיניות מופעלת.

קוד שגיאה סטטוס HTTP הסיבה
steps.oauth.v2.invalid_access_token 401 אסימון הגישה שנשלח למדיניות לא חוקי.
steps.oauth.v2.invalid_request-authorization_code_invalid 401 קוד ההרשאה שנשלח למדיניות לא חוקי.
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound 401 מומלץ לעיין בפוסט הזה בקהילה של Apigee כדי לקבל מידע על פתרון הבעיה.

שגיאות פריסה

מידע בנושא שגיאות פריסה מופיע בהודעה שדווחה בממשק המשתמש.

משתני כשל

המשתנים האלה מוגדרים כשהמדיניות הזו מפעילה שגיאה בזמן ריצה.

משתנים מיקום דוגמה
fault.name="fault_name" fault_name הוא השם של השגיאה, כפי שמצוין בטבלה שגיאות זמן ריצה שלמעלה. שם התקלה הוא החלק האחרון של קוד התקלה. fault.name = "invalid_access_token"
oauthV2.policy_name.failed policy_name הוא השם שצוין על ידי המשתמש במדיניות שגרמה לשגיאה. oauthV2.DeleteTokenInfo.failed = true
oauthV2.policy_name.fault.name policy_name הוא השם שצוין על ידי המשתמש במדיניות שגרמה לשגיאה. oauthV2.DeleteTokenInfo.fault.name = invalid_access_token
oauthv2.policy_name.fault.cause policy_name הוא השם שצוין על ידי המשתמש במדיניות שגרמה לשגיאה. oauthV2.DeleteTokenInfo.cause = Invalid Access Token

דוגמה לשגיאה

{
  "fault": {
    "faultstring": "Invalid Access Token",
    "detail": {
      "errorcode": "keymanagement.service.invalid_access_token"
    }
  }
}

כלל כשל לדוגמה

<faultrule name="VariableOfNonMsgType"></faultrule><FaultRule name="DeleteOAuthV2Info_Faults">
    <Step>
        <Name>AM-InvalidTokenResponse</Name>
    </Step>
    <Condition>(fault.name = "invalid_access_token")</Condition>
</FaultRule>

סכימה

כל סוג מדיניות מוגדר באמצעות סכימת XML (.xsd). לידיעתך, סכימות המדיניות זמינות ב-GitHub.

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