جمعه, ۷ اردیبهشت, ۱۴۰۳ / 26 April, 2024
مجله ویستا

اعمال محدودیت مشاهده فایل های XML و XSL در ASP.NET


اعمال محدودیت مشاهده فایل های XML و XSL در ASP.NET
XML یک فرمت استاندارد برای ذخیره سازی داده است که امروزه از آن در اکثر سایت ها به منظور مدیریت محتوا استفاده می گردد . اغلب سایت ها از XML برای ذخیره سازی داده و از XSL و سایر StyleSheets برای نمایش داده استفاده می نمایند. فایل های XML را می توان نظیر صفحات وب ایستا از سرویس دهنده وب درخواست و پس از ارسال، محتویات آنان توسط مرورگر نمایش داده می شود .
با استفاده از HTTP handlers می توان امکان مشاهده مستقیم اینگونه فایل ها از طریق مرورگر را غیرممکن نمود . HTTP handlers ، دارای انعطاف لازم به منظور برخورد با فایل های متفاوت با توجه به نوع انشعاب آنان می باشد . با استفاده از پتانسیل فوق می توان امکان دستیابی و یا عدم دستیابی به فایل هائی با انشعاب خاص را فراهم نمود . برای اعمال محدودیت مشاهده یک فایل XML و سایر فایل های استاتیک ، می توان مراحل زیر را دنبال نمود :
اضافه کردن کد زیر در فایل Web.config و در بخش <System.web>

اعمال تغییرات لازم در فایل Web.Config
<httpHandlers>
<add verb="*" path="*.xml" type="System.Web.HttpForbiddenHandler"/>
</httpHandlers>

در IIS ، بر روی دایرکتوری مجازی مربوطه کلیک سمت راست نموده و گزینه properties را انتخاب نمائید .
با کلیک بر روی دکمه Configuration ( موجود در بخش Home Directory ) ، لیستی از تنظیمات انجام شده در ارتباط با برنامه (انشعاب ها و مسیرهای اجرائی مربوط به هریک از آنان ) نمایش داده می شود .
پس از کلیک بر روی دکمه Add و فعال شدن جعبه محاوره ای مربوطه ، از طریق دکمه browse فایل aspnet_isapi.dll موجود در مسیر windir%Microsoft.NETFrameworkv۱.۱.۴۳۲۲ را آدرس دهی نموده تا در بخش "Executable" نمایش داده شود .
انشعاب فایل مورد نظر ( نظیر xml . ) را در قسمت "Extension" تایپ نمائید .
در بخش "Verb" بر روی گزینه "Limit" کلیک نموده و "GET,HEAD,POST,DEBUG" را تایپ نمائید .
گزینه OK را انتخاب و در ادامه دکمه Apply و نهایتا" OK را فعال نمائید .
پس از انجام مراحل فوق ، در صورتی که از طریق مرورگر درخواست یک فایل XML را داشته باشیم، با پیام "This type of page is not served" مواجه خواهیم شد .
فرآیند فوق را می توان در سطح System نیز اعمال نمود ( در مقابل سطح Application ) . بدین منظور می بایست Handlers در فایل Machin.config اضافه گردد . در چنین وضعیتی سیاست تعریف شده در ارتباط با تمامی برنامه های ASP.NET موجود بر روی سیستم اعمال خواهد شد .
از فرآیند فوق می توان به منظور اعمال محدودیت مشاهده سایر فایل های ایستا نظیر فایل های XSL نیز استفاده نمود .


همچنین مشاهده کنید