___ qstntxt ___

Ich habe eine .NET Web API mit einer Reihe von Endpunkten / Methoden, die eine Angular App aufruft. Ich möchte jetzt das Login-System gegen unser Active Directory implementieren und mich fragen, was meine Möglichkeiten sind.

Früher war es ganz einfach: Windows- oder Formularauthentifizierung und dann nur eine einfache Konfiguration in der Datei web.config und möglicherweise ein benutzerdefinierter Anbieter. Aber jetzt scheint es viel mehr Optionen mit OWIN, OAuth, Token-basierte Authentifizierung, etc. zu geben.

Wo fange ich an? Ich habe ein Formular mit Benutzername, Passwort und einem Login-Button in der Angular App, und ich habe das Active Directory im Backend. Was soll passieren, nachdem der Benutzer die Login-Taste gedrückt hat? Jede Richtung würde helfen.

Danke.

    
___ tag123aspnet ___ ASP.NET ist ein Framework zur Entwicklung von Microsoft-Webanwendungen, mit dem Programmierer dynamische Websites, Webanwendungen und Webdienste erstellen können. Es ist nützlich, dieses Tag in Verbindung mit dem Typ des Projekttyps zu verwenden, z. [asp.net-mvc], [asp.net-webforms] oder [asp.net-web-api]. Verwenden Sie dieses Tag NICHT für Fragen zu ASP.NET Core - verwenden Sie stattdessen [asp.net-core]. ___ tag123angularjs ___ Für Fragen zu AngularJS (1.x), dem Open-Source-JavaScript-Framework. Verwenden Sie dieses Tag NICHT für Angular 2 oder höhere Versionen. Verwenden Sie stattdessen das [eckige] -Tag. ___ tag123aspnetwebapi ___ Die ASP.NET-Web-API ist ein Framework zum Erstellen von HTTP-Diensten für Clients wie Browser und mobile Geräte. Es basiert auf dem Microsoft .NET Framework und ist ideal für den Aufbau von RESTful-Diensten. ___ tag123authentication ___ Authentifizierung ist der Prozess der Feststellung, ob jemand oder etwas in der Tat ist, wer oder was es ist. AngstJS mit .NET Web API: Authentifizierung mit AD ___ tag123net ___ Das .NET-Framework ist ein Software-Framework, das hauptsächlich für das Microsoft Windows-Betriebssystem entwickelt wurde. Es enthält eine Implementierung der Basisklassenbibliothek, Common Language Runtime (allgemein als CLR bezeichnet), Common Type System (allgemein als CTS bezeichnet) und Dynamic Language Runtime. Es unterstützt viele Programmiersprachen, einschließlich C #, VB.NET, F # und C ++ / CLI. NICHT für Fragen zu .NET Core verwenden. ___ answer27574371 ___

Nun, es hängt davon ab, was Sie wirklich brauchen.

Wenn Sie nur AD-Benutzer authentifizieren möchten, können Sie versuchen, sich in ihrem Namen in AD zu authentifizieren, und im Erfolgsfall geben Sie entweder einen Token oder einen Authentifizierungscookie zurück.

Aber ich denke nicht, dass es eine gute Idee ist, Benutzer dazu zu bringen, ihr Domänenkennwort zu verwenden, es sei denn, Sie verfügen über eine Zwei-Faktor-Authentifizierung.

Es ist besser, das AD-Schema mit zusätzlichen Daten für die Authentifizierung durch Ihren Dienst zu erweitern oder sogar einen eigenständigen Authentifizierungsserver mit zugehörigen Domänenbenutzerinformationen zu verwenden. Schauen Sie, wie es im SQL-Server gemacht wird (aber in umgekehrter Richtung): Sie müssen den internen Benutzer definieren, der der Domänenanmeldung entspricht. Dieser Ansatz ermöglicht es Ihnen, Benutzer zu haben, die nicht zu AD gehören, manchmal kann dies für das Outsourcing von Aufgaben wichtig sein.

Sehen Sie sich IdentityServer

an     
___

8

Ich habe eine .NET Web API mit einer Reihe von Endpunkten / Methoden, die eine Angular App aufruft. Ich möchte jetzt das Login-System gegen unser Active Directory implementieren und mich fragen, was meine Möglichkeiten sind.

Früher war es ganz einfach: Windows- oder Formularauthentifizierung und dann nur eine einfache Konfiguration in der Datei web.config und möglicherweise ein benutzerdefinierter Anbieter. Aber jetzt scheint es viel mehr Optionen mit OWIN, OAuth, Token-basierte Authentifizierung, etc. zu geben.

Wo fange ich an? Ich habe ein Formular mit Benutzername, Passwort und einem Login-Button in der Angular App, und ich habe das Active Directory im Backend. Was soll passieren, nachdem der Benutzer die Login-Taste gedrückt hat? Jede Richtung würde helfen.

Danke.

    
Prabhu 19.12.2014, 21:25
quelle

1 Antwort

1

Nun, es hängt davon ab, was Sie wirklich brauchen.

Wenn Sie nur AD-Benutzer authentifizieren möchten, können Sie versuchen, sich in ihrem Namen in AD zu authentifizieren, und im Erfolgsfall geben Sie entweder einen Token oder einen Authentifizierungscookie zurück.

Aber ich denke nicht, dass es eine gute Idee ist, Benutzer dazu zu bringen, ihr Domänenkennwort zu verwenden, es sei denn, Sie verfügen über eine Zwei-Faktor-Authentifizierung.

Es ist besser, das AD-Schema mit zusätzlichen Daten für die Authentifizierung durch Ihren Dienst zu erweitern oder sogar einen eigenständigen Authentifizierungsserver mit zugehörigen Domänenbenutzerinformationen zu verwenden. Schauen Sie, wie es im SQL-Server gemacht wird (aber in umgekehrter Richtung): Sie müssen den internen Benutzer definieren, der der Domänenanmeldung entspricht. Dieser Ansatz ermöglicht es Ihnen, Benutzer zu haben, die nicht zu AD gehören, manchmal kann dies für das Outsourcing von Aufgaben wichtig sein.

Sehen Sie sich IdentityServer

an     
Pavel Voronin 19.12.2014, 21:50
quelle