خط‌مشی XMLThreatProtection

درحال مشاهده اسناد Apigee Edge هستید.
به اسناد Apigee X بروید.
اطلاعات

چه

آسیب‌پذیری‌های XML را برطرف کنید و حملات به API خود را به حداقل برسانید. به‌صورت اختیاری، حملات بار XML را براساس محدودیت‌های پیکربندی‌شده شناسایی کنید. بااستفاده از روش‌های زیر، دربرابر تهدیدهای XML محافظت می‌کند:

  • اعتبارسنجی پیام‌ها دربرابر طرحواره XML (.xsd)
  • ارزیابی محتوای پیام برای کلیدواژه‌ها یا الگوهای خاص برای مستثنی کردن
  • پیام‌های خراب یا بدشکل را قبل‌از تجزیه کردن آن‌ها شناسایی کنید

مرجع عنصر

مرجع عنصر، عناصر و مشخصه‌های خط‌مشی XMLThreatProtection را توصیف می‌کند.

<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
   <DisplayName>XML Threat Protection 1</DisplayName>
   <NameLimits>
      <Element>10</Element>
      <Attribute>10</Attribute>
      <NamespacePrefix>10</NamespacePrefix>
      <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
   </NameLimits>
   <Source>request</Source>
   <StructureLimits>
      <NodeDepth>5</NodeDepth>
      <AttributeCountPerElement>2</AttributeCountPerElement>
      <NamespaceCountPerElement>3</NamespaceCountPerElement>
      <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
   </StructureLimits>
   <ValueLimits>
      <Text>15</Text>
      <Attribute>10</Attribute>
      <NamespaceURI>10</NamespaceURI>
      <Comment>10</Comment>
      <ProcessingInstructionData>10</ProcessingInstructionData>
   </ValueLimits> 
</XMLThreatProtection>

مشخصه‌های <XMLThreatProtection>

<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1"> 

جدول زیر ویژگی هایی را توصیف می کند که برای همه عناصر اصلی خط مشی مشترک هستند:

صفت توضیحات پیش فرض حضور
name

نام داخلی سیاست. مقدار مشخصه name می تواند شامل حروف، اعداد، فاصله، خط تیره، زیرخط و نقطه باشد. این مقدار نمی تواند بیش از 255 کاراکتر باشد.

در صورت تمایل، از عنصر <DisplayName> برای برچسب گذاری خط مشی در ویرایشگر پروکسی UI مدیریت با نامی به زبان طبیعی دیگر استفاده کنید.

N/A مورد نیاز
continueOnError

برای بازگرداندن خطا در صورت شکست خط مشی، روی false تنظیم کنید. این رفتار مورد انتظار برای اکثر سیاست ها است.

روی true تنظیم کنید تا اجرای جریان حتی پس از شکست خط مشی ادامه یابد.

نادرست اختیاری
enabled

برای اجرای خط مشی روی true تنظیم کنید.

برای خاموش کردن خط مشی، روی false تنظیم کنید. این سیاست حتی اگر به یک جریان وابسته باشد اجرا نخواهد شد.

درست است اختیاری
async

این ویژگی منسوخ شده است.

نادرست منسوخ شده است

عنصر <DisplayName>

علاوه بر ویژگی name برای برچسب‌گذاری خط‌مشی در ویرایشگر پروکسی رابط کاربری مدیریت با نامی متفاوت و به زبان طبیعی، از آن استفاده کنید.

<DisplayName>Policy Display Name</DisplayName>
پیش فرض

N/A

اگر این عنصر را حذف کنید، از مقدار ویژگی name خط مشی استفاده می شود.

حضور اختیاری
تایپ کنید رشته

عنصر <NameLimits>

محدودیت‌های نویسه را مشخص می‌کند تا خط‌مشی آن‌ها را بررسی و اعمال کند.

<NameLimits>
   <Element>10</Element>
   <Attribute>10</Attribute>
   <NamespacePrefix>10</NamespacePrefix>
   <ProcessingInstructionTarget>10</ProcessingInstructionTarget>     
