こんにちは、阿形です。
今回はAWS SSOの有効化と、最低限の基本設定をやってみようと思います。
大まかな流れは以下の通りです。
- Organizationsですべての機能を有効化
- AWS SSOの有効化
- AWS SSOでのID管理の設定
- AWSアカウントへのアクセス管理の設定
- MFAの有効化
最初に決定しておくこと
SSOに用いるIDソースを決定しておく必要があります。IDソースには以下のものが選択可能です。
ここでは最も簡単なAWS SSOデフォルトのID管理を使用し設定してみます。
Organizationsですべての機能を有効化する
AWS公式ドキュメント
https://docs.aws.amazon.com/organizations/latest/userguide/orgs_manage_org_support-all-features.html
注意点
- すべての機能を有効にするプロセスを開始すると、AWS Organizationsは、組織に招待したすべてのメンバーアカウントにリクエストを送信する。
- 招待されたすべてのアカウントで、招待リクエストを受け入れることによって、すべての機能を有効にすることを承認する必要がある。
- 一度すべての機能を有効化すると、課金のみの統合に戻すことはできない。
すべての機能の有効化手順
- AWS Organizations管理アカウントにログインする
- AWS Organizationsコンソールにアクセス
- 設定をクリック
- 「すべての機能を有効にするプロセスを開始する」をクリックすることにより、各AWSアカウントにすべての機能を有効化する招待リクエストが送信される
- 各AWSアカウントにOrganizatinosの権限を持つIAMユーザー、ロールまたはルートアカウントでログインして、招待リクエストを承認する
AWS SSOの有効化
AWS公式ドキュメント
https://docs.aws.amazon.com/singlesignon/latest/userguide/getting-started.html
AWS Control Towerを使用すると手順が簡単になりますが、既存のものに適用する場合、問題となる可能性もあるため、ここではControl Towerは用いず、手動で設定を行います。
注意点
- 一つのOrganizationsにつき、一つしかAWS SSOは設定できません。
- Organizationsの管理AWSアカウント上の特定の一つのregionで設定します(複数のregionに配置することはできません。)
前提条件
- Organizationsの「すべての機能を有効化」が設定されていること。
- AWS Organizations管理アカウントで設定を行うこと。(メンバーアカウントでは設定できない)
- IDソースを決定し必要な設定を行う。(今回はAWS SSOのIDソースを使用するので、ほぼ自動設定される)
- URLフィルタリングを行っている場合は、以下のドメインまたはURLへのアクセスを許可する。
- DNS domains
- *.awsapps.com (http://awsapps.com/)
- *.signin.aws
- URL End-points
- https://[yourdirectory].awsapps.com/start
- https://[yourdirectory].awsapps.com/login
- https://[yourregion].signin.aws/platform/login
有効化手順
- AWS Organizationsの管理アカウントの認証情報で、AWSマネジメントコンソールにサインインします。
- AWS SSOを設定するregionに移動します。
- AWS SSO コンソールを開きます。
- Enable AWS SSO を選択します。
AWS SSOでのID管理
大まかに以下の手順を行います。
IAMと異なりアクセス権限はグループやユーザーの設定には含まれないのに注意しましょう。
- グループの追加
- ユーザーの追加
- ユーザーをグループに追加
グループの追加
- AWS SSO Consoleを開きます。
- グループをクリックします。
- グループを作成をクリックします。
- グループ名を入力しグループを作成をクリックします。
ユーザーの追加
- AWS SSO Consoleを開きます。
- ユーザーをクリックします。
- ユーザーを追加をクリックします。
- ユーザーネーム、パスワード設定方法、Eメールアドレス、名、姓を入力し次へをクリックします。
- 所属するグループを選び次へをクリックします。
AWSアカウントへのアクセス管理
以下の手順を行います。
- アクセス許可セットの作成
- ユーザーアクセスの割り当て
- MFAの有効化
アクセス許可セットの作成
- AWS SSO Consoleを開きます。
- アクセス許可セットをクリック。
- 許可セットを作成をクリック
- 事前定義された許可セット、またはカスタム許可セットを選択します。当初は事前定義された許可セットから必要なものを使用するのが簡単で良いと思います。
- 事前定義された許可セットで必要なものを選択し次へをクリック。
- 許可セットの詳細を指定し次へをクリック。セッション期間は作業の必要に応じて変更しておくと良いと思います。
- 確認画面で作成をクリック。
ユーザーアクセスの割り当て
- AWS SSO Consoleを開きます。
- AWSアカウントをクリックします。
- 設定するAWSアカウントのチェックボックスにチェックを入れます。
- ユーザーまたはグループを割り当てをクリックします。
- ユーザーまたはグループの割り当てができますが、グループでの割り当てが推奨されていますので、グループタブをクリックします。
- 割り当てるグループを選択し、Nextをクリックします。
- 割り当てるアクセス許可セットを選択します。
- 確認画面で送信をクリックします。
MFAの有効化
AWS SSOではデフォルトではMFAは無効になっているので、有効化する。
- AWS SSO Consoleを開きます。
- 設定をクリックします。
- ネットワークとセキュリティタブをクリックします。
- 設定をクリックします。
- 以下のようにMFAを設定します。
- サインインコンテキスト変更された場合のみ
- Authenticatorアプリケーション
- サインイン時にMFAデバイスを登録するよう要求する
- 変更を保存をクリックします。