永続的なシングル サインオン

皆さんこんにちは。国井です。

今日はご質問いただいた内容について。
最近(と言っても随分前ですが)、Azure ADのサインイン画面が変わりましたが、それに合わせてADFSサーバーのフォーム認証画面もAzure ADっぽくすることができるようになりました。
これについてはMVPふじえさんが紹介してくださっているので、そちらを参考にされるとよいと思います。

■[AD FS]ログイン画面をAzure ADの新UIライクにカスタマイズする
http://idmlab.eidentity.jp/2017/11/ad-fsazure-adui.html

実際に設定してみた画面がこちら。Azure ADのサインイン画面に似ているようでちょっと違いますかね。

image

一方、新しいAzure ADのサインイン画面で印象的なのはこの画面ではないかと思います。

image

この画面で、サインインの状態を維持するように設定すると、永続Cookieと呼ばれるCookieが作成され、ブラウザーを閉じてもサインインの状態が維持されます。
これと同じことをADFSサーバーのサインイン画面でも出したいと思っても、残念ながら既定で設定画面がないため、設定できません。
もし、ADFSサーバーからサインインを行い、永続Cookieを発行させたい場合、Set-AdfsPropertiesコマンドレットを使って、

Set-AdfsProperties -EnableKmsi $true

のように実行すれば、サインイン画面は次のように変化します。

image

この画面で、[サインアウトしない]にチェックをつければ、永続Cookieが発行され、24時間サインインしたままの状態が継続されます。
ちなみに24時間有効という設定自体も

Set-AdfsProperties –KmsiLifetimeMins <分数>

で設定可能です。

■参考:AD FSシングルサインオン設定
https://msdn.microsoft.com/ja-jp/library/mt148493(v=ws.11).aspx

デフォルトでは、セッションCookieが有効ですが、この1行をクレームとして入れておくことによって、Cookieを使いまわし、永続的にサインイン状態を保つことができます。これにより、Azure ADでの認証・認可プロセスも省略されるため、条件付きアクセスで多要素認証を設定するようにしてあっても多要素認証は行われなくなります。

c:[Type == “http://schemas.microsoft.com/2014/03/psso”] => issue(claim = c);