</NameLimits>
پیش‌فرض: موجود نیست
حضور: اختیاری
نوع: موجود نیست

عنصر <NameLimits>/<Element>

محدودیتی را برای حداکثر تعداد نویسه‌های مجاز در نام هر عنصر در سند XML مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<book category="WEB">
   <title>Learning XML</title>
   <author>Erik T. Ray</author>
   <year>2003</year>
</book>

هنگام تجزیه‌وتحلیل XML بالا، مقدار عنصر <Element> در گزیده خط‌مشی زیر نام‌های عنصر (book،‏ title، author، و year)) را اعتبارسنجی می‌کند تا از 10 نویسه فراتر نروند.

<NameLimits>
   <Element>10</Element>
   <Attribute>10</Attribute>
   <NamespacePrefix>10</NamespacePrefix>
   <ProcessingInstructionTarget>10</ProcessingInstructionTarget>     
</NameLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع: عدد صحیح

عنصر <NameLimits>/<Attribute>

محدودیتی را برای حداکثر تعداد نویسه‌های مجاز در نام هریک از مشخصه‌های سند «زبان نشانه‌گذاری توسعه‌پذیر» مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<book category="WEB">
   <title>Learning XML</title>
   <author>Erik T. Ray</author>
   <year>2003</year>
</book>

هنگام تجزیه‌وتحلیل XML بالا، مقدار عنصر <Attribute> در گزیده خط‌مشی زیر درستی‌سنجی می‌کند که نام مشخصه category از 10 نویسه تجاوز نکند.

<NameLimits>
   <Element>10</Element>
   <Attribute>10</Attribute>
   <NamespacePrefix>10</NamespacePrefix>
   <ProcessingInstructionTarget>10</ProcessingInstructionTarget>     
</NameLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع: عدد صحیح

عنصر <NameLimits>/<NamespacePrefix>

محدودیتی را برای حداکثر تعداد نویسه‌های مجاز در پیشوند فضای نام در سند «زبان نشانه‌گذاری توسعه‌پذیر» مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<ns1:myelem xmlns:ns1="http://ns1.com"/>

هنگام تجزیه‌وتحلیل XML بالا، مقدار عنصر <NamespacePrefix> در گزیده خط‌مشی زیر تأیید می‌کند که پیشوند فضای نام ns1 از 10 نویسه تجاوز نمی‌کند.

<NameLimits>
   <Element>10</Element>
   <Attribute>10</Attribute>
   <NamespacePrefix>10</NamespacePrefix>
   <ProcessingInstructionTarget>10</ProcessingInstructionTarget>     
</NameLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع: عدد صحیح

عنصر <NameLimits>/<ProcessingInstructionTarget>

محدودیتی را برای حداکثر تعداد نویسه‌های مجاز در هدف هریک از دستورات پردازش در سند XML مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<?xml-stylesheet type="text/xsl" href="style.xsl"?>

هنگام تجزیه‌وتحلیل زبان نشانه‌گذاری توسعه‌پذیر بالا، مقدار عنصر <ProcessingInstructionTarget> در گزیده خط‌مشی زیر تأیید می‌کند که هدف دستورالعمل پردازش xml-stylesheet از 10 نویسه فراتر نمی‌رود.

<NameLimits>
   <Element>10</Element>
   <Attribute>10</Attribute>
   <NamespacePrefix>10</NamespacePrefix>
   <ProcessingInstructionTarget>10</ProcessingInstructionTarget>     
</NameLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع: عدد صحیح

عنصر <Source>

پیام برای بررسی حمله‌های با بهره‌گیری از بار داده XML. این مورد معمولاً روی request تنظیم می‌شود، زیرا معمولاً باید درخواست‌های ورودی از برنامه‌های کارخواه را اعتبارسنجی کنید. وقتی روی message تنظیم شود، این عنصر به‌طور خودکار پیام درخواست را وقتی به جریان درخواست پیوست می‌شود و پیام پاسخ را وقتی به جریان پاسخ پیوست می‌شود ارزیابی می‌کند.

