5

私はThinktecture.IdentityServer.v2アプリを使用していくつかの内部アプリケーションをSSOで実行していますが、各アプリケーションのログインページをカスタマイズしてよりスムーズなユーザーエクスペリエンスを実現したいと考えています。私はそれをする方法を見つけることができないようです。Thinktecture.IdentityServer.v2ログインページをカスタマイズする方法はありますか?

クライアントが来ているソースアプリケーションによってログインページをカスタマイズできますか?

+0

これはMVCアプリケーションなので、スタイルシートやhtmlを自由に変更できます。 – Romoku

+0

@Romoku:SSOアプリケーションですので、カスタムCSSを取り付けるためのフックを提供していると思います。 SSO – JohnDoDo

答えて

4

"私はそれを行う方法を見つけることができないようです。" - あなたはどれくらい試しましたか? ;)

RPには余分なデータフィールドがあります。したがって、登録データベースのRPからCSS名のようにハングアップすることができます。また、あなたがサインインページからそのRPデータを取得することができます - AccountControllerにコメント引用:

//あなたが

ところで要求された証明書利用者に関する情報を入手するためにAuthenticationHelper.GetRelyingPartyDetailsFromReturnUrlを呼び出すことができますが - IdentityServerのgithubのリポジトリを持っています課題トラッカー - 質問にはそれを使うべきです。

+0

私はコントローラーでそのコメントを完全に忘れてしまったが、後でRPの余分なデータフィールドを見つけて、それらを使用することを考えました。答えをありがとう!他のIdentityServerの問題や質問にgithubリポジトリを使用します。再度、感謝します。 – JohnDoDo

1

RPにカスタムクエリ文字列パラメータを渡して、それをカスタマイズすることはいつでも可能です。しかし、あなたはその時点でWS-Federationの範囲外です。さらに、SSOの性質について考える必要があります。ユーザーは実際にはアプリケーションではなくIdPに署名しています。だからIdPをAppのように見えるように変えるのはやや不誠実だ。

+2

'を使っている新しいアプリケーションを追加するたびに、アプリケーションのコードをできるだけ損なわずに変更する必要があります。ユーザーが実際にアプリケーションではなくIdPに署名しています。だから、IdPをAppのように見えるように変えることはやや不快です。私はそれに同意するが、これはユーザが慣れ親しんでいる既存の内部アプリであり、現在はすべてのユーザのログインを変更している。私は変更を加え、SSOを行っているという事実をユーザに隠しておきたい。 – JohnDoDo

0

SignIn.cshtmlをカスタマイズして、私が必要とするスタイルに合わせて解決しました。また、私はSignIn.cshtmlの先頭にサーバー側のコードがあり、ReturnUrl(Request.QueryString["ReturnUrl"])に一致する文字列があります。次に、私は異なるRPのURLのためにユニークであると知っているいくつかの値に基づいて異なるロゴとヘッダーテキストを表示します。 ThinkTecture MVCの新しいバージョンにアップグレードする場合

、(ちょうどあなたがアップグレードする前に、あなたの修正SignIn.cshtmlのコピーを持っていることを忘れないでください)あなたの仕様にのみ、このファイルを更新するには、小さな仕事になります。