Office365+ADFSのシングルサインオンを実装するときに、
「外出先からActive Directoryのパスワードを変更できませんか?」
というリクエストをよくいただきます。
今までにも外出先からActive Directoryのパスワードを変更するためのやり方はあったのですが、
Microsoft Azureを使えば、ずいぶんと簡単に実装できるので、今回はずばり
「クラウドからActive Directoryのパスワードを変更する方法」ということで紹介します。
今回は、Microsoft Azure Active Directory Premiumに含まれるパスワードリセット機能を利用します。パスワードリセット機能は、Microsoft Azureが用意するポータルサイトから新しいパスワードが設定されると、パスワードがディレクトリ同期ツールを経由して最終的にActive Directoryユーザーのパスワードを変更するというものです。
前提条件は、Microsoft Azure Active DirectoryとオンプレミスのActive Directoryの間でディレクトリ同期を行っているか、もしくはADFSによるシングルサインオンを実装している場合です。
早速はじめましょう。
いつものように、まずは作業の流れを確認しましょう。
1.Microsoft Azure Active Directoryの契約
2.Microsoft Azure管理ポータルにMicrosoft Azure Active Directoryを追加
3.Microsoft Azure Active Directory Premiumの契約
4.ユーザーパスワードのリセットポリシー
5.パスワードリセット時に利用する携帯電話番号等の登録
6.パスワードリセットの実行
では、順番に見ていきます。
1. Microsoft Azure Active Directoryの契約
Office 365を契約している場合、既にMicrosoft Azure Active Directory(AAD)のテナントを保有しているはずですので、このステップは省略できます。持っていない人は、2.の手順で追加できます。
2.Microsoft Azure管理ポータルにMicrosoft Azure Active Directoryを追加
AADのテナントは、Azure管理ポータルに追加して利用する必要があります。
追加方法は、「Windows Azure Active Directoryのアプリケーション連携」の手順1.と2.でそれぞれ紹介していますので、参考にしてください。
3.Microsoft Azure Active Directory Premiumの契約
Azure管理ポータルからAADテナントを開き、[ライセンス]タブから評価版を契約することができます。取り急ぎ使いたい方は、まずは評価版を契約し、パスワードリセット機能を利用するユーザーにライセンスを割り当てておいてください。
(ライセンスを割り当てるときは、ユーザーの[利用場所]として国(日本など)を指定しておく必要があります。)
4.ユーザーパスワードのリセットポリシー
AAD Premiumが有効になると、Azure管理ポータルからAADテナントを開き、[構成]タブから[ユーザーパスワードのリセットポリシー]という設定を有効にすることができます。
([パスワードのリセットが有効になっているユーザー]を[すべて]に設定します)
5.パスワードリセット時に利用する携帯電話番号等の登録
AADはPremiumであるか・ないかに関わりなく、アクセスパネルと呼ばれるポータルサイトが用意されています。(アクセスパネルの活用についてはこちらでも紹介しています)
アクセスパネル(https://myapps.microsoft.com/)にアクセスして、
AADユーザーでサインインすると、
[プロファイル]タブから[パスワードの再設定用に登録する]をクリックして、携帯電話番号の登録を行えます。
電話番号等の登録が完了したら、準備完了です。
6.ディレクトリ同期のカスタマイズ (2014年8月6日追記)
クラウドから変更されたパスワードは最終的にオンプレミスのActive Directoryに保存されなければなりません。そのため、ディレクトリ同期ツールを使って、AADからActive Directoryに同期されるようなカスタマイズを行う必要があります。
この設定には次のコマンドレットを使います。
Import-Module DirSync
Enable-OnlinePasswordWriteBack
これにより、今までAD→AAD一方向だったディレクトリ同期ツールは、
AAD→ADの同期も行うようになります。
7.パスワードリセットの実行
パスワードを忘れたとき、パスワードリセットするときは
パスワードリセット用サイトにアクセスします(http://passwordreset.microsoftonline.com)
(Office365等のサインイン画面でも「アカウントにアクセスできない場合」というリンクを
クリックすれば、同じサイトにアクセスできます)
パスワードリセットサイトでは、いきなり下の画面が出てくるので、ユーザー名とCAPTHA(って言うんでしたっけ?)を入力して、
あらかじめ登録した携帯電話にSMSまたは電話をかけて、本人確認を行います。
SMSを選択した場合、SMSで6桁の番号を送ってきてくれるので、その場合を入力して、
いよいよ新しいパスワードを設定します。
これで完了です。
あとは、ディレクトリ同期が実行されれば、Active Directoryのパスワードも書き換わります。
なお、Active Directoryのパスワードは変更するのではなく、リセットするというのが正しい表現になります。