<Source>request</Source>
پیش‌فرض: درخواست
حضور: اختیاری
نوع:

رشته.

از بین request، response، یا message انتخاب کنید.

عنصر <StructuralLimits>

محدودیت‌های ساختاری را که باید توسط خط‌مشی بررسی و اعمال شود مشخص می‌کند.

<StructureLimits>
   <NodeDepth>5</NodeDepth>
   <AttributeCountPerElement>2</AttributeCountPerElement>
   <NamespaceCountPerElement>3</NamespaceCountPerElement>
   <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
پیش‌فرض: موجود نیست
حضور: اختیاری
نوع: موجود نیست

عنصر <StructuralLimits>/<NodeDepth>

حداکثر عمق گره مجاز در «زبان نشانه‌گذاری توسعه‌پذیر» را مشخص می‌کند.

<StructureLimits>
   <NodeDepth>5</NodeDepth>
   <AttributeCountPerElement>2</AttributeCountPerElement>
   <NamespaceCountPerElement>3</NamespaceCountPerElement>
   <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

عنصر <StructuralLimits>/<AttributeCountPerElement>

حداکثر تعداد ویژگی‌های مجاز برای هر عنصر را مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<book category="WEB">
   <title>Learning XML</title>
   <author>Erik T. Ray</author>
   <year>2003</year>
</book>
هنگام تجزیه‌وتحلیل زبان نشانه‌گذاری توسعه‌پذیر بالا، مقدار عنصر <AttributeCountPerElement> در تکه‌کد خط‌مشی زیر تأیید می‌کند که عناصر book، title، author، و year هرکدام بیش‌از 2 ویژگی نداشته باشند. توجه داشته باشید که مشخصه‌های استفاده‌شده برای تعریف فضاهای نام شمارش نمی‌شوند.
<StructureLimits>
   <NodeDepth>5</NodeDepth>
   <AttributeCountPerElement>2</AttributeCountPerElement>
   <NamespaceCountPerElement>3</NamespaceCountPerElement>
   <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

عنصر <StructuralLimits>/<NameSpaceCountPerElement>

حداکثر تعداد تعریف فضای نام مجاز برای هر عنصر را مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<e1 attr1="val1" attr2="val2">
    <e2 xmlns="http://apigee.com" xmlns:yahoo="http://yahoo.com" one="1" yahoo:two="2"/>
</e1>

هنگام تجزیه‌وتحلیل زبان نشانه‌گذاری توسعه‌پذیر بالا، مقدار عنصر <NamespaceCountPerElement> در گزیده خط‌مشی زیر تأیید می‌کند که عناصر e1 و e2 هرکدام بیش‌از 2 تعریف فضای نام ندارند. در این مورد، <e1> تعریف فضای نام ۰ دارد و <e2> تعریف فضای نام ۲ دارد: xmlns="http://apigee.com" و xmlns:yahoo="http://yahoo.com".

<StructureLimits>
   <NodeDepth>5</NodeDepth>
   <AttributeCountPerElement>2</AttributeCountPerElement>
   <NamespaceCountPerElement>3</NamespaceCountPerElement>
   <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

<StructuralLimits>/<ChildCount> عنصر

حداکثر تعداد عناصر فرزند مجاز برای هر عنصر را مشخص می‌کند.

<StructureLimits>
   <NodeDepth>5</NodeDepth>
   <AttributeCountPerElement>2</AttributeCountPerElement>
   <NamespaceCountPerElement>3</NamespaceCountPerElement>
   <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
</StructureLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

مشخصه‌ها

مشخصه پیش‌فرض حضور
includeComment درست اختیاری
includeElement درست اختیاری
includeProcessingInstructions درست اختیاری
includeText درست اختیاری

عنصر <ValueLimits>

حد نویسه را برای مقادیر مشخص می‌کند تا خط‌مشی آن‌ها را بررسی و اعمال کند.

<ValueLimits>
   <Text>15</Text>
   <Attribute>10</Attribute>
   <NamespaceURI>10</NamespaceURI>
   <Comment>10</Comment>
   <ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
پیش‌فرض: موجود نیست
حضور: اختیاری
نوع:

موجود نیست

عنصر <ValueLimits>/<Text>

حد نویسه را برای هر گره نوشتاری موجود در سند XML مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<book category="WEB">
   <title>Learning XML</title>
   <author>Erik T. Ray</author>
   <year>2003</year>
</book>
هنگام تجزیه‌وتحلیل XML بالا، مقدار عنصر <Text> در گزیده خط‌مشی زیر تأیید می‌کند که مقادیر نوشتاری عنصر Learning XML، Erik T. Ray,، و 2003 هرکدام از 15 نویسه فراتر نروند.
<ValueLimits>
   <Text>15</Text>
   <Attribute>10</Attribute>
   <NamespaceURI>10</NamespaceURI>
   <Comment>10</Comment>
   <ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

عنصر <ValueLimits>/<Attribute>

حد نویسه را برای هر مقدار مشخصه موجود در سند XML مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<book category="WEB">
   <title>Learning XML</title>
   <author>Erik T. Ray</author>
   <year>2003</year>
</book>
هنگام تجزیه‌وتحلیل XML بالا، مقدار عنصر <Attribute> در گزیده خط‌مشی زیر تأیید می‌کند که مقدار مشخصه WEB از 10 نویسه فراتر نرود.
<ValueLimits>
   <Text>15</Text>
   <Attribute>10</Attribute>
   <NamespaceURI>10</NamespaceURI>
   <Comment>10</Comment>
   <ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

عنصر <ValueLimits>/<NamespaceURI>

حد نویسه را برای همه نشانی‌های وب فضای نام موجود در سند XML مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<ns1:myelem xmlns:ns1="http://ns1.com"/>
هنگام تجزیه‌وتحلیل کردن «زبان نشانه‌گذاری توسعه‌پذیر» بالا، مقدار عنصر <NamespaceURI> در گزیده خط‌مشی زیر تأیید می‌کند که مقدار نشانی وب فضای نام http://ns1.com از 10 نویسه فراتر نمی‌رود.
<ValueLimits>
   <Text>15</Text>
   <Attribute>10</Attribute>
   <NamespaceURI>10</NamespaceURI>
   <Comment>10</Comment>
   <ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

عنصر <ValueLimits>/<Comment>

حد نویسه‌ای برای هر نظر موجود در سند XML مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<book category="WEB">
   <!-- This is a comment -->
   <title>Learning XML</title>
   <author>Erik T. Ray</author>
   <year>2003</year>
</book>
هنگام تجزیه‌وتحلیل XML بالا، مقدار عنصر <Comment> در گزیده خط‌مشی زیر تأیید می‌کند که نوشتار نظر This is a comment از 10 نویسه فراتر نمی‌رود.
<ValueLimits>
   <Text>15</Text>
   <Attribute>10</Attribute>
   <NamespaceURI>10</NamespaceURI>
   <Comment>10</Comment>
   <ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

عنصر <ValueLimits>/<ProcessingInstructionData>

حد نویسه را برای هر نوشتار دستورالعمل پردازش موجود در سند XML مشخص می‌کند.

برای مثال، XML زیر را درنظر بگیرید:

<?xml-stylesheet type="text/xsl" href="style.xsl"?>
هنگام تجزیه‌وتحلیل زبان نشانه‌گذاری توسعه‌پذیر بالا، مقدار عنصر <ProcessingInstructionData> در گزیده خط‌مشی زیر تأیید می‌کند که نوشتار دستورالعمل پردازش type="text/xsl" href="style.xsl" از 10 نویسه تجاوز نمی‌کند.
<ValueLimits>
   <Text>15</Text>
   <Attribute>10</Attribute>
   <NamespaceURI>10</NamespaceURI>
   <Comment>10</Comment>
   <ProcessingInstructionData>10</ProcessingInstructionData>
