今回のゴール
今回は、AWSのSSO(Single Sign-On)を利用して、Directory SeeviceのドメインユーザーでAWSコンソールにログインします。
また、CLIも使用していきます。
SSOはOrganizationのルートアカウントでのみ有効にすることができます。
IDソースとしては下記が利用できます。
- AWS SSO
- Active Directory
- 外部IDプロバイダ
今回は、Organizationsの子アカウントのDirectory Serviceを使用するのですが、ルートアカウントADがあることが必須となりますので、子アカウントとルートアカウントをVPC Peeringで接続してルートアカウントにAD COnnectorを配置しました。
既存の AD Connector またはAWS Managed Microsoft ADディレクトリーをセットアップするAWS Directory Serviceで、それを組織の管理アカウント内に配置している必要があります。
AWSSSO の前提条件
設定
SSOの有効化
OrganizationsのルートアカウントでSSOサービスより「AWS SSOを有効にする」をクリックします。

SSOが有効になったらIDソースを変更します。
[設定]からIDソースの「変更」ボタンをクリックします。

今回はDirectory ServiceのADを使用しますので、[Active Directory]を選択して、既存のディレクトリを選択します。

MFAの有効化
MFAの設定を行います。
[設定]メニューの多要素認証欄の「設定」ボタンをクリックします。

今回は下記のように設定しました。
[ユーザーはMFAの入力を求められます]:サインインのたび(常時オン)
[ユーザーはこれらのMFAタイプで認証できます]:認証アプリ
[ユーザーが登録済みのMFAデバイスを持っていない場合]:サインイン時にMFAデバイスを登録するよう要求する

アクセス権限セットの作成
[AWSアカウント]メニューの[アクセス権限セット]のタブを選択して「アクセス権限セットを作成」ボタンをクリックします。

今回はAdministratorAccessを付与しますので、[既存の職務機能ポリシーを使用]を選択します。

[AdministratorAccess]を選択して登録を完了しました。

ユーザーにアクセス権限セットの割り当て
ADのユーザーにアクセス権限セットを割り当てる作業を行います。
[AWSアカウント]メニューでADのあるAWSアカウントを選択して「ユーザーの割り当て」をクリックします。

[ユーザー]をクリックしてディレクトリを選択してユーザー名を検索してチェックをつけます。

ユーザーに割り当てるアクセス権限セットを選択します。

コンソールログインの確認
ユーザーポータルURLにアクセスします。
ユーザー名とパスワードを入力してサインインします。


サインインすると、MFAを登録する画面に遷移しますので、登録します。

無事にユーザーポータルにログインできました。
