2017-01-02 12 views
0

Eine dritte Partei wird mein Skript implementieren, das eine Schaltfläche auf ihrer Site einfügt, die eine angular2 Anwendung in einem neuen Fenster auf meinem Server öffnet.Wie man Identityserver4 Frontend und Backend trennt

Die Anwendung angular2 authentifiziert den Benutzer mit identityserver4, der ebenfalls auf meinem Server gehostet wird, sich jedoch in einer anderen Subdomäne befindet.

Der Benutzer erhält dann einige Optionen, um verschiedene Dinge in der angular2-Anwendung zu tun, aber schließlich wird der JWT an die dritte Partei weitergegeben.


Also, was ich tun möchte, ist seperate die Aussicht von this identityserver4 Projekt zu einem separaten angular2 Projekt, das auf einer anderen Sub-Domain von dem identityserver sein wird.

Also mein Problem ist, wie bekomme ich die JWT von einer Javascript-Anwendung, die auf sub1.mydomain.com von IdentityServer4 läuft, die auf sub2.mydomain.com läuft, die den Client/Benutzername/Passwort validiert und gibt eine JWT?

Ist das überhaupt möglich?

Edit: Versuchte Tried To Visualize

Antwort

0

Gut sichtbar zu machen, das möglich sein sollte. Da Sie keinen Code gezeigt haben, ist es schwierig, Ihnen bei den Einzelheiten zu helfen.

Wenn Sie versuchen, die hervorragende Anleitung zu folgen, die sie gemacht haben IdentityServer4_jsclient

Sie werden Ihnen zeigen, wie das Einrichten eines seperat Javascript-Client. Dieser Client wird Ihre Angular2.0-Anwendung sein.

Dann können Sie entweder die Vorlagen verwenden, die sie in dem von Ihnen erwähnten Link angegeben haben, um einen Login-Flow zu erhalten. Oder Sie können Ihre eigene Login-Flow-Anwendung programmieren, die den Benutzern eine Möglichkeit bietet, sich anzumelden. Sehen Sie sich ihren Login-Flow in der Kurzanleitung an und versuchen Sie zu verstehen, wie es funktioniert. Sie sollten dieses Verhalten mit einer SPA-Anwendung nachahmen können.

+0

aber ich brauche den "login flow", um meine angular2-Anwendung auf einer separaten Subdomain vom Identityserver zu sein. – user3621898

+0

@ user3621898 Warum möchten Sie, dass sich Ihr Login-Fluss (angular2-App) in einer anderen Sub-Domain befindet als der Identity-Server? Es sollte auch möglich sein. Sie müssen durch ihren Schnellstartfluss schauen. Machen Sie sich mit den erforderlichen Schritten vertraut, um sich anzumelden, und replizieren Sie sie anschließend in Ihrer angular2-App. Verwenden von Ajax-Anrufen anstelle von Seitenänderungen –

+0

Da viele andere Anwendungen den Identityserver verwenden werden und viele Logik, die nicht mit dem Identityserver in Verbindung stehen, werden in der angular2 App vorhanden sein, so dass ich sie so weit wie möglich trennen möchte. – user3621898

Verwandte Themen