2017-03-22 4 views
0

Wir haben ein Setup, bei dem eine Webanwendung eines Drittanbieters mit ADFS als Zugriffssteuerungsserver verwendet wird. Das hat eine Weile gut funktioniert.Benutzerdefinierter Authentifizierungsadapter in ADFS als primärer Schritt

Jetzt müssen wir eine benutzerdefinierte Authentifizierungsrichtlinie in ADFS installieren, um den Authentifizierungsprozess an einen weiteren benutzerdefinierten, inhouse erstellten Server zu delegieren und benutzerdefinierte, dynamische Regeln zu verwenden.

Von unserem Verständnis ist dies eine Vogelperspektive der allgemeinen ADFS Authentifizierung Pipeline:

enter image description here

Im Grunde ist es ganz einfach, den Authentifizierungsprozess mit einem benutzerdefinierten, aber sekundärem Schritt zu erhöhen ist es unmöglich, Überspringen Sie den Authentifizierungsunterprozess Primary.

Wir schafften eine Multi Factor Authentication Adapter (im Grunde eine .NET-Assembly, die zu den ADFS Konventionen abonniert) zu implementieren und es erfolgreich installieren innerhalb unserer ADFS: enter image description here

Leider ist unsere Situation erfordert, dass wir den ersten Schritt anpassen und reagieren unterschiedlich auf verschiedene Szenarien. Zum Beispiel:

  • vielleicht Host eines benutzerdefinierten Login-Formular, die vielleicht auf einen speziell angefertigten reagieren, nicht ADFSOAuth Zugriffstoken
  • etc
Berechtigungsnachweise mit den AD
  • validiert

    Wenn der Endbenutzer gezwungen wird, Anmeldeinformationen von Anfang an bereitzustellen, ist dies ein Deal-Breaker.

    Hat jemand eine Idee, wie dies erreicht werden könnte?

    Wir verwenden ADFS auf Windows Server 2012 R2. Diese Version von ADFS erfordert keine Vorinstallation von IIS.

    Wir haben einen interessanten Artikel über ADFS 2.0 gefunden, der viel älter ist als das, was wir verwenden und erfordert IIS. Der Artikel enthält ein Beispiel dafür, wie die Anmeldeseite von zu ändern, was scheint der primäre Authentifizierungsschritt zu sein:

    https://social.technet.microsoft.com/wiki/contents/articles/1600.ad-fs-2-0-how-to-change-the-local-authentication-type.aspx

    wir nicht, dass beispielsweise auf unserem ADFS zu replizieren schafften.

  • +1

    Was Sie versuchen, ist nicht möglich. Adfs on 2012 r2 hat primäre Auth-Provider festgelegt, die Sie nicht ändern oder anpassen können. Das Wiki diskutiert lediglich, wie die Reihenfolge der Auth-Handler zu sortieren ist. Ihre beste Wette ist es, einen anderen Idp als Schadenprovider zu verwenden. – maweeras

    Antwort

    2

    Gemäß @maweeras können Sie nicht für ADFS 3.0 und höher.

    ADFS 2.1 und höher wurde auf IIS ausgeführt, sodass Sie Zugriff auf die Website hatten und Änderungen am Code vornehmen konnten.

    Dies führte zu Leuten, die alle Arten von Sicherheitslöchern vorstellten, für die ADFS verantwortlich gemacht wurde, so dass es gesperrt wurde.

    Gemäß dem Vorschlag, z.mit dem Identityserver, der Open Source ist und die Änderungen dort durchführt.