sidebarIdM実験室いろんなアイデンティティ管理系製品やサービスの実験の記録をしていきます。後は、関連するニュースなどを徒然と。・現在公開されている情報+Fiddler等でWindows10の動きを解析した結果からの推測です。10074)をベースに確認しています。・細かい話は今月末(5/27)に開催されるidcon(別名fidcon)で話をする予定です。Join/CDJ)によるPCログオンとOffice365等のアプリケーションの間のシングルサインオンの動作の仕組みについて考えてみます。その前におさらいです。Directoryへのドメイン参加ではなく、クラウド上のAzureADへドメイン参加する機能のことです。FSやAzureADなどSAMLやws-federationの実装により割と容易に実現出来ました。FSへの統合Windows認証をすることによりPCログオンとWebアプリケーションとの間でのSSOを実現してきました。統合Windows認証に依存する仕組みのため、社外からのアクセスなどドメイン・ネットワークの境界を超えると途端にSSO出来なくなる、という非常に限定的な仕組みでもありました。CDJを使いPCログオンをAzureADで行うことによりドメイン・ネットワークの境界の外にある社外PCについてもPCログオンとWebアプリケーションのSSOを実現することが出来るようになりました。10074ではOffice365とのSSOは上手く動かず、代わりにAzureの新管理ポータル(https://portal.azure.com/)へSSO出来るようになっています。CDJを使いWindows10のPCではどのようにデバイスとアプリケーションの間のSSOを実現しているのでしょうか?CDJではざっくり言うと以下の処理が実行されます。⇒秘密鍵を使ってAzureADからプライマリ・リフレッシュ・トークン(PRT)の取得3アプリケーションへのアクセス⇒AzureADでPRTをアクセス・トークンへ交換し、アプリケーションへ提示PINや顔認証でPCにログインできるようになるのは、CDJでAzureADの信頼済みデバイスとして登録された後、TPM上にストアされた秘密鍵にアクセスすることが出来ることでユーザを認証することが可能なためです。Groupでデモを交えつつ話をした内容です。当日のスライドはこちら。Credentials/NGC(現在はPassportって言ってるやつです)のフローを解説しています。Fujie特にこの辺のスライドですね。Library(ADAL)の後継(?)となるコンポーネントで、バックエンドで認証やアクセストークンの取得などの処理を行うものです。Phone10に組み込まれた独立したモジュールとなっています。Managerを呼び出すことが出来ます。PluginがPRTをAzureADへ渡してアクセス・トークンを取得するのだと思われます。これで、PCへのログオンとWebアプリケーションへのログオンのSSOの出来上がりとなります。ちなみにAzureAD上にリソースとして登録していないWebサイトからの認証要求が来ると、AADのイベントログにID1098、1097が記録されるので、PRTの交換に失敗していることがわかります。上にも書きましたが、5/27のidconでもう少し深く仕組みの紹介をしたいと思います。※CDJの各フェーズで実際にどのような通信が発生しているのかをfiddlerで可能な限り取得した結果などもお見せできれば、、と思います。仕組み上、ログイン中に発生している通信も多いので、全部がトレースできる訳ではありませんが。よりアクセス解析を行っています。品質向上のみを目的とし、個人の特定などを目的とはしておりません。中で公開されることはあります。問い合わせ不明点等は管理人までご連絡ください。本プライバシーポリシーは予告なく変更/削除することがあります。プライバシーに関するトラブルについては一切の責任を負いかねますのでご了承ください。