XMLThreatProtection নীতি রানটাইম সংক্রান্ত সমস্যার সমাধান করা

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন।
তথ্য

ExecutionFailed

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition policy_name:
        Execution failed. Reason: error_description at line line_num
        (possibly around char char_num)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: Premature end of document while parsing at line 5(possibly  around char 0)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার ধরন ও সম্ভাব্য কারণ

XMLThreatProtection নীতি অনেক ধরনের ExecutionFailed সমস্যা দেখাতে পারে। নিচের সারণীতে বিভিন্ন ধরনের সমস্যা ও তার সম্ভাব্য কারণের তালিকা দেওয়া হল:

সমস্যা কারণ
ElementNameExceeded XML ট্যাগে অনুমোদিত সর্বাধিক স্ট্রিংয়ের দৈর্ঘ্য পেরিয়ে গেছে।
ChildCountExceeded XML পেলোডে অনুমোদিত চাইল্ড এলিমেন্টের সর্বাধিক সংখ্যা অতিক্রম করেছে।
NodeDepthExceeded XML পে-লোডে অনুমোদিত XML এলিমেন্টের সর্বাধিক গভীরতা অতিক্রম করা হয়েছে।
AttributeCountExceeded একটি এলিমেন্টে সর্বাধিক অ্যাট্রিবিউট সংখ্যা অতিক্রম করা হয়েছে।
AttributeNameExceeded অ্যাট্রিবিউট নামের জন্য অনুমোদিত সর্বাধিক দৈর্ঘ্য অতিক্রম করা হয়েছে।
AttributeValueExceeded অ্যাট্রিবিউট ভ্যালুর জন্য অনুমোদিত সর্বাধিক দৈর্ঘ্য পেরিয়ে গেছে।
TextExceeded টেক্সটের জন্য অনুমোদিত সর্বাধিক দৈর্ঘ্য অতিক্রম করা হয়েছে।
CommentExceeded কমেন্টের সর্বাধিক দৈর্ঘ্য পেরিয়ে গেছে।
PIDataExceeded প্রসেসিং নির্দেশাবলী সংক্রান্ত ডেটার অনুমোদিত দৈর্ঘ্য অতিক্রম করেছে।
PITargetExceeded প্রসেস নির্দেশনার নামের দৈর্ঘ্য সীমা অতিক্রম করেছে।
NSURIExceeded নেমস্পেস URL-এর দৈর্ঘ্য সর্বাধিক সীমা ছাড়িয়ে গেছে।
NSPrefixExceeded নেমস্পেস প্রিফিক্সের দৈর্ঘ্য সীমা অতিক্রম করেছে।
NSCountExceeded একটি এলিমেন্টে ব্যবহৃত নেম স্পেসের সংখ্যা সর্বাধিক সীমা অতিক্রম করেছে।
ভুল XML পেলোড ইনপুট XML পেলোড সঠিক নয়।

ElementNameExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

রানটাইম ট্রাফিক নিম্নলিখিত সমস্যা সহ 500 রেসপন্স কোড রিটার্ন করে:

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition policy_name:
        Execution failed. reason: XMLThreatProtection stepDefinition policy_name:
        Element name length exceeded num at line line_num(possibly
        around char char_num)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Element name length exceeded 5 at line 1(possibly around char 9)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

নীতির <Source> এলিমেন্টে নির্দিষ্ট করা ইনপুট পেলোডে <NameLimits> এলিমেন্টের অধীনে থাকা <Element> এলিমেন্টে নির্দিষ্ট করা সর্বাধিক দৈর্ঘ্যের চেয়ে বেশি দৈর্ঘ্যের XML এলিমেন্ট থাকলে এই সমস্যা হয়।

যেমন, XMLThreatProtection নীতিতে <Element> এলিমেন্টকে 5 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডে এমন একটি এলিমেন্ট থাকে যার ৫টির বেশি অক্ষর আছে, তাহলে এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম, লাইন নম্বর এবং ইনপুট পেলোডের সম্ভাব্য অক্ষর নম্বর শনাক্ত করতে, যেখানে এলিমেন্টের দৈর্ঘ্য অতিক্রম করা হয়েছে, সেইসব সমস্যার মেসেজ পরীক্ষা করুন।

    যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1,, পেলোডের লাইন নম্বর হল 1 এবং সম্ভাব্য অক্ষর নম্বর হল 9.

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Element name
    length exceeded 5 at line 1(possibly around char 9)
    
  2. যে নীতি লঙ্ঘন হয়েছে (ধাপ ১-এ শনাক্ত করা হয়েছে) সেটি পরীক্ষা করুন এবং <Element> এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    যেমন, নিম্নলিখিত XMLThreatProtection নীতিতে, <Element>-এর মান 5 হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>5</Element>
            <Attribute>5</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেই লাইনে থাকা এলিমেন্টের দৈর্ঘ্য <Element> এলিমেন্টের (ধাপ ২-এ শনাক্ত করা হয়েছে) জন্য নির্দিষ্ট করা ভ্যালুর থেকে বেশি কিনা তা চেক করুন। এলিমেন্টের দৈর্ঘ্য এই ভ্যালুর চেয়ে বেশি হলে, সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <company>
      <name>Google</name>
      <country>USA</country>
    </company>
    

    উপরে দেখানো XML পেলোডের ১ নম্বর লাইনে company নামের একটি মূল এলিমেন্ট আছে, যার মধ্যে ৭টি অক্ষর আছে। যেহেতু এলিমেন্টের দৈর্ঘ্য ৫-এর থেকে বেশি (<Element> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু), তাই আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition
    XML-Threat-Protection-1: Element name length exceeded 5 at line 1(possibly around char 9)
    

রেজোলিউশন

XMLThreadProtection নীতি যদি এলিমেন্টের নাম সংজ্ঞায়িত মান অতিক্রম করে এমন পে-লোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে ত্রুটি মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে পে-লোডে কোনও পরিণতি ছাড়াই দীর্ঘতর এলিমেন্ট নির্দিষ্ট করা যেতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <Element>-কে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে আপনি ১০ পর্যন্ত দৈর্ঘ্যের এলিমেন্ট অনুমোদন করতে পারবেন, তাহলে XMLThreatProtection নীতিটি নিম্নলিখিতভাবে পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>5</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>

ChildCountExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition policy_name:
        Execution failed. reason: XMLThreatProtection stepDefinition policy_name:
        Children count exceeded num at line  num(possibly
        around char num)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Children count exceeded 3 at line 5(possibly around char 89)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

<Source> এলিমেন্ট দ্বারা নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে যদি এমন XML এলিমেন্ট থাকে যাতে নীতির <ChildCount> এলিমেন্টে নির্দিষ্ট করা মানের চেয়ে বেশি চাইল্ড এলিমেন্ট থাকে, তাহলে এই সমস্যাটি হয়।

