شما در حال مشاهده مستندات 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">
| ویژگی | توضیحات | پیشفرض | حضور |
|---|---|---|---|
| ناهمگام | برای تعیین اینکه این سیاست باید در یک مخزن نخ متفاوت از مخزنی که جریان درخواست/پاسخ را سرویس میدهد، اجرا شود، روی این تنظیم فقط برای بهینهسازی داخلی استفاده میشود. | نادرست | اختیاری |
| ادامهخطا | انتظار میرود اکثر سیاستها هنگام وقوع خطا، خطایی را برگردانند. با تنظیم این ویژگی روی | نادرست | اختیاری |
| فعال شده | تعیین میکند که آیا یک سیاست اجرا میشود یا خیر. اگر روی false تنظیم شود، یک سیاست «خاموش» میشود و اجرا نمیشود (حتی اگر سیاست به یک جریان متصل باقی بماند). | درست | اختیاری |
| نام | نام داخلی سیاست. این نام در عناصر Step برای اتصال سیاست به یک Flow ارجاع داده میشود. توجه: کاراکترهایی که میتوانید در نام استفاده کنید به موارد زیر محدود شدهاند: | ناموجود | مورد نیاز |
عنصر <AccessToken>
متغیری را که توکن دسترسی برای حذف در آن قرار دارد، شناسایی میکند. برای مثال، اگر توکن دسترسی به عنوان یک پارامتر پرسوجو به نام "access_token" به پیام درخواست پیوست شده باشد، request.queryparam.access_token را مشخص کنید. میتوانید از هر متغیر معتبری که به توکن اشاره میکند استفاده کنید. یا میتوانید رشته توکن تحتاللفظی (در موارد نادر) را ارسال کنید.
<AccessToken ref="request.queryparam.access_token"></AccessToken>
| پیشفرض: | ناموجود |
| حضور: | یا <AccessToken> یا <AuthorizationCode> مورد نیاز است. |
| نوع: | رشته |
ویژگیها
| ویژگی | توضیحات | پیشفرض | حضور |
|---|---|---|---|
| مرجع | یک متغیر توکن دسترسی. معمولاً از یک متغیر جریان بازیابی میشود. برای مثال: | ناموجود | اختیاری |
عنصر <AuthorizationCode>
متغیری را که کد مجوز برای حذف در آن قرار دارد، شناسایی میکند. برای مثال، اگر کد مجوز به عنوان یک پارامتر پرسوجو به نام "code" به پیام درخواست پیوست شده باشد، request.queryparam.code را مشخص کنید. میتوانید از هر متغیر معتبری که به توکن اشاره میکند استفاده کنید. یا میتوانید رشته توکن تحتاللفظی (در موارد نادر) را ارسال کنید.
<AuthorizationCode ref="request.queryparam.code"></AuthorizationCode>
| پیشفرض: | ناموجود |
| حضور: | یا <AccessToken> یا <AuthorizationCode> مورد نیاز است. |
| نوع: | رشته |
ویژگیها
| ویژگی | توضیحات | پیشفرض | حضور |
|---|---|---|---|
| مرجع | یک متغیر توکن دسترسی. معمولاً از یک متغیر جریان بازیابی میشود. برای مثال: | ناموجود | اختیاری |
عنصر <DisplayName>
یک نام به زبان طبیعی که سیاست را در ویرایشگر پروکسی رابط کاربری مدیریت برچسبگذاری میکند. در صورت حذف، از ویژگی نام سیاست استفاده میشود.
<DisplayName>DeleteOAuthV2Info 1</DisplayName>
| پیشفرض: | مقدار ویژگی name سیاست. |
| حضور: | اختیاری |
| نوع: | رشته |
مرجع خطا
این بخش کدهای خطا و پیامهای خطایی را که برگردانده میشوند و متغیرهای خطا را که توسط Edge تنظیم میشوند، هنگامی که این خطمشی خطا را راهاندازی میکند، توضیح میدهد. این اطلاعات برای دانستن اینکه آیا در حال توسعه قوانین خطا برای رسیدگی به خطاها هستید، مهم است. برای کسب اطلاعات بیشتر، آنچه را که باید در مورد خطاهای خط مشی و مدیریت خطاها بدانید را ببینید.
خطاهای زمان اجرا
این خطاها ممکن است هنگام اجرای سیاست رخ دهند.
| کد خطا | وضعیت HTTP | علت |
|---|---|---|
steps.oauth.v2.invalid_access_token | 401 | رمز دسترسی ارسال شده به خط مشی نامعتبر است. |
steps.oauth.v2.invalid_request-authorization_code_invalid | 401 | کد مجوز ارسال شده به خط مشی نامعتبر است. |
steps.oauth.v2.InvalidAPICallAsNoApiProductMatchFound | 401 | لطفاً این پست انجمن Apigee را برای اطلاعات در مورد عیب یابی این خطا ببینید. |
خطاهای استقرار
برای اطلاعات در مورد خطاهای استقرار به پیام گزارش شده در UI مراجعه کنید.
متغیرهای خطا
این متغیرها زمانی تنظیم می شوند که این خط مشی خطایی را در زمان اجرا ایجاد کند.
| متغیرها | کجا | مثال |
|---|---|---|
fault.name=" fault_name " | fault_name نام خطا است، همانطور که در جدول خطاهای Runtime در بالا ذکر شده است. نام خطا آخرین قسمت کد خطا است. | 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 موجود است.