IAM Identity CenterでローカルPCのActiveDirectoryを連携した

### 今回ためすこと
前回、なんちゃってVPNを使い、ローカルPCのActiveDirectoryとAWSのAD Connectorを接続しました。今回はこのAD Connectorを、IAM Identity Centerに設定して、ローカルPCのActiveDirectoryでユーザー認証できるかを試してみます。

https://qiita.com/mirutaro/items/c997515a723f10e2ef6d

### AD Connecoterをアクティブにする
VPNを止めているので、AD Connectorは操作不能になっています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/a22aa3bb-7940-6e3c-31c3-ac7892a1e61e.png)

VPNを起動します。

https://qiita.com/mirutaro/items/e7452d36d0e250abe6ee

VPNを起動して5分ほど待つと、ステータスがアクティブになりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/e582c9d4-29a8-86c5-f9a4-b47169677600.png)

### IAM Identity CenterとAD Connectorを連携
IAM Identity Centerの設定画面へ移動します。
アカウントを登録した頃に有効化を行っていたせいか、既にインスタンスが作成済みの状態でした。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/da7d0f97-4eec-e762-a320-0c24428f55a3.png)

「アイデンティティソースを変更」を選択します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/157eb92b-947c-7747-87de-fd5343aa1248.png)

「Active Directory」を選択して、「次へ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/f8dcfa8c-0839-4477-9086-7a6fcf805303.png)

AD Connectorで接続したActiveDirectoryを選択して、「次へ」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/793233c9-db37-b6bc-983c-aa6f028483af.png)

「確認」画面で、承諾して「アイデンティティソースを変更」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/db0f61e5-ba29-4f80-ed08-3b2488f4d131.png)

変更が反映するまでしばらく待ちます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/f43b5730-6c2b-33ce-01e8-49a36b12ef17.png)

設定が完了するとこのような画面になります。初期状態ではユーザーは表示されていないようです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/2d4eea05-f0c8-5170-e298-0117fef48128.png)

ADに「test」ユーザーを用意しています。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/b2bd70df-0210-f6f6-b713-c56fa555c459.png)

「IAM Identity Center」> 設定 > 「同期を管理」 > 「ユーザーまたはグループを追加」の画面へ移動します。
ユーザーに、ADに準備したユーザー名「test」と入力して、「追加」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/327e44ac-c169-c5ee-5302-d8eb0a50cb49.png)

「test」ユーザーが追加されたのを確認して、「送信」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/b6c2154d-4725-6587-f3f0-6f1ffbbb998b.png)

同期するユーザーとして追加されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/9518987d-74e7-c391-3488-deb7a8f73d65.png)

### IAM Identity Centerへサインイン
知らない間に勝手にログインされると怖いのでダッシュボードから「認証」タブより、多要素認証の設定を行います。
※画像は設定したあとです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/32841c69-96f2-93cd-4487-8f2d2e9f2e02.png)


ダッシュボードから「アイデンティティソース」タブより、サインインするためのAWSアクセスポータルURLを確認することができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/62088ee8-bfe7-60fb-2ffd-571ba3b8ded6.png)

アクセスポータルURLへアクセスし、ADのユーザー名を入力して、「Next」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/c3fe74be-2561-48b9-254e-d8227c7486f4.png)

パスワードを入力して、「Sign in」をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/77768ebf-377e-c5a9-668d-02410d2ab2ac.png)

認証アプリを設定する画面に来ました。
画面の指示に従い手持ちのアプリにシークレットキーを登録します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/1fa61dbe-8e40-3527-05c7-d03739ccf3ba.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/8fc0d0d0-4a78-0de6-9a3e-7a83030cbfb5.png)

アプリに表示されたワンタイムパスワードを入力して、「Assign MFA」をクリックすると、無事認証アプリが登録された旨のメッセージが表示されました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/1b71d025-d15b-d9a6-c03e-b2d37090e0ae.png)

「Done」をクリックすると、このような画面にリダイレクトされました。
まだこのユーザーに何も設定していないので、何も表示されていません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/0f5fe8ec-cc88-1092-1ae0-a045bc6a97ff.png)

### 同期していないユーザーでログインしようとした場合
同期ユーザーの場合、初回ログインではMFAの設定が要求されることを確認しました。では、同期していないユーザーだとどうなるのでしょう。

ADに「test2」を作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/bc26a8c8-2a3e-c02d-8420-ce10c607d5f6.png)

「test2@wdom.test」でサインインします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/2ce330e6-e08b-9dc8-a831-16dcab428794.png)

MFAの設定画面になりました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/9af44d01-3677-eef7-0d9d-cb4fae4a1d8a.png)

同じようにサインインできるのかと思いきや、「Done」のあとのリダイレクトで、即サインアウトとなり、サインイン画面に戻りました。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3636209/7b8300d7-d9d9-0d37-5487-3e5f63353172.png)

同期していないユーザーはIAM Identity Centerを利用できないようです。

### まとめ
AD Connectorを利用してローカルADのユーザーをIAM Identity Centerに連携可能なことが確認できました。IAM Identity Centerの同期の対象のユーザーかどうかで、サインインできるかどうかの違いがあることもわかりました。

次回は、IAM Identityにアプリケーションを登録してADのユーザーでの権限管理がどのようになるのかを調べてみたいと思います。