ASP.NET Core 1.1 - 使用登录屏幕进行Windows身份验证(MVC视图)

问题描述:

我正在开发ASP.NET Core 1.1 - MVC应用程序。我需要使用登录屏幕(mvc视图)来认证Windows用户。我需要使用 Active Directory来验证用户身份。ASP.NET Core 1.1 - 使用登录屏幕进行Windows身份验证(MVC视图)

我发现了精彩的文章, http://tech.trailmax.info/2016/03/using-owin-and-active-directory-to-authenticate-users-in-asp-net-mvc-5-application/ 我下载了示例应用程序和示例本身很好。但我因为需要使用.net核心1.1来实现这个功能,所以不支持 System.DirectoryServices.AccountManagement和Microsoft.Owin.Security.Cookies,Microsoft.Owin.Host.SystemWeb nuget软件包。 所以它似乎并没有这个解决方案将为我工作。

我调查了,发现Novell.Directory.Ldap.NETStandard(ASP.NET Core and on premise AD authentication),它适用于Active Directory用户验证(.NET 1.1核心)

我还发现Microsoft.AspNetCore.Authentication.ActiveDirectory(middleware.github .COM/OneBitSoftware/Microsoft.AspNetCore.Authentication.ActiveDirectory)

一个,AspNetCoreActiveDirectoryStarterKit(github.com/WinLwinOoNet/AspNetCoreActiveDirectoryStarterKit)

是否有其他方法可以让我做到这一点?任何人都有使用上述选项的经验,并建议我是好的? 请建议。

+0

由于安全考虑,您不能在ASP.NET Core中支持AD身份验证(您无法限制登录,您不能临时禁用帐户以进行多次尝试等),因为它基本上允许对AD进行强力操作。对于Intranet应用程序,您应使用IIS或Weblistener的NTLM和Windows身份验证功能从当前登录到Windows的用户(不带用于输入凭据的表单)获取访问令牌,或使用使用oauth/openid对用户进行身份验证的Azure AD (可以将本地AD设置为与Azure AD同步) – Tseng

+0

Azure AD连接/同步上的https://docs.microsoft.com/zh-cn/azure/active-directory/connect/active-directory-aadconnect – Tseng

+0

感谢你的回复。这实际上很难过。因此,我们无法在asp.net核心mvc应用程序(无Azure AD)中查询活动目录?这篇文章如何:https://nicolas.guelpa.me/blog/2017/02/15/dotnet-core-ldap-authentication.html – vibs

感谢您的意见。它也很有帮助。

它在Novell.Directory.Ldap.NETStandard Nuget的帮助下为我工作。我能够在我的代码中引用LDAP的东西。 我引用了https://nicolas.guelpa.me/blog/2017/02/15/dotnet-core-ldap-authentication.html文章,根据我的要求进行了一些代码改进和修改。请随时编写您的观点。