যেমন, <ChildCount>এলিমেন্ট ৩ হলে, কিন্তু ইনপুট XML পেলোডের এলিমেন্টে ৩টির বেশি চাইল্ড এলিমেন্ট থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং এন্ট্রি সংখ্যা যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে, সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 5:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Children
    count exceeded 3 at line 5(possibly around char 89)"
    
  2. যে নীতি লঙ্ঘন হয়েছে (ধাপ ১-এ শনাক্ত করা হয়েছে) সেটি পরীক্ষা করুন এবং <ChildCount> এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিচে দেওয়া নীতির উদাহরণে, <ChildCount>-এর মান 3 হিসেবে সেট করা হয়েছে(মনে রাখবেন, কমেন্ট, অন্তর্ভুক্ত এলিমেন্ট ও অন্যান্য বিষয় এই সীমার মধ্যে পড়ে):

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করে দেখুন এবং পেলোডের চাইল্ড এলিমেন্টের সংখ্যা (সব কমেন্ট ইত্যাদি সহ) <ChildCount> এলিমেন্টের (ধাপ ২-এ শনাক্ত করা হয়েছে) জন্য নির্দিষ্ট করা ভ্যালুর থেকে বেশি কিনা তা চেক করুন। চাইল্ড এলিমেন্টের সংখ্যা চাইল্ড কাউন্টের থেকে বেশি হলে, সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <movie>
      <title>Jurassic Park</title>
      <language>English</language>
      <country>USA</country>
      <director>Steven Spielberg</director>
    </movie>
    

    উপরে দেখানো XML পেলোডের ৫ নম্বর লাইনে <movie>রুট এলিমেন্টের <director>চতুর্থ চাইল্ড এলিমেন্ট রয়েছে। ইনপুট XML পেলোডের চাইল্ড এলিমেন্টের সংখ্যা ৩-এর (<ChildCount> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) থেকে বেশি হওয়ায় আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Children
    count exceeded 3 at line 5(possibly around char 89)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি এমন পে-লোড থেকে রক্ষা করার উদ্দেশ্যে তৈরি করা হয় যাতে চাইল্ড এলিমেন্টের সংখ্যা একটি নির্দিষ্ট থ্রেশহোল্ডের বেশি হয়, তাহলে এই ধরনের ত্রুটি মেসেজ দেখতে পাওয়া স্বাভাবিক। এই ক্ষেত্রে, আপনাকে কোনও অতিরিক্ত ব্যবস্থা নিতে হবে না।

তবে, আপনি যদি নির্ধারণ করেন যে কোনও পরিণতি ছাড়াই পে-লোডে আরও বেশি সংখ্যক চাইল্ড এলিমেন্ট (কমেন্ট ইত্যাদি সহ) অন্তর্ভুক্ত করা যেতে পারে, তাহলে আপনার প্রয়োজনীয়তার ভিত্তিতে <ChildCount>উপযুক্ত মান পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে আপনি সর্বাধিক ১০টি চাইল্ড এলিমেন্ট যোগ করার অনুমতি দিতে পারবেন, তাহলে XMLThreatProtection নীতিটি নিম্নলিখিতভাবে পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>5</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">10</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>15</Text>
        <Attribute>10</Attribute>
        <NamespaceURI>10</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>10</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

NodeDepthExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Node depth exceeded [num] at line [num](possibly around
        char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Node depth exceeded 5 at line 6(possibly around char 110)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

<Source> এলিমেন্ট দ্বারা নির্দিষ্ট করা ইনপুট মেসেজ পেলোডের মধ্যে যদি এমন XML ডকুমেন্ট থাকে যেখানে নোড হায়ারার্কি XMLThreatProtection নীতির <NodeDepth> এলিমেন্টে নির্দিষ্ট করা সংখ্যার চেয়ে বেশি হয়, তাহলে এই সমস্যাটি হয়।

যেমন, নীতিতে <NodeDepth> এলিমেন্টকে 4 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডের নোড ডেপথ 4-এর থেকে বেশি হলে, এই সমস্যাটি হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং নোড ডেপথ যেখানে অতিক্রম করা হয়েছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 6:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Node depth
    exceeded 5 at line 6(possibly around char 109)
    
  2. XMLThreatProtection নীতি (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <NodeDepth> এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <NodeDepth>-এর মান 5 হিসেবে সেট করা আছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা নোড ডেপথের সংখ্যা <NodeDepth> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার থেকে বেশি কিনা তা চেক করুন। XML চাইল্ড এলিমেন্টের লেভেল সংখ্যাকে ছাড়িয়ে গেলে, সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <hellos>
       <hello1>
           <wave1>
                <wave2>
                    <wave3>
                        <wave4>
                           <wave5>wave</wave5>
                        </wave4>
                    </wave3>
                </wave2>
           </wave1>
       </hello1>
       <hello2>world2</hello2>
       <hello3>world3</hello3>
       <hello4>world4</hello4>
       <hello5>world5</hello5>
       <hello6>world6</hello6>
    </hellos>
    

    ৬ নম্বর লাইনে দেখানো XML পেলোডের নোড ডেপথ ৬.কারণ নোড ডেপথ ৫-এর থেকে বেশি (<NodeDepth> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) তাই আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Node depth
    exceeded 5 at line 6(possibly around char 109)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট নোড ডেপথ থ্রেশহোল্ড সহ পেলোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি মনে করেন যে আরও বেশি নোড ডেপথ অনুমতি দেওয়া যেতে পারে, তাহলে আপনার প্রয়োজন অনুযায়ী <NodeDepth>পরিবর্তন করে উপযুক্ত ভ্যালু সেট করুন।

যেমন, আপনি যদি মনে করেন যে আপনি সর্বাধিক ১০টি নোড ডেপথ অনুমোদন করতে পারবেন, তাহলে নিম্নলিখিতভাবে নীতি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>5</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</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>

AttributeCountExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Attribute count exceeded [num] at line [num](possibly around
        char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Attribute count exceeded 2 at line 3(possibly around char 105)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্টে নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে যদি এমন XML ডকুমেন্ট থাকে যেখানে কোনও একটি এলিমেন্টের অ্যাট্রিবিউটের সংখ্যা নীতির <AttributeCountPerElement> এলিমেন্টে নির্দিষ্ট করা সংখ্যার চেয়ে বেশি হয়, তাহলে এই সমস্যাটি হয়।

যেমন, XMLThreatProtection নীতিতে <AttributeCountPerElement> এলিমেন্টকে 2 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডে ২টির বেশি অ্যাট্রিবিউট সহ এলিমেন্ট থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং অ্যাট্রিবিউটের সংখ্যা যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XMLThreat-Protection-1এবং পেলোডের লাইন নম্বর হল 3:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute
    count exceeded 2 at line 3(possibly around char 105)
    
  2. যে নীতি লঙ্ঘন হয়েছে (ধাপ ১-এ শনাক্ত করা হয়েছে) সেটি পরীক্ষা করুন এবং <AttributeCountPerElement> এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিচে দেওয়া নীতির উদাহরণে, <AttributeCountPerElement>-এর মান 2 হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <AttributeCountPerElementh> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অ্যাট্রিবিউট উল্লেখ করা হয়েছে কিনা তা চেক করুন। অ্যাট্রিবিউটের সংখ্যা যদি গণনার চেয়ে বেশি হয়, তাহলে সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version="1.0" encoding="UTF-8"?>
    <bookstore>
      <book category="cooking" cuisine="Indian" lang="en">
        <title>Easy Indian Cooking</title>
        <author>Suneeta</author>
        <year>2004</year>
        <price>300.00</price>
      </book>
    </bookstore>
    

    উপরে দেখানো XML পেলোডের ৩ নম্বর লাইনে তিনটি অ্যাট্রিবিউট সহ একটি এলিমেন্ট আছে। কারণ অ্যাট্রিবিউটের সংখ্যা ২-এর (<AttributeCountPerElement> এলিমেন্টের জন্য নির্দিষ্ট করা মান) থেকে বেশি, তাই আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute
    count exceeded 2 at line 3(possibly around char 105)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট সংখ্যক অ্যাট্রিবিউট অতিক্রম করে এমন পেলোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে ত্রুটি মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বেশি সংখ্যক অ্যাট্রিবিউট অনুমোদিত হতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <AttributeCountPerElement>মান পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে কোনও এলিমেন্টের জন্য সর্বাধিক ৫টি অ্যাট্রিবিউট অনুমোদন করতে পারবেন, তাহলে নিম্নলিখিতভাবে নীতি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>5</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</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>

AttributeNameExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Attribute name length exceeded [num] at line [num](possibly around char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Attribute name length exceeded 5 at line 3(possibly around char 105)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্টে নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে এমন XML ডকুমেন্ট থাকলে এই সমস্যা হয়, যেখানে অ্যাট্রিবিউট নামের অক্ষর সংখ্যা নীতির <NameLimits> এলিমেন্টের <Attribute> চাইল্ড এলিমেন্টে নির্দিষ্ট করা অক্ষর সংখ্যাকে অতিক্রম করে যায়।

যেমন, নীতিতে <Attribute> এলিমেন্টকে 5 হিসেবে নির্দিষ্ট করা থাকলে, কিন্তু ইনপুট পেলোডে ৫টির বেশি অক্ষর সহ অ্যাট্রিবিউটের নাম থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং অ্যাট্রিবিউটের নামের দৈর্ঘ্য যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 3:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute
    name length exceeded 5 at line 3(possibly around char 105)
    
  2. ব্যর্থ হওয়া নীতি (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <Attribute> এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <Attribute>-এর মান 5 হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা অ্যাট্রিবিউটের দৈর্ঘ্য <Attribute> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। অক্ষরের সংখ্যা অ্যাট্রিবিউট ভ্যালুর থেকে বেশি হলে, সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version="1.0" encoding="UTF-8"?>
    <bookstore>
      <book category="cooking" cuisine="Indian" lang="en">
        <title>Easy Indian Cooking</title>
        <author>Suneeta</author>
        <year>2004</year>
        <price>300.00</price>
      </book>
    </bookstore>
    

    উপরে দেখানো XML পেলোডের ৩ নম্বর লাইনে দুটি অ্যাট্রিবিউট category ও cuisine আছে, যাদের নামের দৈর্ঘ্য যথাক্রমে ৮ ও ৭টি অক্ষর. অ্যাট্রিবিউটের নামের দৈর্ঘ্য ৫টির (<Attribute> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) বেশি হওয়ার কারণে আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute
    name length exceeded 5 at line 3(possibly around char 105)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট অ্যাট্রিবিউট নামের দৈর্ঘ্য অতিক্রম করে এমন পেলোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে ত্রুটি মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে অ্যাট্রিবিউটের নামের দৈর্ঘ্য আরও বেশি হলে কোনও অসুবিধা নেই, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <Attribute>-কে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে আপনার কাছে সর্বাধিক ১০টি অক্ষরের অ্যাট্রিবিউট নাম থাকতে পারে, তাহলে নিম্নলিখিতভাবে নীতিটি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</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>

AttributeValueExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:  Attribute value length exceeded [num] at line [num](possibly around char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Attribute value length exceeded 10 at line 3(possibly around char 111)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

নীতিতে উল্লেখ করা ইনপুট মেসেজ পে-লোডের <Source> এলিমেন্টে এমন XML ডকুমেন্ট থাকলে এই সমস্যা হয়, যেখানে <ValueLimits> এলিমেন্টের <Attribute> চাইল্ড এলিমেন্টে উল্লেখ করা অক্ষরের সংখ্যার চেয়ে বেশি অক্ষরের অ্যাট্রিবিউট ভ্যালু থাকে।

যেমন, XMLThreatProtection নীতিতে <Attribute> এলিমেন্টকে 10 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডে ১০টির বেশি অক্ষর সহ অ্যাট্রিবিউট ভ্যালু থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং অ্যাট্রিবিউটের সংখ্যা যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 3:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute
    value length exceeded 10 at line 3(possibly around char 111)
    
  2. নীতি লঙ্ঘন (ধাপ ১-এ শনাক্ত করা) পরীক্ষা করুন এবং <ValueLimits> এলিমেন্টের <Attribute> চাইল্ড এলিমেন্টে নির্দিষ্ট করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <Attribute>-এর মান ১০ হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা অ্যাট্রিবিউট ভ্যালুর দৈর্ঘ্য <Attribute> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। অক্ষরের সংখ্যা অ্যাট্রিবিউট ভ্যালুর থেকে বেশি হলে, সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version="1.0" encoding="UTF-8"?>
    <bookstore>
      <book category="cooking" cuisine="South Indian" lang="en">
        <title>Easy Indian Cooking</title>
        <author>Suneeta</author>
        <year>2004</year>
        <price>300.00</price>
      </book>
    </bookstore>
    

    উপরে দেখানো XML পেলোডের ৩ নম্বর লাইনে একটি অ্যাট্রিবিউট (cuisine) আছে যার ভ্যালুর দৈর্ঘ্য ১২টি অক্ষর। কারণ অ্যাট্রিবিউট ভ্যালুর দৈর্ঘ্য ১০-এর বেশি (<Attribute> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু), তাই আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Attribute
    value length exceeded 10 at line 3(possibly around char 111)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট অ্যাট্রিবিউট ভ্যালু দৈর্ঘ্যের বেশি পে-লোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বড় অ্যাট্রিবিউট ভ্যালু ব্যবহার করা যেতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <ValueLimits> এলিমেন্টের <Attribute>চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে ১৫টি অক্ষর পর্যন্ত ভ্যালু অ্যাট্রিবিউট করতে পারবেন, তাহলে নিম্নলিখিতভাবে নীতি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</AttributeCountPerElement>
        <NamespaceCountPerElement>3</NamespaceCountPerElement>
        <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>15</Text>
        <Attribute>15</Attribute>
        <NamespaceURI>10</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>10</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

TextExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:  Text length exceeded [num] at line [num](possibly around char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Text length exceeded 15 at line 4(possibly around char 66)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্টে নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে এমন XML ডকুমেন্ট থাকলে এই সমস্যা হয়, যেখানে কোনও এলিমেন্টের টেক্সট দৈর্ঘ্য নীতির <ValueLimits> এলিমেন্টের <Text> চাইল্ড এলিমেন্টে নির্দিষ্ট করা অক্ষরের সংখ্যাকে অতিক্রম করে যায়।

যেমন, নীতিতে <Text> এলিমেন্টকে 15 হিসেবে উল্লেখ করা থাকলে, কিন্তু ইনপুট পেলোডে ১৫টির বেশি অক্ষর সহ টেক্সট থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং অ্যাট্রিবিউটের সংখ্যা যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1 এবং পেলোডের লাইন নম্বর হল 4:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Text length
    exceeded 15 at line 4(possibly around char 66)
    
  2. নীতি লঙ্ঘন (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <ValueLimits> এলিমেন্টের <Text> চাইল্ড এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <Text>-এর মান 15 হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা অ্যাট্রিবিউট ভ্যালুর দৈর্ঘ্য <Text> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। অক্ষরের সংখ্যা অ্যাট্রিবিউট ভ্যালুর থেকে বেশি হলে, সেটিই হল সমস্যার কারণ।

    <food>
      <name>Veg Sandwich</name>
      <price>$5.95</price>
      <description>Vegetarian Sandwich with onions, tomatoes and lettuce</description>
      <calories>650</calories>
    </food>
    

    উপরে ৪ নম্বর লাইনে দেখানো XML পেলোডের টেক্সটের দৈর্ঘ্য ৫৩টি অক্ষর। অ্যাট্রিবিউট ভ্যালুর দৈর্ঘ্য ১৫-এর বেশি (<Text> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) হওয়ার কারণে আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Text length
    exceeded 15 at line 4(possibly around char 66)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট টেক্সট দৈর্ঘ্যের বেশি পে-লোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বেশি দৈর্ঘ্যের টেক্সট অনুমোদিত হতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <Text><ValueLimits> এলিমেন্টের চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে আপনার অ্যাট্রিবিউট ভ্যালু সর্বাধিক ৬০ অক্ষরের হতে পারে, তাহলে নিম্নলিখিতভাবে নীতি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</AttributeCountPerElement>
        <NamespaceCountPerElement>3</NamespaceCountPerElement>
        <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>60</Text>
        <Attribute>15</Attribute>
        <NamespaceURI>10</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>10</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

CommentExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Comment length exceeded [num] at line [num](possibly around char
        [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Comment length exceeded 10 at line 2(possibly around char 48)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্টে নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে এমন XML ডকুমেন্ট থাকলে এই সমস্যা হয়, যেখানে কমেন্টের দৈর্ঘ্য নীতির <ValueLimits> এলিমেন্টের <Comment> চাইল্ড এলিমেন্টে নির্দিষ্ট করা অক্ষরের সংখ্যাকে অতিক্রম করে যায়।

যেমন, নীতিতে <Comment> এলিমেন্টকে 10 হিসেবে নির্দিষ্ট করা থাকলে, কিন্তু ইনপুট পেলোডে ১০টির বেশি অক্ষর সহ কমেন্ট থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং কমেন্টের দৈর্ঘ্য যেখানে অতিক্রম করা হয়েছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 2:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Comment length exceeded 10 at line 2(possibly around char 48)
    
  2. নীতি লঙ্ঘন (ধাপ ১-এ শনাক্ত করা) পরীক্ষা করুন এবং <ValueLimits> এলিমেন্টের <Comment> চাইল্ড এলিমেন্টে নির্দিষ্ট করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <Comment>-এর মান 10 হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা কমেন্টের দৈর্ঘ্য <Comment> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। অক্ষরের সংখ্যা অ্যাট্রিবিউট ভ্যালুর থেকে বেশি হলে, সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <food>
      <!--This is somewhat a long comment-->
      <name>Veg Sandwich</name>
      <price>$5.95</price>
      <description>Vegetarian Sandwich with onions, tomatoes and lettuce</description>
      <calories>650</calories>
    </food>
    

    উপরে দেখানো XML পেলোডের ২ নম্বর লাইনে ৩১ অক্ষরের ভ্যালু সহ একটি কমেন্ট আছে. কমেন্টের দৈর্ঘ্য ১০-এর (<Comment> এলিমেন্টের জন্য নির্দিষ্ট ভ্যালু) থেকে বেশি হওয়ার কারণে আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Comment length
    exceeded 10 at line 2(possibly around char 48)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট কমেন্টের দৈর্ঘ্য অতিক্রম করে এমন পেলোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বড় কমেন্ট অনুমোদন করা যেতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <Comment>এলিমেন্টের<ValueLimits> চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে ৪০টি অক্ষর পর্যন্ত ভ্যালু অ্যাট্রিবিউট করতে পারবেন, তাহলে নিম্নলিখিতভাবে নীতি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</AttributeCountPerElement>
        <NamespaceCountPerElement>3</NamespaceCountPerElement>
        <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>15</Text>
        <Attribute>15</Attribute>
        <NamespaceURI>10</NamespaceURI>
        <Comment>40</Comment>
        <ProcessingInstructionData>10</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

PIDataExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Processing Instruction data length exceeded [num] at line
        [num](possibly around char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Processing Instruction data length exceeded 30 at line 2(possibly around char 109)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্ট দ্বারা নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে যদি এমন XML ডকুমেন্ট থাকে যেখানে প্রসেসিং ডেটা নির্দেশাবলী <ValueLimits>এলিমেন্টের <ProcessingInstructionData> চাইল্ড এলিমেন্টে নির্দিষ্ট করা অক্ষরের সংখ্যাকে অতিক্রম করে, তাহলে এই সমস্যাটি ঘটে।

যেমন, XMLThreatProtection নীতিতে <ProcessingInstructionData> এলিমেন্টকে 10 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডে ১০টির বেশি অক্ষর সহ প্রসেসিং নির্দেশাবলী থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং প্রসেসিং নির্দেশাবলীর দৈর্ঘ্য যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 2:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing
    Instruction data length exceeded 30 at line 2(possibly around char 109)
    
  2. নীতি লঙ্ঘন (ধাপ ১-এ শনাক্ত করা) পরীক্ষা করুন এবং <ValueLimits> এলিমেন্টের <ProcessingInstructionData> চাইল্ড এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <ProcessingInstructionData>-এর মান 30 হিসেবে সেট করা আছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</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>30</ProcessingInstructionData>
        </ValueLimits>
    </XMLThreatProtection>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা প্রসেসিং নির্দেশাবলী ডেটার দৈর্ঘ্য <ProcessingInstructionData> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। প্রসেসিং নির্দেশাবলী ডেটার থেকে অক্ষরের সংখ্যা বেশি হলে, সেটিই সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <?xml-stylesheet type="text/xsl" href="mobilephones.xsl"?>
    <mobilephones>
      <mobilephone>
          <name>iPhone</name>
          <price>$600</price>
      </mobilephone>
      <mobilephone>
          <name>Samsung</name>
          <price>$500</price>
      </mobilephone>
    </mobilephones>
    

    ১ নম্বর লাইনে দেখানো XML পেলোডে একটি প্রসেসিং নির্দেশাবলী ডেটা এলিমেন্ট (type="text/xsl" href="mobilephones.xsl"?)৪০টি অক্ষরের দৈর্ঘ্য সহ.) আছে। এই দৈর্ঘ্য ৩০-এর (<ProcessingInstructionData> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) থেকে বেশি হওয়ার কারণে আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing
    Instruction data length exceeded 30 at line 2(possibly around char 109)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট প্রসেসিং নির্দেশাবলী ডেটার দৈর্ঘ্য অতিক্রম করে এমন পেলোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বেশি প্রসেসিং নির্দেশাবলী ডেটা এলিমেন্টকে অনুমতি দেওয়া যেতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <ValueLimits> এলিমেন্টের <ProcessingInstructionData> চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে ডেটা প্রসেসিং নির্দেশাবলীর দৈর্ঘ্য ৫০টি অক্ষর পর্যন্ত হতে পারে, তাহলে নিম্নলিখিতভাবে নীতিটি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</AttributeCountPerElement>
        <NamespaceCountPerElement>3</NamespaceCountPerElement>
        <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>15</Text>
        <Attribute>15</Attribute>
        <NamespaceURI>10</NamespaceURI>
        <Comment>40</Comment>
        <ProcessingInstructionData>50</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

PITargetExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Processing Instruction target length exceeded [num] at line [num](possibly around
        char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Processing Instruction target length exceeded 10 at line 2(possibly around char 114)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্টে নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে এমন XML ডকুমেন্ট থাকলে এই সমস্যা হয় যেখানে প্রসেস নির্দেশ টার্গেট, নীতির <NameLimits> এলিমেন্টের <ProcessingInstructionTarget> চাইল্ড এলিমেন্টে নির্দিষ্ট করা অক্ষরের সংখ্যাকে অতিক্রম করে।

যেমন, XMLThreatProtection নীতিতে <ProcessingInstructionTarget> এলিমেন্টকে 10 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডের প্রসেস নির্দেশনার টার্গেটে ১০টির বেশি অক্ষর থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং প্রসেসিং নির্দেশ টার্গেটের সংখ্যা যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 1:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing
    Instruction target length exceeded 10 at line 2(possibly around char 114)
    
  2. XMLThreatProtection নীতি (ধাপ #১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <NameLimits> এলিমেন্টের <ProcessingInstructionTarget> চাইল্ড এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <ProcessingInstructionTarget>-এর মান 10 হিসেবে সেট করা আছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>10</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</NodeDepth>
            <AttributeCountPerElement>5</AttributeCountPerElement>
            <NamespaceCountPerElement>3</NamespaceCountPerElement>
            <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
        </StructureLimits>
        <ValueLimits>
            <Text>20</Text>
            <Attribute>15</Attribute>
            <NamespaceURI>40</NamespaceURI>
            <Comment>10</Comment>
            <ProcessingInstructionData>30</ProcessingInstructionData>
        </ValueLimits>
    </XMLThreatProtection>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা প্রসেসিং নির্দেশনার টার্গেটের দৈর্ঘ্য <ProcessingInstructionTarget> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা নম্বরের চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। অক্ষরের সংখ্যা টার্গেট সাইজের সীমা অতিক্রম করলে, সেটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <?xml-stylesheet type="text/xsl" href="mobilephones.xsl"?>
    <mobilephones>
      <mobilephone>
          <name>iPhone</name>
          <price>$600</price>
      </mobilephone>
      <mobilephone>
          <name>Samsung</name>
          <price>$500</price>
      </mobilephone>
    </mobilephones>
    

    উপরে ২ নম্বর লাইনে দেখানো XML পেলোডের "xml-stylesheet"১৪টি অক্ষর" প্রসেসিং নির্দেশাবলী টার্গেট নাম আছে। প্রসেসিং নির্দেশাবলীর টার্গেট নাম ১০-এর থেকে বড় (<ProcessingInstructionTarget> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) হওয়ার কারণে আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Processing
    Instruction target length exceeded 10 at line 2(possibly around char 114)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট প্রসেস নির্দেশনার টার্গেট দৈর্ঘ্যের চেয়ে বেশি পে-লোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে প্রসেস নির্দেশনার টার্গেট আরও দীর্ঘ হতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <ProcessingInstructionTarget><NameLimits> এলিমেন্টের চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনার যদি মনে হয় যে প্রসেস সংক্রান্ত নির্দেশাবলীর টার্গেট ২৫টি অক্ষর পর্যন্ত হতে পারে, তাহলে নিম্নলিখিতভাবে নীতি পরিবর্তন করুন:

  <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
  <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>5</Attribute>
        <NamespacePrefix>15</NamespacePrefix>
    <ProcessingInstructionTarget>25</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</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>40</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>10</ProcessingInstructionData>
    </ValueLimits>
  </XMLThreatProtection>

NSURIExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]: Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:  Namespace uri length length exceeded [num] at line [num](possibly around char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Namespace uri length exceeded 10 at line 2(possibly around char 97)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্ট দ্বারা নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে এমন XML ডকুমেন্ট থাকলে এই সমস্যা হয় যেখানে Namespace URI-এর অক্ষর সংখ্যা নীতির <ValueLimits>এলিমেন্টের <NamespaceURI> চাইল্ড এলিমেন্টে নির্দিষ্ট করা সংখ্যার থেকে বেশি হয়।

যেমন, যদি <NamespaceURI> এলিমেন্টকে নীতিতে 10 হিসেবে নির্দিষ্ট করা হয়, কিন্তু ইনপুট পেলোডে ১০টির বেশি অক্ষর সহ নেমস্পেস URI থাকে, তাহলে এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং নেমস্পেস URI-এর দৈর্ঘ্য যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1এবং পেলোডের লাইন নম্বর হল 2:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace
    uri length exceeded 10 at line 2(possibly around char 97)
    
  2. নীতি লঙ্ঘন (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <ValueLimits> এলিমেন্টের <NamespaceURI> চাইল্ড এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <NamespaceURI>-এর মান 10 হিসেবে সেট করা আছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>5</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</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>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা নেমস্পেস URI-এর দৈর্ঘ্য <NamespaceURI> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। নেমস্পেস URI-এর দৈর্ঘ্য থেকে অক্ষরের সংখ্যা বেশি হলে, এটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version = "1.0" encoding = "UTF-8"?>
      <profile:user xmlns:profile = "www.google.com/profile">
      <profile:name>Rama Krishna</profile:name>
      <profile:company>Google</profile:company>
      <profile:phone>(91) 9876543210</profile:phone>
    </profile:user>
    

    উপরে ২ নম্বর লাইনে দেখানো XML পেলোডের একটি নেমস্পেস URI, www.google.com/profile আছে, যার দৈর্ঘ্য ২২টি অক্ষর। নেমস্পেস URI-এর দৈর্ঘ্য ১০-এর (<NamespaceURI> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) বেশি হওয়ার কারণে আপনি এই সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace
    uri length exceeded 10 at line 2(possibly around char 99)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট নেমস্পেস URI-এর দৈর্ঘ্য অতিক্রম করে এমন পেলোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বড় নেমস্পেস URI অনুমোদিত হতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <ValueLimits> এলিমেন্টের <NamespaceURI> চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে নেমস্পেস URI-এর দৈর্ঘ্য সর্বাধিক ৩০টি অক্ষর হতে পারে, তাহলে নিম্নলিখিতভাবে নীতিটি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>5</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</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>30</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>10</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

NSPrefixExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Namespace prefix length exceeded [num] at line [num](possibly
        around char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Namespace prefix length exceeded 10 at line 2(possibly around char 105)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

<Source> এলিমেন্ট দ্বারা নির্দিষ্ট করা ইনপুট মেসেজ পেলোডে যদি এমন XML ডকুমেন্ট থাকে যেখানে নেমস্পেস প্রিফিক্স, নীতির <NameLimits> এলিমেন্টের <NamespacePrefix> চাইল্ড এলিমেন্টে নির্দিষ্ট করা অক্ষরের সংখ্যাকে অতিক্রম করে, তাহলে এই সমস্যাটি ঘটে।

যেমন, XMLThreatProtection নীতিতে <NamespacePrefix> এলিমেন্টকে 10 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডে ১০টির বেশি অক্ষর সহ নেমস্পেস প্রিফিক্স থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং নেমস্পেস URI প্রিফিক্সের দৈর্ঘ্য যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে ত্রুটি মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XML-Threat-Protection-1 এবং পেলোডের লাইন নম্বর হল 2:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace
    prefix length exceeded 10 at line 2(possibly around char 105)
    
  2. নীতি লঙ্ঘন (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <NameLimits> এলিমেন্টের <NamespacePrefix> চাইল্ড এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <NamespacePrefix>-এর মান 10 হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>10</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</NodeDepth>
            <AttributeCountPerElement>5</AttributeCountPerElement>
            <NamespaceCountPerElement>3</NamespaceCountPerElement>
            <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
        </StructureLimits>
        <ValueLimits>
            <Text>20</Text>
            <Attribute>15</Attribute>
            <NamespaceURI>40</NamespaceURI>
            <Comment>10</Comment>
            <ProcessingInstructionData>30</ProcessingInstructionData>
        </ValueLimits>
    </XMLThreatProtection>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং সেখানে উল্লেখ করা নেমস্পেস প্রিফিক্সের দৈর্ঘ্য <NamespacePrefix> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) উল্লেখ করা সংখ্যার চেয়ে বেশি অক্ষর আছে কিনা তা চেক করুন। নেমস্পেস প্রিফিক্সের সীমা অতিক্রম করলে, এটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version = "1.0" encoding = "UTF-8"?>
    <userprofile:user xmlns:userprofile = "www.googlecom/profile">
      <userprofile:name>Rama Krishna</userprofile:name>
      <userprofile:company>Google</userprofile:company>
      <userprofile:phone>(011) 123-4567</userprofile:phone>
    </userprofile:user>
    

    উপরে দেখানো XML পেলোডের ২ নম্বর লাইনে userprofile নেমস্পেস প্রিফিক্স আছে, যার দৈর্ঘ্য ১১টি অক্ষর। নেমস্পেস URI প্রিফিক্সের দৈর্ঘ্য ১০-এর বেশি (<NamespacePrefix> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) হওয়ার কারণে আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace
    prefix length exceeded 10 at line 2(possibly around char 105)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি নির্দিষ্ট নেমস্পেস URI প্রিফিক্সের দৈর্ঘ্য অতিক্রম করে এমন পেলোড থেকে রক্ষা করার উদ্দেশ্যে করা হয়, তাহলে সমস্যার মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বড় নেমস্পেস URI প্রিফিক্স অনুমোদিত হতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <NameLimits> এলিমেন্টের <NamespacePrefix> চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে আপনার নেমস্পেস URI প্রিফিক্সের দৈর্ঘ্য ১৫টি অক্ষর পর্যন্ত হতে পারে, তাহলে নিম্নলিখিতভাবে নীতিটি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>5</Attribute>
        <NamespacePrefix>15</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</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>40</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>10</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

NSCountExceeded

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. reason: XMLThreatProtection stepDefinition [policy_name]:
        Namespace count exceeded [num] at line [num](possibly around char [num])",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed. reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace count exceeded 3 at line 2(possibly around char 234)",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্ট দ্বারা নির্দিষ্ট করা ইনপুট মেসেজ পেলোডের মধ্যে যদি এমন XML ডকুমেন্ট থাকে যেখানে একটি এলিমেন্টে ব্যবহৃত নেমস্পেসের সংখ্যা নীতির <StructureLimits> এলিমেন্টের <NamespaceCountPerElement> চাইল্ড এলিমেন্টে নির্দিষ্ট করা সংখ্যার চেয়ে বেশি হয়, তাহলে এই ত্রুটিটি ঘটে।

যেমন, নীতিতে <NamespaceCountPerElement> এলিমেন্টকে 3 হিসেবে নির্দিষ্ট করা হলে, কিন্তু ইনপুট পেলোডে ৩টির বেশি নেমস্পেস সহ এলিমেন্ট থাকলে, এই সমস্যাটি দেখানো হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং নেমস্পেসের সংখ্যা যেখানে অতিক্রম করেছে সেই লাইন নম্বর শনাক্ত করতে সমস্যার মেসেজটি পরীক্ষা করুন। যেমন, নিম্নলিখিত সমস্যার মেসেজে, নীতির নাম হল XMLThreat-Protection-1এবং পেলোডের লাইন নম্বর হল 2:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace count
    exceeded 3 at line 2(possibly around char 234)
    
  2. নীতি লঙ্ঘন (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং <StructureLimits> এলিমেন্টের <NamespaceCountPerElement> চাইল্ড এলিমেন্টে উল্লেখ করা ভ্যালু নোট করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <NamespaceCountPerElement>-এর মান 3 হিসেবে সেট করা আছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>10</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>request</Source>
        <StructureLimits>
            <NodeDepth>10</NodeDepth>
            <AttributeCountPerElement>5</AttributeCountPerElement>
            <NamespaceCountPerElement>3</NamespaceCountPerElement>
            <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
        </StructureLimits>
        <ValueLimits>
            <Text>20</Text>
            <Attribute>15</Attribute>
            <NamespaceURI>40</NamespaceURI>
            <Comment>10</Comment>
            <ProcessingInstructionData>30</ProcessingInstructionData>
        </ValueLimits>
    </XMLThreatProtection>
    
  3. ইনপুট পেলোডের নির্দিষ্ট লাইন নম্বর (ধাপ ১-এ শনাক্ত করা হয়েছে) পরীক্ষা করুন এবং চেক করে দেখুন যে একটি এলিমেন্টের জন্য সেখানে নির্দিষ্ট করা নেমস্পেসের সংখ্যা <NamespaceCountPerElement> এলিমেন্টে (ধাপ ২-এ শনাক্ত করা হয়েছে) নির্দিষ্ট করা সংখ্যার থেকে বেশি কিনা। প্রতিটি এলিমেন্টের জন্য নেমস্পেসের সংখ্যা যদি নেমস্পেসের সংখ্যার সীমা অতিক্রম করে, তাহলে এটিই হল সমস্যার কারণ।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version = "1.0" encoding = "UTF-8"?>
    <hellos xmlns:h="https://www.w3schools.com/greeting1" xmlns:a="https://www.w3schools.com/greeting2" xmlns:b="https://www.w3schols.com/greeting3" xmlns:c="https://www.w3schools.com/greeting4">
        <a:hello1>world1</a:hello1>
        <b:hello2>world2</b:hello2>
        <c:hello2>world2</c:hello2>
        <h:hello2>world2</h:hello2>
    </hellos>
    

    উপরে দেখানো XML পেলোডের ২ নম্বর লাইনে ৩টির বেশি নেমস্পেস আছে। নেমস্পেসের সংখ্যা ৩-এর বেশি (<NamespaceCountPerElement> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু) হওয়ার কারণে আপনি নিম্নলিখিত সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: XMLThreatProtection stepDefinition XML-Threat-Protection-1: Namespace
    count exceeded 3 at line 2(possibly around char 234)
    

রেজোলিউশন

XMLThreatProtection নীতি যদি এমন পে-লোড থেকে রক্ষা করার উদ্দেশ্যে তৈরি করা হয় যা একটি এলিমেন্টে নির্দিষ্ট সংখ্যক নেমস্পেসের থেকে বেশি, তাহলে এরর মেসেজটি প্রত্যাশিত। এই ক্ষেত্রে, আর কোনও অতিরিক্ত পদক্ষেপ নেওয়ার প্রয়োজন নেই।

তবে, আপনি যদি নির্ধারণ করেন যে আরও বেশি সংখ্যক নেমস্পেস অনুমোদিত হতে পারে, তাহলে আপনার প্রয়োজনীয়তার উপর ভিত্তি করে <StructureLimits> এলিমেন্টের <NamespaceCountPerElement> চাইল্ড এলিমেন্টকে উপযুক্ত ভ্যালুতে পরিবর্তন করুন।

যেমন, আপনি যদি মনে করেন যে একটি এলিমেন্টে সর্বাধিক ৫টি নেমস্পেস থাকতে পারে, তাহলে নিম্নলিখিতভাবে নীতিটি পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</AttributeCountPerElement>
        <NamespaceCountPerElement>5</NamespaceCountPerElement>
        <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>20</Text>
        <Attribute>15</Attribute>
        <NamespaceURI>40</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>30</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

InvalidXMLPayload

সমস্যার কোড

steps.xmlthreatprotection.ExecutionFailed

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition [policy_name]:
        Execution failed. Reason: [error_description]",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Execution failed. reason: Syntax error while parsing XML prologue",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.ExecutionFailed"
        }
    }
}

কারণ

XMLProtectionPolicy নীতির <Source> এলিমেন্ট দ্বারা নির্দিষ্ট করা ইনপুট মেসেজ পেলোড সঠিক XML ডকুমেন্ট না হলে এই সমস্যা হয়।

ডায়াগনসিস

  1. সমস্যাটি যে নীতিতে হয়েছে, সেটির নাম শনাক্ত করতে সমস্যার মেসেজটি ভাল করে দেখুন। নিচের উদাহরণে নীতির নাম হল XML-Threat-Protection-1।

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: Syntax error while parsing XML prologue
    
  2. ইনপুট পেলোড পরীক্ষা করে দেখুন এবং পেলোডের মধ্যে যে XML ডকুমেন্ট পাস করা হয়েছে সেটি আসলে সঠিক ফর্ম্যাটে আছে কিনা তা চেক করুন।

    ইনপুট পেলোডের একটি উদাহরণ এখানে দেওয়া হল:

    <?xml version="1.0" encoding="UTF-8"?>
    <bookstore>
      <book category="cooking">
        <title lang="en">Easy Indian Cooking</title>
        <author>Suneeta</author>
        <year>2004</year>
        <price>300.00</price>
      </book>
    <bookstore>
    

    উপরে দেখানো XML পেলোডের ৯ নম্বর লাইনে রুট এলিমেন্ট সঠিকভাবে বন্ধ করা হয়নি, কারণ / নেই। এটি ভালোভাবে তৈরি করা XML না হওয়ার কারণে, আপনি এই সমস্যাটি দেখতে পাবেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Execution failed.
    reason: Syntax error while parsing XML prologue
    

রেজোলিউশন

XMLThreatProtection নীতি অন্তর্ভুক্ত আছে এমন যেকোনও API প্রক্সিতে সঠিক ইনপুট XML পেলোড পাস করা হয়েছে কিনা তা নিশ্চিত করুন।

উপরে বর্ণিত উদাহরণ সংক্রান্ত সমস্যাটি সমাধান করতে, ইনপুট XML পেলোডটি নিম্নলিখিতভাবে পরিবর্তন করুন:

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
  <book category="cooking">
    <title lang="en">Easy Indian Cooking
    <author>Suneeta</author>
    <year>2004</year>
    <price>300.00</price>
  </book>
</bookstore>

SourceUnavailable

সমস্যার কোড

steps.xmlthreatprotection.SourceUnavailable

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition[policy_name]: Source[var_name] is not available"
        "detail": {
            "errorcode": "steps.xmlthreatprotection.SourceUnavailable"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "XMLThreatProtection stepDefinition XML-Threat-Protection-1:
        Source requests is not available",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.SourceUnavailable"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্টে নির্দিষ্ট করা message ভেরিয়েবল যদি:

  • স্কোপের বাইরে (যে নির্দিষ্ট ফ্লোতে নীতি প্রয়োগ করা হচ্ছে সেখানে উপলভ্য নয়)
  • request, response বা message-এর মধ্যে কোনও একটি সঠিক ভ্যালু নয়

যেমন, এই নীতিটি যেখানে প্রয়োগ করা হচ্ছে সেই ফ্লোতে যদি <Source> এলিমেন্টটি এমন ভেরিয়েবলে সেট করা থাকে যা সেখানে নেই, তাহলে এই সমস্যাটি হয়।

ডায়াগনসিস

  1. XMLThreatProtection নীতির নাম এবং সমস্যার মেসেজ থেকে সোর্স ভেরিয়েবলের নাম শনাক্ত করুন। যেমন, নিচে উল্লেখ করা সমস্যার মেসেজে, XMLThreatProtection নীতিটির নাম হল XML-Threat-Protection-1এবং সোর্স ভেরিয়েবল হল requests:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Source requests
    is not available
    
  2. XMLThreatProtection নীতি পরীক্ষা করুন এবং ধাপ ১-এ শনাক্ত করা <Source> এলিমেন্টের জন্য নির্দিষ্ট করা ভ্যালু চেক করুন।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <Source> এলিমেন্টটি requests হিসেবে সেট করা আছে।

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>10</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>requests</Source>
        <StructureLimits>
            <NodeDepth>10</NodeDepth>
            <AttributeCountPerElement>5</AttributeCountPerElement>
            <NamespaceCountPerElement>3</NamespaceCountPerElement>
            <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
        </StructureLimits>
        <ValueLimits>
            <Text>20</Text>
            <Attribute>15</Attribute>
            <NamespaceURI>40</NamespaceURI>
            <Comment>10</Comment>
            <ProcessingInstructionData>30</ProcessingInstructionData>
        </ValueLimits>
    </XMLThreatProtection>
    

    <Source> এলিমেন্টের সঠিক ভ্যালু হল request, response বা message. কারণ requests হল ভুল ভ্যালু এবং যে ফ্লোতে নীতি প্রয়োগ করা হচ্ছে সেখানে এটি নেই, তাই আপনি এই সমস্যাটি পেয়েছেন:

    XMLThreatProtection stepDefinition XML-Threat-Protection-1: Source requests
    is not available
    

রেজোলিউশন

নিশ্চিত করুন যে XMLThreatProtection নীতির <Source> এলিমেন্টে সেট করা ভেরিয়েবলটি request, response বা message-এ সেট করা আছে এবং যে ফ্লোতে নীতিটি এক্সিকিউট করা হয় সেখানে সেটি আছে।

উপরে দেখানো দৃষ্টান্তমূলক নীতিটি সংশোধন করতে, আপনি <Source> এলিমেন্টটি পরিবর্তন করে request ভেরিয়েবল ব্যবহার করতে পারেন, কারণ এটি অনুরোধের ফ্লোতে রয়েছে:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>request</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</AttributeCountPerElement>
        <NamespaceCountPerElement>3</NamespaceCountPerElement>
        <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>20</Text>
        <Attribute>15</Attribute>
        <NamespaceURI>40</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>30</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>

NonMessageVariable

সমস্যার কোড

steps.xmlthreatprotection.NonMessageVariable

সমস্যার উত্তরের বডি

{
    "fault": {
        "faultstring": "Variable var_name does not resolve to a Message"
        "detail": {
            "errorcode": "steps.xmlthreatprotection.NonMessageVariable"
        }
    }
}

সমস্যার উত্তর বডির উদাহরণ

{
    "fault": {
        "faultstring": "Variable message.content does not resolve to a Message",
        "detail": {
            "errorcode": "steps.xmlthreatprotection.NonMessageVariable"
        }
    }
}

কারণ

XMLThreatProtection নীতির <Source> এলিমেন্টটি যদি Message টাইপের নয় এমন কোনও ভেরিয়েবলে সেট করা থাকে, তাহলে এই সমস্যাটি হয়।

মেসেজ টাইপ ভেরিয়েবল সম্পূর্ণ HTTP অনুরোধ ও উত্তরকে উপস্থাপন করে। বিল্ট-ইন Apigee Edge ফ্লো ভেরিয়েবল request, response ও message হল মেসেজ ধরনের। মেসেজ ভেরিয়েবল সম্পর্কে আরও জানতে, ভেরিয়েবল রেফারেন্স দেখুন।

ডায়াগনসিস

  1. সমস্যার মেসেজ থেকে সেই ভেরিয়েবলের নাম শনাক্ত করুন যা মেসেজ টাইপের ভেরিয়েবল হিসেবে সমাধান করা যায় না। যেমন, নিম্নলিখিত সমস্যার মেসেজে ভেরিয়েবলের নাম হল message.content

    Variable message.content does not resolve to a Message
    
  2. API প্রক্সিতে যেখানে সমস্যা হয়েছে সেখানে সব XMLThreadProtection নীতি পরীক্ষা করুন এবং সেই নির্দিষ্ট XMLThreadProtection নীতি শনাক্ত করুন যেখানে <Source> এলিমেন্টটি উপরে ১ নম্বর ধাপে শনাক্ত করা ভেরিয়েবল নামের সাথে নির্দিষ্ট করা হয়েছে।

    নিম্নলিখিত XMLThreatProtection নীতি সংক্রান্ত উদাহরণে, <Source>-এর মান message.content হিসেবে সেট করা হয়েছে:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
        <DisplayName>XML Threat Protection-1</DisplayName>
        <Properties/>
        <NameLimits>
            <Element>10</Element>
            <Attribute>10</Attribute>
            <NamespacePrefix>10</NamespacePrefix>
            <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
        </NameLimits>
        <Source>message.content</Source>
        <StructureLimits>
            <NodeDepth>10</NodeDepth>
            <AttributeCountPerElement>5</AttributeCountPerElement>
            <NamespaceCountPerElement>3</NamespaceCountPerElement>
            <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
        </StructureLimits>
        <ValueLimits>
            <Text>20</Text>
            <Attribute>15</Attribute>
            <NamespaceURI>40</NamespaceURI>
            <Comment>10</Comment>
            <ProcessingInstructionData>30</ProcessingInstructionData>
        </ValueLimits>
    </XMLThreatProtection>
    

    ভেরিয়েবল message.content মেসেজ টাইপের না হওয়ার কারণে, আপনি এই সমস্যাটি পেয়েছেন:

    Variable message.content does not resolve to a Message
    

রেজোলিউশন

নিশ্চিত করুন যে XMLThreatProtection নীতিতে ব্যর্থ হওয়া <Source> এলিমেন্টটি Message টাইপ ফ্লো ভেরিয়েবলে সেট করা আছে যা সেই ফ্লোতে বিদ্যমান যেখানে নীতিটি এক্সিকিউট হয়।

নীতিটি সংশোধন করতে, আপনি <Source> এলিমেন্ট পরিবর্তন করে মেসেজ ধরনের একটি ভেরিয়েবল নির্দিষ্ট করতে পারেন। যেমন, XMLThreatProtection ব্যর্থ হলে, আপনি <Source> এলিমেন্টকে message হিসেবে নির্দিষ্ট করতে পারেন:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<XMLThreatProtection async="false" continueOnError="false" enabled="true" name="XML-Threat-Protection-1">
    <DisplayName>XML Threat Protection-1</DisplayName>
    <Properties/>
    <NameLimits>
        <Element>10</Element>
        <Attribute>10</Attribute>
        <NamespacePrefix>10</NamespacePrefix>
        <ProcessingInstructionTarget>10</ProcessingInstructionTarget>
    </NameLimits>
    <Source>message</Source>
    <StructureLimits>
        <NodeDepth>10</NodeDepth>
        <AttributeCountPerElement>5</AttributeCountPerElement>
        <NamespaceCountPerElement>3</NamespaceCountPerElement>
        <ChildCount includeComment="true" includeElement="true" includeProcessingInstruction="true" includeText="true">3</ChildCount>
    </StructureLimits>
    <ValueLimits>
        <Text>20</Text>
        <Attribute>15</Attribute>
        <NamespaceURI>40</NamespaceURI>
        <Comment>10</Comment>
        <ProcessingInstructionData>30</ProcessingInstructionData>
    </ValueLimits>
</XMLThreatProtection>