</ValueLimits>
پیش‌فرض: اگر محدودیتی مشخص نکنید، سیستم مقدار پیش‌فرض -1 را اعمال می‌کند، که سیستم آن را معادل بدون محدودیت درنظر می‌گیرد.
حضور: اختیاری
نوع:

عدد صحیح

مرجع خطا

این بخش کدهای خطا و پیام‌های خطایی را که برگردانده می‌شوند و متغیرهای خطایی را که Edge هنگام راه‌اندازی خطا در این خط‌مشی تنظیم می‌کند شرح می‌دهد. این اطلاعات برای دانستن اینکه آیا قوانین خطا را برای مدیریت خطاها توسعه می‌دهید یا نه مهم است. برای کسب اطلاعات بیشتر، آنچه باید درباره خطاهای خط‌مشی بدانیدو رسیدگی به اشکالات را ببینید.

خطاهای زمان اجرا

این خطاها ممکن است هنگام اجرای خط‌مشی رخ دهند.

کد خطا وضعیت HTTP علت رفع اشکال
steps.xmlthreatprotection.ExecutionFailed ۵۰۰ خط‌مشی XMLThreatProtection می‌تواند انواع مختلفی از خطاهای ExecutionFailed را ایجاد کند. بیشتر این خطاها زمانی رخ می‌دهند که از آستانه مشخص‌شده در خط‌مشی فراتر رفته باشید. این انواع خطاها شامل موارد زیر است: طول نام عنصر، تعداد فرزند، عمق گره، تعداد مشخصه، طول نام مشخصه، و بسیاری موارد دیگر. می‌توانید فهرست کامل را در موضوع عیب‌یابی خطای زمان اجرای خط‌مشی XMLThreatProtection ببینید.
steps.xmlthreatprotection.InvalidXMLPayload ۵۰۰ این خطا زمانی رخ می‌دهد که بار پیام ورودی مشخص‌شده توسط عنصر <Source> خط‌مشی XMLThreatProtection یک «سند زبان نشانه‌گذاری توسعه‌پذیر» معتبر نباشد.
steps.xmlthreatprotection.SourceUnavailable ۵۰۰ این خطا زمانی رخ می‌دهد که متغیر پیام مشخص‌شده در عنصر <Source> یکی از موارد زیر باشد:
  • خارج از محدوده (در جریان خاصی که خط‌مشی در آن اجرا می‌شود دردسترس نیست)
  • یکی از مقادیر معتبر request، response، یا message نیست
steps.xmlthreatprotection.NonMessageVariable ۵۰۰ اگر عنصر <Source> روی متغیری تنظیم شده باشد که از نوع پیام نباشد، این خطا روی می‌دهد.

نکته‌ها:

  • نام خطای ExecutionFailed نام خطای پیش‌فرض است و صرف‌نظر از نوع خطای شناسایی‌شده برگردانده می‌شود؛ بااین‌حال، این پیش‌فرض را می‌توان با تنظیم دارایی سطح سازمان تغییر داد. وقتی این دارایی تنظیم می‌شود، نام خطا نشان‌دهنده خطای واقعی خواهد بود. برای مثال، «TextExceeded» یا «AttrValueExceeded». برای جزئیات، یادداشت‌های استفاده را ببینید.
  • وضعیت ۵۰۰ اچ‌تی‌تی‌پی پیش‌فرض است؛ بااین‌حال، با تنظیم دارایی سطح سازمان، وضعیت اچ‌تی‌تی‌پی می‌تواند برای خطاهای جاری درخواست به ۴۰۰ تغییر کند. برای جزئیات، یادداشت‌های استفاده را ببینید.

خطاهای استقرار

