繁体   English   中英

ASP.NET Identity是否可以与没有ADFS的本地Active Directory一起使用?

[英]Does ASP.NET Identity work with an on-premise Active Directory without ADFS?

我可以使用ActiveDirectoryMembership-Provider找到示例,但是找不到有关如何使用ASP.NET Identity在Intranet上下文中使用Active Directory进行身份验证的信息。

身份框架应该代替成员资格和角色提供者,但是它似乎不允许没有ADFS的身份验证到本地活动目录。

是否可以将身份与非ADFS Active Directory一起使用? 如果没有,建议改用ActiveDirectoryMembership-Provider吗?

我目前正在使用LdapConnection(System.DirectoryServices.Protocols)将用户绑定到AD,并将用户名存储为会话变量。 然后,我可以检查用户是否已登录到每个页面的PreInit事件中。 但是我正在寻找一种使用应用程序范围内身份验证的方法,以及一种检查AD中用户角色的方法。

您需要使用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验证用户。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM