我正在尝试在ASP.net应用程序中使用AD轻量级目录服务进行用户身份验证,并且不想使用Forms身份验证。有没有办法使用Windows身份验证对其进行身份验证。
<authentication mode="Windows" />
答案 0 :(得分:2)
你可以试试这个
How To: Use Windows Authentication in ASP.NET 2.0
How To: Use Forms Authentication with Active Directory in ASP.NET 2.0
编辑: 这对我有用:
<!-- web.config -->
...
<system.web>
...
<compilation debug="true">
<assemblies>
<add assembly="System.DirectoryServices, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
</assemblies>
</compilation>
<authentication mode="Windows"/>
<identity impersonate="true"/>
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider"/>
<authorization>
<deny users="?"/>
<allow users="*"/>
</authorization>
</system.web>
...
然后在代码中
//page.cs
...
string userName = HttpContext.Current.User.Identity.Name;
...
您应该可以使用DirectoryEntry Class等自定义代码,例如Enumerating Users and Groups。您可以在此处找到有关Using Active Directory Lightweight Directory Services的更多信息。