2013-08-08 2 views
1

Возможно ли аутентификация пользователя с использованием членства в Active Directory с использованием веб-страниц с использованием asp.net? То, что я заметил из большинства примеров, которые я видел в Интернете, заключается в том, что веб-страницы используют простой поставщик членства.Веб-страницы ASP.NET и членство в AD

ответ

2

Я успешно использовал эту установку в прошлом для проверки подлинности с помощью Active Directory на .net веб-страниц: http://msdn.microsoft.com/en-us/library/ff650308.aspx

UPDATE:

Предыдущая ссылка будет работать на "Web Forms"/рамочные 2,0. Это похоже на «Web-страницы»: http://www.mikesdotnetting.com/Article/216/Windows-Authentication-With-ASP.NET-Web-Pages

Я никогда не использовал метод, описанный для веб-страниц, но, просматривая код и сравнивая его, похоже, делает то же самое, что отключает стандартная аутентификация SimpleMembership и использование AD. Надеюсь это поможет.

+0

Да, но я использую технологию веб-страниц asp.net, а не веб-формы. http://www.asp.net/web-pages – Robert

+0

Будет ли это работать и с веб-страницами asp.net? – Robert

+0

Извините, я даже не знал, что было официально что-то называемое «Веб-страницы ASP.NET». Я обновил ответ. – StronglyTyped

1

Если вы пытаетесь использовать пользовательскую страницу входа с вашим приложением asp.net с помощью проверки подлинности с помощью форм, вы можете легко использовать AD. В разделе «Аутентификация форм» в вашем Web.config поместите поставщика членства, указанный ниже. Затем в вашем соединенииСтраницы разместите AD Service connection ниже с вашей информацией. После этого, поскольку у вас будет больше страниц, вы хотите убедиться, что они не могут просто просто перейти к этим страницам. Отказав пользователей этой странице с помощью. Тогда тот, кто имеет учетную запись Active Directory, может получить доступ к этому сайту. Рекомендуется использовать роли, чтобы запретить пользователям доступ к определенным частям веб-сайта. Вы также можете изменить режим аутентификации с «Формы» на «Windows», и для этого используется вход в систему AD. Мне нужно было быть немного более безопасным, потому что некоторым людям в моей компании не нужно видеть этот сайт. Для этого я проверяю имя пользователя на базу данных SQL. Пока имя пользователя совпадает с именем в базе данных, они могут войти в систему. Надеюсь, это поможет!

<membership defaultProvider="AspNetActiveDirectoryMembershipProvider"> 
    <providers> 
    <clear /> 
    <!--Membership provider for Active Directory--> 
    <add name="AspNetActiveDirectoryMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ADService" attributeMapUsername="sAMAccountName"/> 
    </providers> 
</membership> 


<connectionStrings> 
    <add name="ADService" connectionString="LDAP://YOURDOMAINNAME/OU=YOURORGANIZATIONALGROUP,DC=YOURDOMAINCONTROLLER,DC=net" /> 
    </connectionStrings> 


//This deny's all users who do not have an AD account. 
<location path="Default.aspx"> 
    <system.web> 
     <authorization> 
     <deny users="?" /> 
     </authorization> 
    </system.web> 
    </location> 
+0

И делает ли это работу с веб-страницами asp.net? – Robert

+1

Это должно сработать. Для проверки подлинности используется web.config. Так что пока вы используете web.config с вашими веб-страницами asp.net. Файл web.config - это xml, поэтому я не вижу причины, почему это не сработает. – Humpy

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