2017-08-08 98 views
2

我想尝试在我的工作场所使用ASP.NET Core MVC或Web API,但我们只有Active Directory进行身份验证和授权。有没有任何解决方案来解决它与本地AD或我们必须改变为Java?我知道这个问题不是原创的,但我希望得到一个简单的答案。ASP.NET核心和内部AD认证

回答

2

Microsoft已发布System.DirectoryServices的预发布版本。您可以使用此命令从NuGet包管理器得到它:

安装,包装的System.DirectoryServices -Version 4.5.0-preview1-25914-04

这是工作正常,我到现在。

2

从今天开始,System.DirectoryServices在ASP.NET Core中尚不可用。你可以阅读更多here。可以使用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; 
} 

因为它有太多的感动作品,我已经创建a sample project at GitHub

+0

感谢您的回答。在我看来,微软放弃了无法使用Azure AD的用户。我不明白这个大惊小怪。 –