Настройка IIS для защиты папки администратора - PullRequest
0 голосов
/ 24 марта 2011

Я использую проверку подлинности Windows с моим приложением .NET, возможно ли настроить IIS, чтобы только пользователи из группы администраторов могли получить доступ к папке администратора, а другие получат ошибку?где это сделать?в коде?или в IIS есть настройка?

1 Ответ

0 голосов
/ 25 марта 2011

Настройка веб-приложения для проверки подлинности Windows

Чтобы настроить веб-приложение для проверки подлинности Windows, выполните следующие действия:

  • Нажмите Пуск, выберите Программы,выберите Администрирование, а затем нажмите Информационные службы Интернета.
  • Отображаются информационные службы Интернета MMC .Разверните узел «Компьютер», а затем разверните веб-сайт, использующий проверку подлинности Windows.
  • Щелкните приложение веб-сайта.
  • В меню «Действие» выберите пункт «Свойства».
  • В разделе «Свойства» выберите пункт «Свойства».вкладка «Безопасность каталога».
  • В разделе «Анонимный контроль доступа и аутентификации» нажмите «Изменить».
  • В разделе «Методы аутентификации» выберите «Встроенная проверка подлинности Windows».Снимите все остальные флажки.
  • Нажмите ОК.
  • В Свойствах нажмите ОК.Ваше веб-приложение теперь настроено на прием действительных учетных записей пользователей.

Затем в вашем файле web.config включите проверку подлинности Windows.

<authentication mode="Windows" />

Также необходимо включить RoleManage внутри вашего web.config AspNetWindowsTokenRoleProvider определен в machine.config, поэтому вам просто нужно установить.

<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider"></roleManager>

Затем вы можете разрешить и запретить определенных пользователей или группы пользователей (роли)

<configuration>
<!-- empty means files at root path -->
 <location path="">
  <system.web>
    <authorization>
      <!--Allowing any user of Administrators group,
        you can provide more separating by comma-->
      <allow roles="domainname\Administrators" />
      <deny users="*" />    <!-- * mean any user-->
    </authorization>
  </system.web>
 </location>
</configuration>

<configuration>
<!-- means all files inside AdminFolder -->
 <location path="AdminFolder">
  <system.web>
    <authorization>
      <!--Allowing any user of Administrators group,
        you can provide more separating by comma-->
      <allow roles="domainname\Administrators" />
      <deny users="*" />    <!-- * mean any user-->
    </authorization>
  </system.web>
 </location>
</configuration>

Я проверил это, и это сработало.Продолжайте читать Как: использовать проверку подлинности Windows в ASP.NET 2.0

Удачи!

...