Управление доступом с помощью web.config - PullRequest
1 голос
/ 26 июля 2010

Я пытаюсь контролировать доступ к своему веб-сайту с интегрированными окнами.

<?xml version="1.0"?>
<configuration>
 <system.web>
  <authentication mode="Windows"/>
   <authorization>
     <deny users="?"/>
     <allow roles="DOMAIN\The_group_that_can_access_it"/>
   </authorization>
   ...
 </system.web>
</configuration>

Кроме того, этот код не работает.Я могу получить к нему доступ, если я являюсь членом этой группы или нет.Что случилось?

Я просмотрел какой-то код и подумал, что, может быть, мне нужно переключить ? на *, но тогда, похоже, это просто отрицает все.

Спасибо,

1 Ответ

3 голосов
/ 26 июля 2010

У вас нет явного оператора deny, вы должны добавить следующую запись в конец объявлений:

<deny users="*" />

И вы можете удалить <deny users="?"/>, который запрещает неаутентифицированным пользователям. Финал <deny users="*" /> все равно откажет им. Тогда только ваша группа должна иметь доступ. Окончательный результат должен быть:

<authorization>
    <allow roles="DOMAIN\The_group_that_can_access_it"/>
    <deny users="*"/>
</authorization>

Как правило, всегда закрывайте свои списки контроля доступа с явным запретом всех или запретом любых.

...