Edited at

G Suite のアカウントを利用したAWS管理コンソールへのSSOログイン


はじめに

最近、メールは仕事でもウェブメールを利用するのが一般的になってきました。中でもGmailを利用しているところが多いのではないかなと思います。

そこで、GoogleのアカウントからAWS管理コンソールへログインできたら便利だなと思ったのでSSOを設定してみました。


設定

設定は「G Suite → AWS管理コンソール → G Suite」の流れで設定していきます。


G Suiteへのアプリケーション登録

はじめにGoogleアプリへAWS管理コンソールへのログイン機能を登録します。

まずは、G Suiteの管理コンソールへログインしてアプリをクリックします。

スクリーンショット 2019-01-04 23.57.05.png

次にアプリの種類を選択する画面になるので、SAMLアプリ をクリックします。

スクリーンショット 2019-01-04 23.58.14.png

すると一覧顔面に移るので「サービスやアプリをドメインに通知」または「+」をクリックして登録画面へ進みます。

スクリーンショット 2019-01-04 23.58.30.png

SSOを有効にする項目に「Amazon Web Services」があるのでそれを選択します。

スクリーンショット 2019-01-04 23.59.10.png

Google IdP 情報 では 「IDPメタデータ」 をダウンロードします。

スクリーンショット 2019-01-04 23.59.41.png

Amazon Web Services の基本情報では設定する項目はないのでそのまま [次へ] をクリックします。

スクリーンショット 2019-01-05 0.00.11.png

サービスプロバイダの詳細もデフォルトのまま [次へ] をいクリックします。

スクリーンショット 2019-01-05 0.01.26.png

属性のマッピングでは上段に「基本情報」「メインのメール」を、下段に「AWS」「role」 を選択し [完了] をクリックします。

スクリーンショット 2019-01-05 0.07.19.png

スクリーンショット 2019-01-05 0.07.42.png

以上で、GoogleアプリにAmazon Web Servicesというアプリケーションが登録されました。

スクリーンショット 2019-01-05 0.08.16.png

登録しただけだとステータスがオフになっているため、サービスを編集からサービスのステータス「オン」 にして有効化します。

スクリーンショット 2019-01-05 0.22.40.png


AWS管理コンソール

Google側でアプリの登録を行ったら、AWS管理コンソール側でマッピング対象を作成します。

作成は「IAM > IDプロバイダー」 から「プロバイダの作成」をクリックして行います。

スクリーンショット 2019-01-05 0.10.04.png

プロバイダーのタイプをプルダウンからSAMLを選び、プロバイダ名を入力します。また、メタデータドキュメントは先ほどダウンロードしたIDPファイルを選択しアップします。

アップしたら「次のステップ」をクリックします。

スクリーンショット 2019-01-05 0.11.59.png

内容を確認し問題なければ「次のステップ」をクリックします。

スクリーンショット 2019-01-05 0.12.15.png

「IDプロバイダー」を作成したらそれをベースとするロールを作成します。

「IAM > ロール」から「ロールの作成」をクリックします。

スクリーンショット 2019-01-05 0.12.47.png

エンティティの種類は SAML 2.0 フェデレーション を選択します。

するとプロバイダーなどの設定が表示されるので、SAML プロバイダー を先ほど作成したプロバイダを選択し、属性を SAML:aud を選択、値にはhttps://signin.aws.amazon.com/samlを入力し、 [次のステップ:アクセス権限] をクリックします。

スクリーンショット 2019-01-05 0.19.44.png

そのあとは通常のロール作成と同じになります。

必要に応じてアクセス権限とタグの設定を行い、最後にロール名を設定して [ロールの作成] をクリックして完了です。

スクリーンショット 2019-01-05 0.20.54.png


G Suite ユーザーとIAMロールのマッピング

G Suiteユーザーに対して先ほど作成したIAM情報を設定します。

「ユーザー > (ユーザー名) > ユーザー情報」にAWSという項目があるのでそこを編集し、roleという項目に先ほどAWS側で作成した「{IDプロバイダーARN},{ロールARN}」を入力します。

スクリーンショット 2019-01-05 0.24.43.png

するとアプリ一覧に表示されるAmazon Web Servicesというアイコンをクリックすると設定したロールでAWS管理コンソールへログインができるようになります。

スクリーンショット 2019-01-05 0.28.13.png


おわりに

SSOを利用することでIAMユーザーを個別に用意する必要がなくなります。

もし、スイッチユーザーを使いたい場合でもSSOログインした後にスイッチ可能なのでとても便利です。

[参考]

https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/id_roles_create_for-idp_saml.html