2017-08-08 16 views
2

Ich möchte versuchen, ASP.NET Core MVC oder Web API an meinem Arbeitsplatz zu verwenden, aber wir haben nur Active Directory Authentifizierung und Autorisierung. Gibt es eine Lösung, um es mit einem On-Premise-AD zu lösen, oder müssen wir für Java wechseln? Ich weiß, dass diese Frage nicht originell ist, aber ich würde gerne eine einfache Antwort darauf erhalten.ASP.NET Core und On-Premise-AD-Authentifizierung

Antwort

2

Microsoft hat eine Vorabversion für System.DirectoryServices veröffentlicht. Sie können es von nuget Paket-Manager erhalten Sie diesen Befehl:

Install-Package System.DirectoryServices -Version 4.5.0-preview1-25914-04

Das bis jetzt für mich arbeitet gut.

2

Ab heute System.DirectoryServices ist noch nicht in ASP.NET Core verfügbar. Sie können mehr lesen here.

In der Zwischenzeit können Sie Novell.Directory.Ldap.NETStandard verwenden. Zum Beispiel

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; 
} 

Da es zu viele bewegliche Teile hat, ich habe a sample project at GitHub erstellt.

+0

Danke für Ihre Antwort. Mir scheint, Microsoft hat seine Benutzer, die Azure AD nicht verwenden können, aufgegeben. Ich verstehe diesen groben Aufwand nicht. –

Verwandte Themen