5

Ich verwende die Thinktecture.IdentityServer.v2-App, um SSO für einige interne Apps auszuführen, möchte jedoch die Anmeldeseite für jede Anwendung anpassen, um eine reibungslosere Benutzererfahrung zu ermöglichen. Ich kann keinen Weg finden, das zu tun.Gibt es eine Möglichkeit, die Thinktecture.IdentityServer.v2-Anmeldeseite anzupassen?

Kann die Anmeldeseite abhängig von der Quellanwendung, von der der Client kommt, angepasst werden?

+0

Es ist eine MVC-Anwendung, so dass Sie das Stylesheet und HTML nach Ihren Wünschen ändern können. – Romoku

+0

@Romoku: Es ist eine SSO-Anwendung, so denke ich, dass es einige Haken bietet, um benutzerdefinierte CSS anzuhängen. Ich möchte den Code der Anwendung so gut wie möglich intakt halten und muss ihn nicht jedes Mal ändern, wenn ich eine neue Anwendung hinzufüge, die ihn als SSO verwendet – JohnDoDo

Antwort

4

"Ich kann keinen Weg finden, das zu tun." - Wie schwer hast du es versucht? ;)

Das RP hat die zusätzlichen Datenfelder - so können Sie wie ein CSS-Name vom RP in der Registrierungsdatenbank hängen. Weiterhin können Sie von der Anmeldeseite zu diesem RP Daten erhalten - den Kommentar in Account zitieren:

// Sie können AuthenticationHelper.GetRelyingPartyDetailsFromReturnUrl rufen mehr Informationen über die angeforderte vertrauende

btw zu bekommen - IdentityServer der GitHub Repo hat ein Issue Tracker - Sie sollten das für Fragen verwenden.

+0

Ich gebe zu, dass ich diesen Kommentar im Controller komplett vermisste, aber später die zusätzlichen Datenfelder auf dem RP fand und dachte, sie zu benutzen. Danke für die Antwort! Wird den GitHub Repo für andere IdentityServer Probleme oder Fragen verwenden. Danke noch einmal. – JohnDoDo

1

Sie können den RP immer einen benutzerdefinierten Abfragezeichenfolgenparameter übergeben und anpassen. Aber du bist zu diesem Zeitpunkt außerhalb der WS-Föderation. Außerdem müssen Sie über die Art von SSO nachdenken - der Benutzer meldet sich wirklich beim IdP an, nicht bei der App. Die IdP so zu verändern, dass sie wie die App aussieht, ist etwas unaufrichtig.

+2

'Der Benutzer meldet sich wirklich beim IdP an, nicht bei der App. Das IdP so zu verändern, dass es wie die App aussieht, ist etwas unaufrichtig. Ich stimme dem zu, aber dies sind bestehende interne Apps, mit denen die Benutzer vertraut sind und wir ändern jetzt den Login für alle. Ich möchte die Änderung vornehmen und den Benutzern die Tatsache zeigen, dass sie jetzt SSO machen. – JohnDoDo

0

Ich habe dies durch Anpassen der SignIn.cshtml gelöst, um den Stil anzupassen, was ich brauche. Zusätzlich habe ich serverseitigen Code in der Spitze SignIn.cshtml, die einige Zeichenfolge entspricht auf der ReturnUrl (Request.QueryString["ReturnUrl"]). Dann zeige ich ein anderes Logo und einen Kopftext basierend auf einigen Werten, von denen ich weiß, dass sie für die verschiedenen RP-URLs einzigartig sind.

Wenn Sie auf eine neue Version des ThinkTecture MVC aktualisieren, wird es ein kleiner Job nur diese Datei auf Ihre Besonderheiten zu aktualisieren (nur eine Kopie Ihrer modifizierten SignIn.cshtml haben erinnern, bevor Sie ein Upgrade).

Verwandte Themen