IIS 8 ब्लॉक अनुरोध द्वारा JSON पेलोड फ़ील्ड




asp.net-mvc payload (2)

चूंकि आपने कहा:

मैं यह चाहता हूँ कि आईआईएस स्तर में वेब सर्वर स्तर के अधिक भार को शून्य कर दिया जाए जो प्रत्येक अनुरोध के लिए एक और थ्रेड बनाने की आवश्यकता है। कुछ कारणों को रोकना चाहते हैं कि वे मेरे ऐप के लिए प्रासंगिक नहीं हैं, उच्च भार में आते हैं और मैं उन्हें ग्राहकों की तरफ से नहीं रोक सकता

आपके पास 2 विकल्प हैं:

  1. फ़िल्टरिंग का अनुरोध करें
  2. URL पुनर्लेखन

कृपया IIS 7.0 का अनुरोध करें फ़िल्टरिंग और यूआरएल को उनके बारे में सबसे महत्वपूर्ण बातों को जानने के लिए लेख को ध्यान से पुन: लिखना यदि आपका चयन सर्वोच्च प्राथमिकता वाला पहला होगा, तो <denyQueryStringSequences> उपयोगी होगा, जहां यह कुछ फ़िल्टरिंग आवश्यकताओं को शामिल करता है। और regex के साथ काम करने के लिए, आपको दूसरे का उपयोग करना होगा। निम्न नमूना नियम <rewrite> तहत अनुरोध को रोकना रोक सकता है:

<rule name="Block Bad Request Strings" stopProcessing="true">
     <match url=".*" />
     <conditions logicalGrouping="MatchAny" trackAllCaptures="false">
          <add input="{QUERY_STRING}" pattern="id=([^\"]*[^-]?>)|(?:[^\\w\\s]\\s*\\\/>)|(?:>\") />
     </conditions>
     <action type="CustomResponse" statusCode="403" statusReason="Forbidden: Access is denied." statusDescription="You do not have permission" />
</rule>

अधिक जानकारी के लिए यूआरएल रीराइट मॉड्यूल कॉन्फ़िगरेशन संदर्भ देखें

मेरे पास एक MVC .NET 4 वेब सर्वर है जो अनुरोध डेटा के रूप में एक JSON स्वरूपित स्ट्रिंग के साथ HTTP पोस्ट अनुरोध स्वीकार करता है। अनुरोध को सर्वर पर घुसने से पहले IIS स्तर में कोई नियम जोड़ना है, ताकि उस जेएसओएन स्ट्रिंग पर कुछ रेगएक्स द्वारा अनुरोध को ब्लॉक किया जा सके। क्या यह संभव है?


मुझे लगता है कि एक कस्टम एचटीटीपी मॉड्यूल बनाने और जोड़ने से आपकी समस्या हल हो सकती है। एक HTTP मॉड्यूल को BeginRequest और EndRequest घटनाओं के जवाब में प्रत्येक अनुरोध पर कहा जाता है।





payload