今回のゴール
最近ではオンプレのActiveDirectoryに加えてクラウドベースの認証サービスであるMicrosoft Azuleでユーザー・デバイス・アプリケーションを管理している企業も多いかと思います。
ユーザやグループの管理を2つのディレクトリで管理するのは大変な作業となります。
そこで、Azure AD Connectorを使用してAWS上のADとAzure ADとのディレクトリ同期を行うように設定します。
これはオンプレのADでも同じ設定となります。
【注意点】
- ディレクトリ同期は基本的にAWS(オンプレ)のAD → Azure ADの片方向のみとなります。
- Azure ADのエディションにより一部、書き戻しが可能となります。(PremiumP1以上)
設定
Azure AD Connect用のEC2インスタンスをパブリックサブネットに準備
EC2インスタンスの作成方法は割愛しますが、今回はwindows server 2016のt2.microで作成しました。
作成後、ドメインに参加してください。
AD Connectのダウンロード
Adure Portalより、[Azure Active Directory]-[カスタム ドメイン名]の該当ドメインをクリックします。

“Azure AD Connectのダウンロード”をクリック

WEBサイトに飛ぶので”Download”ボタンをクリック

ダウンロードしたファイルをAzure AD Connect用のEC2インスタンス上で実行します。
「カスタマイズ」をクリックします。

「インストール」をクリックします。

[サインイン方式の選択]:”パスワードハッシュの同期”にチェック
※本当はシングルサインオンを有効にするにチェックを付けたかったのですが、ADのフォレスト資格情報入力でエラーになるんですよね・・・。AWS Directory Serviceで付与されるAdmin権限では資格不足になるみたい・・・

Azure ADの管理者情報を入力します。

「ディレクトリの追加」ボタンをクリック

“既存のADアカウントを使用”にチェックを付け
AWS(オンプレ)のドメインのアカウント情報を入力します。
※.co.jpつけるとエラーとなりますので不要

「次へ」をクリックします。

オンプレのドメイン名とAzure ADのドメイン名が一致しているので、”確認済み”と表示されています。

同期するドメイン、OUを選択します。

デフォルトのまま「次へ」

デフォルトのまま「次へ」

[パスワードの書き戻し]:チェック

確認して「インストール」ボタンをクリック

作成が完了しました。

確認
ユーザーがAzure ADに同期されていることを確認します。
パスワードの書き戻しができることを確認します。
AWS側からAzureに同期されたユーザーでクライアントPCからログインできないとき
一度AzureAD上でパスワードリセットすればクライアントPCでログインできるようになりました。
AWS側からAzureに同期されたユーザーでAzureAD上でパスワードリセットできない時は下記項目を確認してください。
- AWS側のユーザにメールアドレスが設定されているか?
- 他のユーザーとメールアドレスが重複していないか?重複すると重複しているユーザーアカウントの同期が失敗します。
- ActiveDirectoryユーザーとコンピューターのユーザー右クリックして、[プロパティー]-[アカウント]で”ユーザーは次回ログイン時にパスワードの変更が必要”にチェック入れる
補足
通常、ディレクトリ同期は30分おきに実行されます。
パスワード同期は2分間隔
直ぐに反映させたい時は、PowerShellを管理者として実行して下記コマンドを実行します。
コマンド自体が成功してもすぐに結果が反映されるわけではありません。
数分程度反映に時間がかかります。
完全同期
Start-ADSyncSyncCycle -PolicyType Initial
差分同期
Start-ADSyncSyncCycle -PolicyType Delta