Asp.net-Core
ASP.NET Core 和本地 AD 身份驗證
我想在我的工作場所嘗試使用 ASP.NET Core MVC 或 Web API,但我們只有 Active Directory 來進行身份驗證和授權。是否有任何解決方案可以使用本地 AD 解決它,或者我們必須針對 Java 進行更改?我知道這個問題不是原創的,但我想得到一個簡單的答案,拜託。
微軟已經發布了
System.DirectoryServices. 您可以使用以下命令從 NuGet 包管理器獲取它:Install-Package System.DirectoryServices -Version 4.5.0-preview1-25914-04到目前為止,這對我來說效果很好。
截至今天,
System.DirectoryServices在 ASP.NET Core 中尚不可用。你可以在這裡閱讀更多。同時,您可以使用
Novell.Directory.Ldap.NETStandard. 例如,public bool ValidateUser(string domainName, string username, string password) { string userDn = $"{username}@{domainName}"; try { using (var connection = new LdapConnection {SecureSocketLayer = false}) { connection.Connect(domainName, LdapConnection.DEFAULT_PORT); connection.Bind(userDn, password); if (connection.Bound) return true; } } catch (LdapException ex) { // Log exception } return false; }由於它有太多的移動元件,我在 GitHub 創建了一個範例項目。