2009-07-13 3 views
0

Мне было интересно, можете ли вы защитить файлы xml с помощью проверки подлинности форм в ASP.NET 3.5. У меня есть лицензионные ключи, которые можно найти в Интернете, но вы не сможете загрузить их, если вы не вошли в систему.Проверка подлинности форм для xml-файлов

Для страниц aspx это работает автоматически, но не для файлов xml.

ответ

1

Поместите XML-файлов в определенной папке, добавьте web.config в эту папку, содержащую: '?'

<configuration> 
    <system.web> 
    <authorization> 
     <deny users="?"/> 
     <allow roles="admin"/>  
    </authorization> 
    </system.web> 
</configuration> 

Смените (это означает, что анонимные пользователи, то есть пользователи не вошли в систему), чтобы «отключить» всех пользователей (сервер будет иметь доступ [например, через Server.MapPath и т. д.]).

Соответственно, вы можете играть с ролями или удалять эту строку.

Кроме того, считают, что в файле web.config можно запретить и разрешить определенные расширения следующим образом:

<system.web> 
    <httpHandlers> 
     <remove verb="*" path="*.xml" /> 
     <!--or--> 
     <add verb="*" path="*.xml" type="System.Web.HttpForbiddenHandler" /> 
    </httpHandlers> 
</system.web> 

Пожалуйста, не полагайтесь на последнем фрагменте кода, пока вы убедитесь, что ваши потребности. Вы можете узнать больше на Http Handlers, или взгляните на How to: Register HTTP Handlers.

Я также заметил, что кто-то задал аналогичный вопрос here, вам может быть полезно.

Надеюсь, что вы быстро найдете решение, удачи!

Смежные вопросы