我可以找到使用ActiveDirectoryMembership-Provider的示例,但我找不到有关如何在具有ASP.NET标识的intranet上下文中对Active Directory进行身份验证的信息。
身份框架应该取代成员和角色提供者,但它似乎不允许在没有ADFS的情况下对内部活动目录进行身份验证。
有没有一种方法可以对非ADFS Active Directory使用标识?如果没有,是否建议使用ActiveDirectoryMembership-Provider?
我目前正在使用LdapConnection (System.DirectoryServices.Protocols)将用户绑定到AD,并将用户名存储为会话变量。然后,我可以检查用户是否登录到每个页面的PreInit事件中。但我正在寻找一种方法来使用应用程序范围的身份验证与一种检查AD中的用户角色的方法。
发布于 2016-02-19 20:24:36
您需要使用ADVAPI32.dll来验证Intranet Active Directory中的用户。
[DllImport("ADVAPI32.dll", EntryPoint = "LogonUserW", SetLastError = true, CharSet = CharSet.Auto)]
public static extern bool LogonUser(string lpszUsername, string lpszDomain, string lpszPassword, int dwLogonType, int dwLogonProvider, ref IntPtr phToken);
LogonUser(userName, domainName, password, 3, 1, ref token);此代码可以帮助您使用Active Directory验证用户。
https://stackoverflow.com/questions/35505052
复制相似问题