AWS SSO と Google Workspace を連携する
この記事の内容
AWS SSO と Google Workspace を連携する方法の記事です。
なんで書いたか
個人的な思いとして AWS SSO がとても便利で有益だったので利用への障壁を少しでも低くできたらと思い書きました。
AWS SSO と G Suite との連携記事はよく見かけるが Google Workspace との連携の記事をあまり見かけなかったので残そうと思いました。
AWS SSO はかなり便利なサービスで、AWS アカウントを Organizations で複数管理している場合かなり運用が容易になる可能性があります。
今回は Google Workspace との連携に関する事のみを記載しています。
外部 Idp で会社のメンバーアカウントを管理していて AWS アカウントを Organizations で複数管理している場合、かなり運用が容易になる可能性があります。
AWS SSO とは
AWS SSO は AWS Organizations で作成した組織に所属するアカウントを横断したユーザー管理ができるとても便利なサービスです。アカウントごとに IAM ユーザーを作成する必要がなく、管理がとても容易になります。
また、 ID ソースを外部 Idp から参照することも可能です。
AWS SSO と Idp を連携するメリット
1. ログイン情報が Idp のものだけで済むようになる
Idp のログイン情報で AWS アカウントにアクセスできるようになるので、AWS アカウント毎のログイン情報とシークレットを管理せずに済みます。
2. AWS アカウント毎のユーザー管理が不要になる
これは Idp との連携がなくても AWS SSO を利用するだけで恩恵が発生します。AWS SSO のユーザー管理だけで Organizations に所属する AWS アカウントへのアクセス管理が完結します。
AWS SSO と Google Workspace の連携手順
1. AWS SSO を有効化する
2. AWS SSO の情報を表示する
3. Google Workspace で SAML アプリケーションを作成する
-
https://admin.google.com/ac/apps/unified に遷移します。
遷移後、アプリを追加
をクリックすると選択肢が表示されるのでカスタム SAML アプリの追加
を選択します。
-
以下の情報を入力します。
- ACS の URL
- 手順 2-4 で表示されている
AWS SSO ACS URL
を入力します
- 手順 2-4 で表示されている
- エンティティ ID
- 手順 2-4 で表示されている
AWS SSO 発行者 URL
を入力します
- 手順 2-4 で表示されている
- 名前 ID の 形式
4. AWS SSO に Google Workspace の SAML アプリケーションを登録する
4. AWS SSO ユーザーの設定
以下の順序は必須ではありません。やりやすい順序で実施してください。
-
手順 1-1 と同じように SSO サービスを検索して SSO 画面を表示します。左側にあるメニューをそれぞれ選択して作業を勧めていきます。
-
ユーザー作成
ユーザーメニューを選択してユーザーを追加
ボタンを押すと以下の画面が表示されます。ユーザー名の部分に Google Workspace で管理されているメールアドレスと同じものを登録します。
その他は会社やコミュニティーに必要な情報を入力して完了です。
-
グループ作成
メニューのグループ
を選択してグループを作成します。ここで作成したグループを Organizations 組織アカウントにアサインしてアクセス権限セットを付与することでユーザーの権限を管理します。
(ユーザー単位でも管理はできますが、グループを利用した方がユーザー個別での権限管理より容易になると思われます。お好みで利用してください。) -
アクセス権限セット作成
メニューのAWS アカウント
->アクセス権限セット
タブを選択して作成します。 ここでは AWS 管理ポリシー もしくは カスタムポリシーを設定できます。
カスタムポリシーを作成する際の参考:Identity-based policy examples for AWS SSOTerraform では以下がサポートされています。
- アカウントにグループをアサイン
メニューのAWS アカウント
->AWS 組織
タブを選択して作成したグループもしくはユーザーをアサインします。その流れでグループにアクセス権限セットを付与します。
Terraform では以下のリソースがサポートされています。
- グループにユーザーをアサイン
メニューのグループ
を選択後、ユーザーを追加するグループを選択してユーザーを追加します。
アカウントにグループもしくはユーザーを登録する際にアクセス権限セットを付与しますがあくまでそのアカウント内での設定で、グループもしくはユーザー自体にアクセス権限セットしているわけではありません。各アカウント毎に設定が必要になります。
最後に
これで AWS SSO と Google Workspace 連携が完了しました。会社やコミュニティーでメンバーを Google Workspace で管理している場合、この連携を実施することで AWS アカウント毎のユーザー管理を Google Workspace と AWS SSO の管理のみで完結することができるようになりました。
AWS のアカウントを Organizations を利用して複数管理している場合特に力を発揮してくれると思いますので、お時間がある時にぜひ一度お試しください。