自己署名証明書を使用している AD FS + Azure AD のハイブリッド環境に Windows 10 を参加させるには

既に多くの方がご存知かと思いますが、Windows 10 Pro/Enterprise/Education は、従来の Active Directory ドメインの代わりに、マイクロソフトの IDaaS である Azure Active Directory に参加することができます。これにより、これまで Active Directory ドメインを使用していなかった企業や大学が、”無理に” Active Directory ドメインコントローラーを設置することなく、クラウドを使用してユーザーやクライアントにガバナンスを効かせることができるようになります。

誤解されている方もいらっしゃるかもしれないので念のために書いておくと、オンプレミス Active Directory とAzure Active Directory の両方に参加することはできません。これについては、別の記事で詳しく書きたいと思います。

さて、Azure AD に参加できるという話を聞くと、まずは「ちょっと試してみようか」と思うのが人情です。

方法は簡単です。

Windows 10 をインストールすると、以下のような画面が出てきます。

image

ここで、「Azure AD に参加する」を選択して「続行」すればサインイン画面が表示されるので、Azure AD に登録されているユーザーとパスワードを指定すれば OK です。

もちろん、オンプレミス AD とのハイブリッド Active Directory(アイデンティティ フェデーレション)を構成している場合でも、問題なく参加することができます。Windows 10 がファイアウォールの外にいても、Web Application Proxy (AD FS Proxy)を構成していれば、以下のように認証要求が社内に転送されるので大丈夫です。

image

ただし、1点注意があります。AD FSの構成に自己署名証明書を使用している場合、以下のようなエラーが表示されてしまいます。

image

これは、AD FSで使用されている自己署名証明書は現在のデバイスで信頼できないために発生する問題です。当然ですね。

なので、自己署名証明書を事前に Windows 10 デバイスの「信頼されたルート証明機関」にインストールしておく必要があります。そのためには、Windows 10 を再パッケージングする必要があるのですが、評価の段階でここまでするのはちょっと面倒です。

そこで、ここではいったん「スキップ」を選択して、いったんインストールを完了させてしまいます。

image

とりあえず、以下の画面が表示されたらローカルアカウントを指定しインストール処理を進めます。

image

Windows 10 のインストールが完了したら、AD FS の構築で使用した自己署名証明書のインストールを行います。必要な証明書は、サービス通信に使用している証明書です。以下の画面は AD FS の管理コンソールですが、「証明書」ノードから参照できる「サービス通信」に表示されている証明書をダブルクリックすると、証明書を表示することができます。

image

表示された証明書の「詳細」タブを表示して「ファイルにコピー」をクリックしてください。

image

このとき、かならず「秘密キー」も含めてクスポートするようにしてください。

image

エクスポートした証明書(pfx)をWindows 10に”どうにかして”持ってもってきたら、ダブルクリックしてインストールしてください。仮想マシン上で Windows 10 を使用している場合には、リモートデスクトップ接続を有効にするとデスクトップ間のファイルコピペができて便利です。

さて、証明書をインストールするときに気を付けていただきたいのは、インストール先です。かならず「ローカルコンピューター」の「信頼されたルート証明機関」を選択してください。

image

image

証明書がインストールで来たら、[設定]-[システム]-[バージョン情報]から[Azure AD に参加] をクリックして、再び Azure AD にサインインしてください。

image

image

image

証明書が正しくインストールされていれば、以下のようにWeb Application Proxy の認証フォームにリダイレクトされます。

image

ここで、オンプレミスのパスワードを入力すれば Azure AD に参加できます。

image

image

image

Azure AD への参加が完了したデバイスは、Azure AD の管理ポータルで確認することが可能です。

Azure ポータルにサインインし、Active Directory の当該ドメインを選択してください。参加する際に入力したユーザーを選択して、「デバイス」タブを開いてください。「登録済みのデバイス」を選択すると、このユーザーが参加させたデバイスの一覧を確認できます。

image

Azure AD に参加したら、マシンをいったん再起動してください。

再起動後、左下の「他のユーザー」を選択して、Azure AD のユーザーでサインインしましょう。

image

サインイン後は、Azure AD で認証が必要なサイトを表示しようとすると、完全に SSO でサインインできます。例えば、Office 365(portal.office.com)やアプリケーションパネル(myapps.microsoft.com)などにユーザーIDは当然のこと、パスワードも入力せずにアクセスできます。