Можно ли использовать как проверку подлинности с помощью форм, так и проверку подлинности Windows на сайте ASP.NET? - PullRequest
2 голосов
/ 12 мая 2011

У меня есть сайт, на котором подавляющее большинство контента будет защищено с помощью проверки подлинности с помощью форм.Однако есть одна подпапка, которая будет использоваться внутри административного персонала.Я хотел бы защитить эту папку с помощью аутентификации Windows.Это возможно?Должен ли я сделать папку администратора виртуальным каталогом?

РАЗЪЯСНЕНИЕ: административному персоналу не требуется доступ к основному сайту.Это действительно два отдельных сайта / приложения.Обычные пользователи получат доступ к основному приложению через проверку подлинности с помощью форм (и никогда не получат доступ к папке администратора).А администраторы получат доступ к приложению администратора через проверку подлинности Windows (и никогда не зайдут на основной сайт).

Спасибо, Кори

Ответы [ 4 ]

1 голос
/ 12 мая 2011

Да, это возможно, но вы должны создать собственный поставщик членства или интерфейс, чтобы разрешить это.Невозможно указать отдельные методы проверки подлинности для подпапок, если они не находятся в совершенно разных проектах / доменах приложений.

Один из способов достижения этого - использование поставщика членства LDAP и изменение соединения ldap на основеимя пользователя (если есть заметный способ сделать это).

Еще один метод - предоставить отдельный веб-сайт, который использует аутентификацию Windows для входа в систему, а затем создает пользовательский файл cookie для пользователя и передаетони возвращаются на исходный веб-сайт, идентифицирующий человека как члена административного персонала.

Затем можно защитить папку, используя элементы <location> в файле web.config.

0 голосов
/ 19 июня 2011

Поместите администрацию сайта в собственное приложение - щелкнув правой кнопкой мыши по папке в диспетчере IIS и выбрав команду «Преобразовать в приложение».

Как только это будет сделано, вы можете настроить метод аутентификации в приложении, выделив папку приложения в диспетчере IIS, а затем выбрав аутентификацию и настроив ее (или вы можете сделать это трудным способом через web.config, если вы не можете удаленно машина).

0 голосов
/ 19 июня 2011

Это может быть так же просто, как щелкнуть правой кнопкой мыши папку администратора в проводнике Windows и установить права на вкладке Безопасность.

0 голосов
/ 12 мая 2011

Если бы я собирался создать сайт со смешанной аутентификацией, я бы настроил сайт для использования веб-форм. Затем я бы настроил виртуальное приложение внутри этого приложения, которое состояло из тех же данных формы auth web.config, но настроенных на использование проверки подлинности Windows.

На странице входа в систему сайта аутентификации Windows после проверки их учетных данных я бы вручную вызвал FormsAuthentication для создания токена аутентификации. На этом этапе вы можете перенаправить пользователя на сайт проверки подлинности с помощью форм, и они должны войти в систему (если информация обо всех файлах cookie для проверки подлинности форм одинакова для обоих сайтов, это может также включать необходимость установки одинаковых ключей компьютера для обоих сайтов). Приложения).

Я специально этого не делал, но это определенно должно быть жизнеспособным (и, вероятно, одним из наиболее оптимальных) решений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...