هیچ‌کدام.

متغیرهای خطا

این متغیرها زمانی تنظیم می‌شوند که خطای زمان اجرا رخ دهد. برای اطلاعات بیشتر، آنچه باید درباره خطاهای خط‌مشی بدانیدرا ببینید.

متغیر مکان مثال
fault.name="fault_name" ‫fault_name نام خطا است، همان‌طور که در جدول خطاهای زمان اجرا در بالا فهرست شده است. نام خطا آخرین بخش کد خطا است. fault.name Matches "SourceUnavailable"
xmlattack.policy_name.failed ‫policy_name نام مشخص‌شده کاربر برای خط‌مشی‌ای است که خطا را ایجاد کرده است. xmlattack.XPT-SecureRequest.failed = true

نمونه پاسخ خطا

{
  "fault": {
    "faultstring": "XMLThreatProtection[XPT-SecureRequest]: Execution failed. reason: XMLThreatProtection[XTP-SecureRequest]: Exceeded object entry name length at line 2",
    "detail": {
      "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
    }
  }
}

قانون خطای نمونه

<FaultRule name="XML Threat Protection Policy Faults">
    <Step>
        <Name>AM-CustomErrorResponse</Name>
        <Condition>(fault.name Matches "ExecutionFailed") </Condition>
    </Step>
    <Condition>(xmlattack.XPT-SecureRequest.failed = true) </Condition>
</FaultRule>

طرح‌واره‌ها

یادداشت‌های استفاده

هر سروری که داده‌های آنلاین دریافت می‌کند، چه مخرب و چه غیرعمدی، درمعرض حمله قرار می‌گیرد. برخی‌از حمله‌ها از انعطاف‌پذیری XML با ساختن اسناد نامعتبر که پتانسیل به‌خطر انداختن سیستم‌های پشتیبان را دارند، بهره می‌برند. اسناد XML خراب یا بسیار پیچیده می‌توانند باعث شوند سرورها حافظه بیشتری از حافظه موجود اختصاص دهند، منابع CPU و حافظه را درگیر کنند، تجزیه‌کننده‌ها را خراب کنند، و به‌طورکلی پردازش پیام را غیرفعال کنند و حملات منع سرویس در سطح برنامه ایجاد کنند.

خطای پیکربندی «محافظت دربرابر تهدید»

اطلاعات مهم اگر برای این خط‌مشی «قوانین خطا» ایجاد می‌کنید: به‌طور پیش‌فرض، اگر پیامی از خط‌مشی «محافظت دربرابر تهدید JSON یا XML» عبور نکند، Edge کد وضعیت HTTP 500 Internal Server Error و کد خطای ExecutionFailed را ارائه می‌دهد. با دارایی سطح سازمانی جدیدی می‌توانید عملکرد خطا را تغییر دهید. وقتی دارایی org ‏features.isPolicyHttpStatusEnabled روی درست تنظیم می‌شود، رفتار زیر رخ می‌دهد:

  • درخواست: با خط‌مشی محافظت دربرابر تهدید که به هر جریان درخواستی پیوست شده است، پیام‌های نامعتبر کد وضعیت ۴۰۰ درخواست بد را به‌همراه کد خطای خط‌مشی مربوطه برمی‌گردانند (به‌جای فقط ExecutionFailed).
  • پاسخ: با پیوست کردن خط‌مشی محافظت دربرابر تهدید به هر جریان پاسخ، پیام‌های نامعتبر همچنان کد وضعیت «خطای سرور داخلی ۵۰۰» را برمی‌گردانند و یکی از کدهای خطای خط‌مشی مربوطه (به‌جای فقط «ExecutionFailed») صادر می‌شود.

مشتریان Cloud باید برای تنظیم دارایی سازمان با پشتیبانی Apigee Edge تماس بگیرند.

موضوعات مرتبط

خط‌مشی محافظت دربرابر تهدید JSON

خط‌مشی «محافظت از بیان» «معمولی»