Google Workspace および IAM アイデンティティセンターによる SAML と SCIM の設定
組織が Google Workspace を使用している場合は、Google Workspace から IAM Identity Center にユーザーを統合して、AWS リソースへのアクセスを許可できます。この統合を実現するには、IAM Identity Center ID ソースをデフォルトの IAM Identity Center ID ソースから Google Workspace に変更します。
Google Workspace のユーザー情報は、クロスドメイン ID 管理システム (SCIM) v2.0 プロトコルを使用して IAM Identity Center に同期されます。詳細については、「外部 ID プロバイダーで SAML および SCIM ID フェデレーションを使用する」を参照してください。
Google Workspace で、この接続を IAM アイデンティティセンター用 SCIM エンドポイントと IAM アイデンティティセンターのベアラートークンを使用して設定します。SCIM 同期を設定すると、Google Workspace のユーザー属性と IAM Identity Center の名前付き属性のマッピングが作成されます。このマッピングは、IAM アイデンティティセンターと Google Workspace の間で、期待されるユーザー属性を照合します。そのためには、Google Workspace を IAM ID プロバイダーと IAM アイデンティティセンターID プロバイダーとして設定する必要があります。
目的
このチュートリアルの手順に従うと、Google Workspace と AWS の間の SAML 接続を確立する手順がわかります。後で、SCIM を使用して Google Workspace のユーザーを同期します。すべてが正しく設定されていることを確認するには、設定手順を完了した後に、Google Workspace ユーザーとしてサインインし、AWS リソースへのアクセスを確認します。このチュートリアルは小規模 Google Workspace ディレクトリのテスト環境に基づいていることに注意してください。グループや組織単位などのディレクトリ構造はこのチュートリアルには含まれていません。このチュートリアルを完了すると、ユーザーは Google Workspace 認証情報を使用して AWS アクセスポータルにアクセスできるようになります。
注記
Google Workspace の無料トライアルにサインアップするには、Google's Web サイトの Google Workspace
IAM アイデンティティセンターをまだ有効にしていない場合は、「AWS IAM Identity Center の有効化」を参照してください。
考慮事項
-
Google Workspace と IAM Identity Center 間で SCIM プロビジョニングを設定する前に、まず「自動プロビジョニングを使用する際の注意事項」を確認することをお勧めします。
-
Google Workspace からの SCIM 自動同期は、現在、ユーザープロビジョニングに限定されています。現在、自動グループプロビジョニングはサポートされていません。グループは、AWS CLI ID ストアの [create-group]
コマンドを使用して、または AWS Identity and Access Management (IAM) API の [CreateGroup] を使用して手動で作成できます。または、ssosync を使用して Google Workspace ユーザーとグループを IAM Identity Center に同期することもできます。 -
すべての Google Workspace ユーザーにおいて、[名]、[姓]、[ユーザー名]、[表示名] の値を指定する必要があります。
-
各 Google Workspace ユーザーには、E メールアドレスや電話番号などのデータ属性ごとに 1 つの値のみが割り当てられます。複数の値を持つユーザーは同期に失敗します。属性に複数の値を持つユーザーがいる場合は、IAM アイデンティティセンターでユーザーをプロビジョニングする前に、重複する属性を削除してください。例えば、同期できる電話番号属性は 1 つだけです。デフォルトの電話番号属性は「勤務先の電話」なので、ユーザーの電話番号が自宅の電話でも携帯電話でも、「勤務先の電話」属性を使用してユーザーの電話番号を保存します。
-
ユーザーが IAM Identity Center で無効化されていても、Google Workspace で有効化されていれば、属性は引き続き同期されます。
-
Identity Center ディレクトリに同じユーザーネームと E メールアドレスを持つ既存のユーザーがいる場合、そのユーザーは上書きされ、Google Workspace から SCIM を介して同期されます。
-
ID ソースを変更する場合は、追加の考慮事項があります。詳細については、「IAM Identity Center から外部 IdP への変更」を参照してください。
ステップ 1: Google Workspace: SAML アプリケーションを設定する
-
スーパー管理者権限を持つアカウントを使用して [Google 管理コンソール] にサインインします。
-
[Google 管理コンソール] の左側のナビゲーションパネルで、[アプリ] を選択してから、[ウェブとモバイルアプリ] を選択します。
-
[アプリの追加] ドロップダウンリストで、[アプリの検索] を選択します。
-
検索ボックスに [Amazon Web Services] と入力し、リストから [Amazon Web Services (SAML)] アプリを選択します。
-
[Google Identity Provider の詳細 - Amazon Web Services] ページで、次のいずれかを実行できます。
-
IdP メタデータをダウンロードします。
-
SSO URL、エンティティ ID URL、および証明書情報をコピーします。
ステップ 2 では、XML ファイルまたは URL 情報が必要です。
-
-
Google 管理者コンソールの次のステップに進む前に、このページを開いたままにして、IAM Identity Center コンソールに移動します。
ステップ 2: IAM Identity Center および Google Workspace : IAM Identity Center の ID ソースを変更し、Google Workspace を SAML ID プロバイダーとして設定する
-
管理者権限を持つロールを使用して IAM Identity Center コンソール
にサインインします。 -
左側のナビゲーションペインの [Settings] (設定) を選択します。
-
[設定] ページで [アクション] タブを選択し、[ID ソースを変更] を選択します。
-
IAM Identity Center をまだ有効化していない場合、詳細については「AWS IAM Identity Center の有効化」を参照してください。IAM Identity Center を初めて有効にしてアクセスすると、[ダッシュボード] が表示され、[ID ソースの選択] を選択できます。
-
-
[ID ソースの選択] ページで [外部 ID プロバイダー] を選択したら、[次へ] を選択します。
-
[外部 ID プロバイダーの設定] ページが開きます。このページとステップ 1 の Google Workspace ページを完了するには、以下を完了する必要があります。
-
IAM Identity Center コンソールの [Identity Provider メタデータ]セクションで、次のいずれかを実行する必要があります。
-
IAM Identity Center コンソールで [IdP SAML メタデータ] として [Google SAML メタデータ] をアップロードします。
-
[Google SSO URL] をコピーして [IdP サインイン URL] フィールドに貼り付け、[Google 発行者 URL] を [IdP 発行者 URL] フィールドに貼り付け、Google 証明書を [IdP 証明書] としてアップロードします。
-
-
-
IAM Identity Center コンソールの [Identity Provider メタデータ]セクションで Google メタデータを提供したら、[IAM Identity Assertion Consumer Service (ACS) URL] と [IAM Identity Center 発行者 URL] をコピーします。これらの URL は、次のステップの Google 管理者コンソールで指定する必要があります。
-
IAM Identity Center コンソールでページを開いたままにして、Google 管理者コンソールに戻ります。[Amazon Web Services - サービスプロバイダーの詳細] ページが開いているはずです。[Continue] (続行) をクリックします。
-
[サービスプロバイダーの詳細] ページで、[ACS URL] と [エンティティ ID] の値を入力します。これらの値は前のステップでメモしたもので、IAM Identity Center コンソールで確認できます。
-
[IAM Identity Center Assertion Consumer Service (ACS) URL] を [ACS URL] フィールドに貼り付けます。
-
[IAM Identity Center 発行者 URL] を[エンティティ ID] フィールドに貼り付けます。
-
-
[サービスプロバイダーの詳細] ページで、[名前 ID] のフィールドに次のように入力します。
-
[名前 ID 形式] で、[E メール] を選択します。
-
[名前 ID] で、[基本情報] > [プライマリ E メールアドレス] を選択します。
-
-
[Continue] (続行) をクリックします。
-
[属性マッピング] ページの [属性] で、[マッピングの追加] を選択後、[Google Directory 属性] で次のフィールドを設定します。
-
https://aws.amazon.com/SAML/Attributes/RoleSessionName
[アプリ属性] については、[Google Directory 属性] から[基本情報、プライマリ E メール] フィールドを選択します。 -
https://aws.amazon.com/SAML/Attributes/Role
[アプリ属性] については、任意の[Google Directory 属性] を選択します。Google Directory 属性は、[部門] である可能性があります。
-
-
[終了] を選択します
-
IAM Identity Center コンソールに戻り、[次へ] を選択します。[レビューと確定] ページで情報を確認し、表示されたスペースに [ACCEPT] と入力します。[IDソースの変更] を選択します。
これで、Google Workspace で Amazon Web Services アプリを有効化して、ユーザーを IAM Identity Center にプロビジョニングする準備ができました。
ステップ 3: Google Workspace: アプリを有効にする
-
Google 管理者コンソールに戻り、[アプリ] と [Web およびモバイルアプリ] の下にある AWS IAM Identity Center アプリケーションを確認します。
-
[ユーザーアクセス] の横にある [ユーザーアクセス] パネルで、下矢印を選択して [ユーザーアクセス] を展開し、[サービスのステータス] パネルを表示します。
-
[サービスのステータス] パネルで [全員オン] を選択し、次に [保存] を選択します。
注記
最小特権の原則を維持するために、このチュートリアルの完了後、[サービスのステータス] を [全員オフ] に変更することをお勧めします。AWS にアクセスする必要のあるユーザーのみに対して、このサービスを有効にしてください。Google Workspace グループまたは組織単位を使用して、ユーザーの特定のサブセットへのアクセス権をユーザーに付与できます。
ステップ 4: IAM Identity Center: IAM Identity Center の自動プロビジョニングを設定する
-
IAM アイデンティティセンターコンソールに戻ります。
-
[設定] ページで、[自動プロビジョニング] 情報ボックスを探し、[有効化] を選択します。これにより、すぐに IAM Identity Center の自動プロビジョニングが有効になり、必要なエンドポイントとアクセストークンの情報が表示されます。
-
[Inbound automatic provisioning] (インバウンド自動プロビジョニング) ダイアログボックスで、以下のオプションの値をそれぞれコピーします。このチュートリアルのステップ 5 では、Google Workspace でこれらの値を入力して自動プロビジョニングを設定します。
-
[SCIM エンドポイント] - 例えば https://scim.
us-east-2
.amazonaws.com/11111111111-2222-3333-4444-555555555555
/scim/v2 -
[アクセストークン] - [トークンを表示] を選択して値をコピーします。
警告
SCIM エンドポイントとアクセストークンを取得できるタイミングは、この時のみです。先に進む前に、これらの値をコピーしておいてください。
-
-
[閉じる] を選択します。
IAM Identity Center コンソールでプロビジョニングを設定したので、次のステップでは、Google Workspace で自動プロビジョニングを設定します。
ステップ 5: Google Workspace: 自動プロビジョニングを設定する
-
Google 管理者コンソールに戻り、[アプリ] と [Web およびモバイルアプリ] の下にある AWS IAM Identity Center アプリケーションを確認します。[自動プロビジョニング] セクションで、[自動プロビジョニングの設定] を選択します。
-
前の手順で、IAM Identity Center コンソールで [アクセストークン] の値をコピーしました。その値を [アクセストークン] フィールドに貼り付け、[続行] を選択します。また、前の手順で、IAM Identity Center コンソールで [SCIM エンドポイント] の値をコピーしました。その値を [エンドポイント URL] フィールドに貼り付け、[続行] を選択します。
-
すべての必須の IAM アイデンティティセンター属性 (* の付いた属性) が Google Cloud Directory 属性にマップされていることを確認します。そうでない場合は、下矢印を選択して適切な属性にマップします。[Continue] (続行) をクリックします。
-
[プロビジョニング範囲] セクションでは、Amazon Web Services アプリへのアクセスを付与する Google Workspace ディレクトリを含むグループを選択できます。このステップをスキップして [続行] を選択します。
-
[プロビジョニング解除] セクションでは、ユーザーのアクセス権取り消しにつながるさまざまなイベントへの対応方法を選択できます。状況ごとに、プロビジョニング解除を開始するまでの時間を指定できます。
-
24 時間以内
-
1 日後
-
7 日後
-
30 日後
それぞれの状況には、アカウントのアクセスを一時停止するタイミングとアカウントを削除するタイミングがあります。
ヒント
ユーザーのアカウントを削除するまでの時間は、必ずユーザーのアカウントを停止するよりも長く設定してください。
-
-
[Finish] を選択します。Amazon Web Services アプリページに戻ります。
-
[自動プロビジョニング] セクションで、トグルスイッチを操作して [非アクティブ] から [アクティブ] に変更します。
注記
IAM Identity Center がユーザーに対して有効になっていない場合、アクティベーションスライダーは無効になります。[ユーザーアクセス] を選択し、アプリをオンにしてスライダーを有効にします。
-
確認ダイアログボックスで [オンにする] をクリックします。
-
ユーザーが IAM Identity Center と正常に同期されたことを確認するには、IAM Identity Center コンソールに戻り、[ユーザー] を選択します。[ユーザー] ページには、SCIM によって作成された Google Workspace ディレクトリのユーザーが一覧表示されます。ユーザーがまだリストに表示されていない場合は、プロビジョニングがまだ進行中である可能性があります。プロビジョニングには最長で 24 時間かかることがありますが、ほとんどの場合、数分以内に完了します。ブラウザウィンドウは数分おきに更新してください。
ユーザーを選択し、その詳細を確認します。表示される情報が Google Workspace ディレクトリ内の情報と一致しているか確認すること。
お疲れ様でした。
Google Workspace と AWS の間の SAML 接続が正常にセットアップされ、自動プロビジョニングが機能していることが確認できました。[IAM Identity Center] でこれらのユーザーをアカウントおよびアプリケーションに割り当てることができるようになりました。このチュートリアルでは、次のステップで、管理アカウントへの管理アクセス許可を付与して、ユーザーの 1 人を IAM アイデンティティセンター管理者として指定しましょう。
アクセスコントロールの属性を渡す - オプション
IAM Identity Center の アクセスコントロールの属性 機能をオプションで使用して、Name
属性を https://aws.amazon.com/SAML/Attributes/AccessControl:
に設定した {TagKey}
Attribute
要素を渡すことができます。この要素を使用すると、SAML アサーションでセッションタグとして属性を渡すことができます。セッションタグの詳細については、「IAM ユーザーガイド」の「AWS STS でのタグ付けの規則 」 を参照してください。
属性をセッションタグとして渡すには、タグの値を指定する AttributeValue
要素を含めます。例えば、タグのキーバリューのペア CostCenter = blue
を渡すには、次のような属性を使用します。
<saml:AttributeStatement> <saml:Attribute Name="https://aws.amazon.com/SAML/Attributes/AccessControl:CostCenter"> <saml:AttributeValue>blue </saml:AttributeValue> </saml:Attribute> </saml:AttributeStatement>
複数の属性を追加する必要がある場合は、各タグに個別の Attribute
要素を含めます。
AWS アカウントにアクセスを割り当てる
以下の手順は、AWS アカウントへのアクセスのみを許可する場合にのみ必要となります。これらのステップは、AWS アプリケーションへのアクセスを許可する場合には必要ありません。
ステップ 1: IAM Identity Center: Google Workspace ユーザーにアカウントへのアクセスを付与する
-
IAM Identity Center コンソールに戻ります。IAM アイデンティティセンターのナビゲーションペインの [マルチアカウントのアクセス許可] で、[AWS アカウント] を選択します。
-
AWS アカウント ページの [組織構造] には、組織のルートと、その下にあるアカウントが階層内で表示されます。管理アカウントのチェックボックスをオンにし、[ユーザーまたはグループを割り当て] を選択します。
-
[ユーザーとグループを割り当てる] のワークフローが表示されます。これは、3 つのステップから構成されています。
-
[ステップ 1: ユーザーとグループの選択] では、管理者の職務を実行するユーザーを選択します。次いで、[次へ] を選択します。
-
[ステップ 2: アクセス許可セットの選択] では、[許可セットを作成] を選択します。新しいタブが開き、アクセス許可セットを作成するための 3 つのサブステップが順を追って表示されます。
-
[ステップ 1: 許可セットタイプを選択] では、以下を完了します。
-
[許可セットのタイプ] で、[事前定義された許可セット] を選択します。
-
[事前定義された許可セットのポリシー] で [AdministratorAccess] を選択します。
[Next] を選択します。
-
-
[ステップ 2: 許可セットの詳細を指定] では、デフォルト設定のままで、[次へ] を選択します。
デフォルト設定では、
AdministratorAccess
という名前の許可セットが作成され、セッション期間は 1 時間に設定されます。 -
[ステップ 3: 確認して作成] では、[許可セットのタイプ] が AWS 管理ポリシー [AdministratorAccess] を使用していることを確認します。[Create] (作成) を選択します。[アクセス許可セット] ページに、アクセス許可セットが作成されたことを知らせる通知が表示されます。この時点で、ウェブブラウザでこのタブを閉じてもかまいません。
-
[ユーザーとグループを割り当てる] ブラウザタブでは、[ステップ 2: 許可セットを選択] でアクセス許可セットの作成ワークフローを開始した状態のままになっています。
-
[アクセス許可セット] 領域で、[更新] ボタンを選択します。作成した
AdministratorAccess
許可セットがリストに表示されます。そのアクセス許可セットのチェックボックスを選択したら、[次へ] を選択します。
-
-
[ステップ 3: 確認と送信] では、選択したユーザーとアクセス許可セットを確認し、[送信] を選択します。
ページが更新され、AWS アカウント が設定中であることを示すメッセージが表示されます。プロセスが完了するまで待ちます。
AWS アカウント ページに戻ります。AWS アカウント が再プロビジョニングされ、更新されたアクセス許可セットが適用されたことを知らせる通知メッセージが表示されます。ユーザーはサインインすると、
[AdministratorAccess]
ロールを選択できます。注記
Google Workspace からの SCIM 自動同期は、ユーザーのプロビジョニングのみをサポートしています。現在、自動グループプロビジョニングはサポートされていません。AWS Management Consoleを使用して Google Workspace ユーザーのグループを作成することはできません。ユーザーをプロビジョニングした後、AWS CLI ID ストアの [create-group]
コマンドまたは IAM API の [CreateGroup] を使用してグループを作成できます。
-
ステップ 2: Google Workspace: Google Workspace ユーザーの AWS リソースへのアクセスを確認する
-
テストユーザーアカウントを使用して Google にサインインします。Google Workspace にユーザーを追加する方法については、「Google Workspace ドキュメント
」を参照してください。 -
Google apps ランチャー (ワッフル) アイコンを選択します。
-
カスタム Google Workspace アプリが置かれているアプリケーションリストの下部にスクロールします。Amazon Web Services アプリが表示されます。
-
Amazon Web Services アプリを選択します。AWS アクセスポータルにサインインすると、AWS アカウントアイコンが表示されます。そのアイコンを展開すると、ユーザーがアクセスできる AWS アカウント のリストが表示されます。このチュートリアルでは 1 つのアカウントしか使用していなかったため、アイコンを展開しても 1 つのアカウントしか表示されません。
-
アカウントを選択すると、そのユーザーが利用可能なアクセス許可セットが表示されます。このチュートリアルでは、AdministratorAccess 許可セットを作成しました。
-
アクセス許可セットの横には、その許可セットで利用できるアクセスの種類を示すリンクがあります。アクセス許可セットを作成したときに、管理コンソールとプログラムによるアクセスの両方を有効にするように指定したので、これら 2 つのオプションが表示されます。[管理コンソール] を選択して AWS Management Consoleを開きます。
-
ユーザーはコンソールにサインインしています。
次のステップ
Google Workspace を ID プロバイダーとして設定し、IAM アイデンティティセンターにユーザーをプロビジョニングしたので、次のことが可能になります。
-
AWS CLI ID ストアの [create-group]
コマンドまたは、IAM API の [CreateGroup] を使用してユーザー用のグループを作成します。 グループは、AWS アカウント やアプリケーションへのアクセスを割り当てる際に便利です。各ユーザーを個別に割り当てるのではなく、グループに権限を与えます。その後、グループにユーザーを追加したり削除したりすると、そのユーザーはグループに割り当てられたアカウントやアプリケーションへのアクセス権を動的に得たり、失ったりします。
-
職務に基づいてアクセス許可を設定します。「アクセス許可セットの作成」を参照してください。
アクセス権限セットは、ユーザーおよびグループが持つこの AWS アカウント アカウントに対するアクセスのレベルを定義します。権限セットは IAM Identity Center に保存され、1 つまたは複数の AWS アカウント にプロビジョニングできます。複数のアクセス権限セットを 1 人のユーザーに割り当てることができます。
注記
IAM Identity Center の管理者として、古い IdP 証明書を新しい証明書に置き換える必要がある場合があります。例えば、IdP 証明書の有効期限が近づいている場合は、証明書を交換する必要があります。古い証明書を新しい証明書に置き換えるプロセスは、証明書のローテーションと呼ばれています。Google Workspace については、SAML 証明書の管理方法を必ず確認してください。
トラブルシューティング
Google Workspace を使用した一般的な SCIM および SAML のトラブルシューティングについては、以下のセクションを参照してください。
-
Google Workspace に関するトラブルシューティングについては、Google Workspace ドキュメント
を参照してください。
AWS を使用する際のトラブルシューティングに役立つリソースを以下に示します。
AWS re:Post
— 問題のトラブルシューティングに役立つ FAQ やその他のリソースへのリンクを検索できます。 AWS Support
- テクニカルサポートを受ける