Обмежте доступ до сайту IIS групі AD


22

Чи можливо в IIS створити сайт в IIS і дозволити користувачам певної групи AD отримати доступ до нього?

Відповіді:


18

Наступне має працювати, залежно від версії IIS. Вам потрібно буде додати web.config, якщо у вас його немає (хоча ви повинні на IIS7) у корінь каталогу свого сайту. Наведене нижче дозволить адміністраторам домену та забороняє користувачів домену (досить зрозуміло). Не забудьте вирівняти розділи конфігурації, якщо у вас вже є розділ тощо.

<configuration>
  <location path="MyPage.aspx/php/html">
      <system.web>
         <authorization>
            <allow users="DOMAIN\Domain Admins"/>
            <deny users="DOMAIN\Domain Users"/>
         </authorization>
      </system.web>
   </location>
</configuration>

Очевидно, для налаштування вашого веб-сайту вам знадобиться автентифікація Windows під час автентифікації, але це, очевидно, у вас уже ввімкнено.


На яких версіях IIS це працює?
svandragt

14

Відповідь joshatkins не працює в IIS7. Для IIS7 вам потрібно використовувати атрибут ролі. Крім того, якщо ви хочете обмежити весь сайт, вам не потрібен елемент розташування.

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

9
Будь ласка, не використовуйте посилання на кшталт "нагорі" або "знизу", оскільки у вас немає способу знати, в якому порядку людина бачить відповіді. Проблема загострюється з часом, оскільки розміщується більше відповідей. Натомість слід посилатися на ім’я афіші відповіді, на яку посилається.
Джон Гарденєр

11

Просто додавши ще кілька балів до інших відповідей, які допомогли мені зрозуміти, як змусити це працювати після того, як у мене була основна автентифікація AD, яка працює добре з IIS.

  1. Додайте роль або функцію за допомогою Менеджера Windows Server : Веб-сервер (IIS) -> Веб-сервер -> Безпека -> Авторизація URL-адрес.
  2. Закрийте, потім знову відкрийте диспетчер IIS (якщо він відкритий), тепер ви побачите (під розділом IIS для вашого сайту) Правила авторизації . Відкрийте це.
  3. Клацніть на правій бічній панелі: Додати дозволити правило
  4. У розділі Вказані ролі або групи користувачів введіть назву потрібної групи оголошень. напр. myDomain \ myGroup та виберіть Добре .
  5. Повторіть 4 для потрібних груп.

якщо ви просто хочете редагувати файл конфігурації безпосередньо, це виглядатиме приблизно так:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        ...
        <security>
            <authorization>
                <remove users="*" roles="" verbs="" />
                <add accessType="Allow" roles="myDomain\myGroup01" />
                <add accessType="Allow" roles="myDomain\myGroup02" />
            </authorization>
        </security>
    </system.webServer>
</configuration>

Вам також потрібно включити автентифікацію Windows (NTLM / Curb). Інакше, якщо ідентифікацію сеансу веб-переглядача неможливо визначити, як може працювати авторизація на основі ролей? Дотримуючись вашого вказівки та включивши автентифікацію Windows, це працює!
KFL

3

Якщо використання правил авторизації web.config не спрацьовує (наприклад, через те, що працює сценарій CGI), ви можете використовувати систему дозволів папок, щоб вимкнути спадкування, видалити користувачів IIS (щоб ніхто не мав доступу для читання) і просто додати групу безпеки в з доступом до читання. Вам також потрібно включити певну форму аутентифікації (наприклад, Basic або Windows Integrated), щоб відвідувач розпізнавався.


Мені подобається, що цей метод може не відповідати потребам кожного, але немає потреби возитися з web.config
особа

1

Надання дозволу читання в папці лише цій доменній групі також працює.


0

Я знаю, що це дуже старе питання, але це те, що мені потрібно в моєму тестовому середовищі.

Такий підхід працює для мене, і я отримую спливаюче вікно для входу, і я можу ввійти без жодних проблем.

Мені було цікаво, як я можу налаштувати його на використання SSO? Якщо користувач, який увійшов до системи, є членом групи безпеки, тоді запитайте облікові дані.

Мій IIS працює на Windows Server 2016 1607, а веб-сайт - статичний HTML.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.