AWS IAM アイデンティティセンター でのカスタマーマネージド KMS キーの実装 - AWS IAM アイデンティティセンター

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS IAM アイデンティティセンター でのカスタマーマネージド KMS キーの実装

カスタマーマネージドキーは AWS Key Management Service のキーで、その作成、所有、管理をユーザーが行います。AWS IAM アイデンティティセンターで保管時の暗号化用のカスタマーマネージド KMS キーを実装するには、次の手順に従います。

重要

一部の AWS マネージドアプリケーションは、カスタマーマネージド AWS KMS キーで設定された IAM アイデンティティセンターでは使用できません。「AWS IAM Identity Center で使用できる マネージドアプリケーション」を参照してください。

  1. ステップ 1: 組織のユースケースを特定する - KMS キーを使用するための正しいアクセス許可を定義するには、組織全体の関連するユースケースを特定する必要があります。KMS キーのアクセス許可は、適切な IAM プリンシパルが特定のユースケースで KMS キーを使用できるように連携する KMS キーポリシーステートメントと ID ベースのポリシーで構成されます。

  2. ステップ 2: KMS キーポリシーステートメントを準備する - ステップ 1 で特定したユースケースに基づいて関連する KMS キーポリシーステートメントテンプレートを選択し、必要な識別子と IAM プリンシパル名を入力します。ベースライン KMS キーポリシーステートメントから開始し、セキュリティポリシーで必要な場合は、「アドバンスト KMS キーポリシーステートメント」の説明に従って絞り込みます。

  3. ステップ 3: カスタマーマネージド KMS キーを作成する - IAM Identity Center 要件を満たす AWS KMS で KMS キーを作成し、ステップ 2 で準備した KMS キーポリシーステートメントを KMS キーポリシーに追加します。

  4. ステップ 4: KMS キーをクロスアカウントで使用するように IAM ポリシーを設定する - ステップ 1 で特定したユースケースに基づいて関連する IAM ポリシーステートメントテンプレートを選択し、キー ARN を入力して使用できるように準備します。次に、準備された IAM ポリシーステートメントをプリンシパルの IAM ポリシーに追加することで、特定ユースケースそれぞれの IAM プリンシパルがアカウント間で KMS キーを使用できるようにします。

  5. ステップ 5: IAM アイデンティティセンターで KMS キーを設定する - IAM アイデンティティセンターインスタンスのカスタマーマネージド KMS キーを有効にして、保管時の暗号化に使用します。

    重要

    このステップに進む前に、前のステップで設定したすべての KMS キーのアクセス許可を徹底的に検証します。完了すると、IAM アイデンティティセンターは保管時の暗号化に KMS キーの使用を開始します。

ステップ 1: 組織のユースケースを特定する

カスタマーマネージド KMS キーを作成して設定する前に、ユースケースを特定し、必要な KMS キーのアクセス許可を準備します。KMS キーポリシーの詳細については、「AWS KMS デベロッパーガイド」を参照してください。

IAM アイデンティティセンターサービス API を呼び出す IAM プリンシパルには、 アクセス許可が必要です。たとえば、委任管理者は、アクセス許可セットポリシーを使用してこれらの API を使用するアクセス許可を付与できます。IAM アイデンティティセンターがカスタマーマネージドキーで設定されている場合、IAM プリンシパルには、IAM アイデンティティセンターサービス API を介して KMS API を使用するアクセス許可も必要です。これらの KMS API アクセス許可は、KMS キーポリシーと IAM プリンシパルに関連付けられた IAM ポリシーの 2 つの場所で定義します。

KMS キーのアクセス許可は、以下で構成されます。

  1. ステップ 3: カスタマーマネージド KMS キーを作成する での作成時に KMS キーで指定した KMS キーポリシーステートメント。

  2. KMS キーの作成後に ステップ 4: KMS キーをクロスアカウントで使用するように IAM ポリシーを設定する で指定した IAM プリンシパルの IAM ポリシーステートメント。

次の表は、KMS キーを使用するためのアクセス許可を必要とする関連するユースケースと IAM プリンシパルを示しています。

ユースケース KMS キーを使用するためのアクセス許可が必要な IAM プリンシパル 必須/オプション
AWS IAM アイデンティティセンターの使用
  • AWS IAM アイデンティティセンターの管理者

  • IAM アイデンティティセンターサービスおよび関連する ID ストアサービス

必須
IAM アイデンティティセンターによる AWS マネージドアプリケーションの使用
  • AWS マネージドアプリケーションの管理者

  • AWS マネージドアプリケーション

  • AWS マネージドアプリケーションが IAM アイデンティティセンターサービス API を呼び出すために引き受けるサービスロール

オプションです。
有効化された AWS IAM アイデンティティセンターインスタンスでの AWS Control Tower の使用
  • AWS Control Tower 管理者

オプションです。
AWS IAM アイデンティティセンターを使用した Amazon EC2 Windows インスタンスへの SSO
  • Amazon EC2 Windows インスタンスへの SSO の実行を許可された IAM プリンシパル

オプションです。
カスタマーマネージドアプリケーション、アクセス許可セットプロビジョニングワークフロー、AWS Lambda 関数など、IAM プリンシパルを使用して IAM アイデンティティセンターサービス API を呼び出すその他のユースケース
  • これらのワークフローで IAM アイデンティティセンターサービス API を呼び出すために使用される IAM プリンシパル

オプションです。
注記

テーブルにリストされている複数の IAM プリンシパルには、AWS KMS API アクセス許可が必要です。ただし、IAM アイデンティティセンターでユーザーとグループのデータを保護するために、IAM アイデンティティセンターと ID ストアのサービスのみが AWS KMS API を直接呼び出します。

ステップ 2: KMS キーポリシーステートメントを準備する

組織に関連するユースケースを特定したら、対応する KMS キーポリシーステートメントを準備できます。

  1. 組織のユースケースに一致する KMS キーポリシーステートメントを選択します。ベースラインポリシーテンプレートから始めます。セキュリティ要件に基づいてより具体的なポリシーが必要な場合は、「高度な KMS キーポリシーステートメント」の例を使用してポリシーステートメントを変更できます。この決定に関するガイダンスについては、「ベースラインとアドバンスト KMS キーポリシーステートメントの選択に関する考慮事項」を参照してください。さらに、ベースライン KMS キーと IAM ポリシーステートメント の各ベースラインセクションには、関連する考慮事項が含まれています。

  2. 関連するポリシーをエディタにコピーし、必要な識別子と IAM プリンシパル名を KMS キーポリシーステートメントに挿入します。参照される識別子の値を見つける方法については、「必要な識別子を検索する」を参照してください。

以下は、各ユースケースのベースラインポリシーテンプレートです。KMS キーを使用するには、AWS IAM アイデンティティセンターの最初のアクセス許可セットのみが必要です。ユースケース固有の追加情報については、該当するサブセクションを確認することをお勧めします。

重要

IAM アイデンティティセンターで既に使用されているキーの KMS キーポリシーを変更するときは注意が必要です。IAM アイデンティティセンターは、最初に KMS キーを設定するときに暗号化と復号のアクセス許可を検証しますが、それ以降のポリシー変更を検証することはできません。必要なアクセス許可を誤って削除すると、IAM アイデンティティセンターの通常のオペレーションが中断される可能性があります。IAM アイデンティティセンターのカスタマーマネージドキーに関連する一般的なエラーのトラブルシューティングのガイダンスについては、「でのカスタマーマネージドキーのトラブルシューティング AWS IAM アイデンティティセンター」を参照してください。

注記

IAM および関連する ID ストアには、カスタマーマネージド KMS キーを使用するためのサービスレベルのアクセス許可が必要です。この要件は、サービス認証情報を使用して IAM アイデンティティセンターサービス API を呼び出す AWS マネージドアプリケーションにも適用されます。転送アクセスセッションで IAM アイデンティティセンターサービス API が呼び出されるその他のユースケースでは、開始する IAM プリンシパル (管理者など) にのみ KMS キーのアクセス許可が必要です。特に、 AWS アクセスポータルと AWS マネージドアプリケーションを使用するエンドユーザーは、それぞれのサービスを通じて付与されるため、直接 KMS キーのアクセス許可を必要としません。

ステップ 3: カスタマーマネージド KMS キーを作成する

AWS 管理コンソールまたは AWS KMS API を使用して、カスタマーマネージドキーを作成できます。キーの作成中に、ステップ 2 で準備した KMS キーポリシーステートメントを KMS キーポリシーに追加します。デフォルトの KMS キーポリシーに関するガイダンスを含む詳細な手順については、「AWS Key Management Service デベロッパーガイド」を参照してください。

キーは次の要件を満たしている必要があります。

  • KMS キーは IAM アイデンティティセンターインスタンスと同じ AWS リージョンに存在する必要があります。

  • マルチリージョンキーまたは単一リージョンキーのいずれかを選択できます。複数の AWS リージョンで将来のユースケースとの前方互換性を維持するには、マルチリージョンキーを選択することをお勧めします。

  • KMS キーは、「暗号化と復号」の用途に設定された対称キーである必要があります

  • KMS キーは、IAM アイデンティティセンターの組織インスタンスと同じ AWS Organizations 管理アカウントに存在する必要があります

ステップ 4: KMS キーをクロスアカウントで使用するように IAM ポリシーを設定する

IAM アイデンティティセンター委任管理者など、別の AWS アカウントの IAM アイデンティティセンターサービス API を使用する IAM プリンシパルには、これらの API を介した KMS キーの使用を許可する IAM ポリシーステートメントも必要です。

ステップ 1 で特定した各ユースケースについて:

  1. ベースライン KMS キーと IAM ポリシーステートメントで、関連する IAM ポリシーステートメントテンプレートを見つけます。

  2. テンプレートをエディタにコピーし、キー ARN を入力します。この ARN は、ステップ 3 の KMS キーの作成後に使用可能になりました。キー ARN 値を見つける方法については、「必要な識別子を検索する」を参照してください。

  3. AWS マネジメントコンソール で、ユースケースに関連付けられている IAM プリンシパルの IAM ポリシーを見つけます。このポリシーの場所は、ユースケースとアクセス許可の付与方法によって異なります。

    • IAM で直接付与されるアクセスについては、IAM コンソールで IAM ロールなどの IAM プリンシパルを見つけることができます。

    • IAM アイデンティティセンターを通じて付与されたアクセスについては、IAM アイデンティティセンターコンソールで関連するアクセス許可セットを見つけることができます。

  4. ユースケース固有の IAM ポリシーステートメントを IAM ロールに追加し、変更を保存します。

注記

ここで説明する IAM ポリシーは、ID ベースのポリシーです。このようなポリシーは IAM ユーザー、グループ、ロールにアタッチできますが、可能な場合は IAM ロールを使用することをお勧めします。IAM ロールと IAM ユーザーの詳細については、「IAM ユーザーガイド」を参照してください。

一部の AWS マネージドアプリケーションの追加設定

一部の AWS マネージドアプリケーションでは、アプリケーションが IAM アイデンティティセンターサービス API を使用できるようにサービスロールを設定する必要があります。組織が IAM アイデンティティセンターで AWS マネージドアプリケーションを使用している場合は、デプロイされたアプリケーションごとに次の手順を実行します。

  1. IAM アイデンティティセンターでアプリケーションを使用するための KMS キー関連のアクセス許可を含めるようにアクセス許可が更新されているかどうかを確認するには、アプリケーションのユーザーガイドを参照してください。

  2. その場合は、アプリケーションのユーザーガイドの指示に従ってアクセス許可を更新し、アプリケーションのオペレーションが中断されないようにします。

注記

AWS マネージドアプリケーションがこれらのアクセス許可を使用しているかどうか不明な場合は、デプロイされたすべての AWS マネージドアプリケーションのユーザーガイドを確認することをお勧めします。この設定を実行する必要があるのは、設定が必要なアプリケーションごとに 1 回だけです。

ステップ 5: IAM アイデンティティセンターで KMS キーを設定する

重要

このステップに進む前に:

  • AWS マネージドアプリケーションがカスタマーマネージド KMS キーと互換性があることを確認します。互換性のあるアプリケーションのリストについては、「AWS IAM アイデンティティセンターで使用できるマネージドアプリケーション」を参照してください。互換性のないアプリケーションがある場合は、続行しないでください。

  • KMS キーを使用するために必要なアクセス許可を設定します。適切なアクセス許可がない場合、このステップは IAM アイデンティティセンターの管理、AWS マネージドアプリケーションの使用、および KMS キーアクセス許可を必要とするその他のユースケースに失敗または中断する可能性があります。詳細については、「ステップ 1: 組織のユースケースを特定する」を参照してください。

  • IAM ロールを使用して IAM アイデンティティセンターサービス API を呼び出す AWS マネージドアプリケーションとカスタマーマネージドアプリケーションのアクセス許可でも、IAM アイデンティティセンターサービス API を介して KMS キーの使用が許可されていることを確認します。一部の AWS マネージドアプリケーションでは、これらの API を使用するためのサービスロールなどのアクセス許可を設定する必要があります。特定の KMS キーアクセス許可を追加する必要があるかどうかを確認するには、デプロイされた各 AWS マネージドアプリケーションのユーザーガイドを参照してください。

IAM アイデンティティセンターの新しい組織インスタンスを有効にするときに KMS キーを指定する

IAM アイデンティティセンターの新しい組織インスタンスを有効にする場合、セットアップ時にカスタマーマネージド KMS キーを指定できます。これにより、インスタンスは最初から保管時の暗号化にキーを使用します。開始する前に、「カスタマーマネージド KMS キーと高度な KMS キーポリシーに関する考慮事項」を参照してください。

  1. [IAM アイデンティティセンターの有効化] ページで、[保管時の暗号化] セクションを展開します。

  2. [暗号化の管理] を選択します。

  3. [カスタマーマネージドキー] を選択します。

  4. [新規の KMS キーの作成] で、次のいずれかの操作を行います。

    1. [KMS キーから選択] を選択し、ドロップダウンリストから作成したキーを選択します。

    2. [KMS キー ARN を入力] を選択し、キーの完全な ARN を入力します。

  5. [保存] を選択します。

  6. [有効化] を選択してセットアップを完了します。

詳細については、「IAM Identity Center の有効化」を参照してください。

IAM アイデンティティセンターの既存の組織インスタンスのキー設定を変更する

カスタマーマネージド KMS キーは、いつでも別のキーに変更したり、AWS 所有キーに切り替えることができます。

Console

KMS キー設定を変更するには

  1. https://console.aws.amazon.com/singlesignon/ で IAM アイデンティティセンターのコンソールを開きます。

  2. ナビゲーションペインで [設定] を選択します。

  3. [追加の設定] タブを選択します。

  4. [暗号化の管理] を選択します。

  5. 次のいずれかを選択します。

    1. カスタマーマネージドキー - ドロップダウンから別のカスタマーマネージドキーを選択するか、新しいキー ARN を入力します。

    2. AWS 所有キー - デフォルトの暗号化オプションに切り替えます。

  6. [保存] を選択します。

AWS CLI

KMS カスタマーマネージドキーを使用するように IAM アイデンティティセンターの既存の組織インスタンスを変更するには

aws sso-admin update-instance \ --instance-arn arn:aws:sso:::instance/ssoins-1234567890abcdef \ --encryption-configuration \ KeyType=CUSTOMER_MANAGED_KEY,KmsKeyArn=arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab

AWS所有キーを使用するように IAM アイデンティティセンターの既存の組織インスタンスを変更するには

aws sso-admin update-instance \ --instance-arn arn:aws:sso:::instance/ssoins-1234567890abcdef \ --encryption-configuration KeyType=AWS_OWNED_KMS_KEY

カスタマーマネージドキーに関する考慮事項

  • IAM アイデンティティセンターオペレーションの KMS キー設定を更新しても、IAM アイデンティティセンターのアクティブなユーザーセッションには影響しません。このプロセス中は、 AWS アクセスポータル、IAM アイデンティティセンターコンソール、IAM アイデンティティセンターサービス API を引き続き使用できます。

  • 新しい KMS キーに切り替えると、IAM アイデンティティセンターはキーを暗号化と復号に正常に使用できることを検証します。キーポリシーまたは IAM ポリシーの設定中にエラーが発生した場合、コンソールに説明エラーメッセージが表示され、以前の KMS キーは引き続き使用されます。

  • デフォルトの年間 KMS キーローテーションは自動的に行われます。キーローテーションAWS KMS キーのモニタリングキー削除へのアクセスのコントロールなどのトピックについては、 「AWS KMSデベロッパーガイド」を参照してください。

重要

IAM アイデンティティセンターインスタンスで使用されているカスタマーマネージド KMS キーが、KMS キーポリシーが正しくないために削除、無効化、またはアクセスできない場合、ワークフォースユーザーと IAM アイデンティティセンター管理者は IAM アイデンティティセンターを使用できません。アクセスの喪失は、状況に応じて、一時的 (キーポリシーを修正できる) または永続的 (削除されたキーを復元できない) にすることができます。KMS キーの削除や無効化など、重要なオペレーションへのアクセスを制限することをお勧めします。また、特権ユーザーが万一 IAM アイデンティティセンターにアクセスできなくなった場合に AWS にアクセスできるように、組織でAWSブレークグラスアクセス手順を設定することをお勧めします。

必要な識別子を検索する

カスタマーマネージド KMS キーのアクセス許可を設定する場合、キーポリシーと IAM ポリシーステートメントテンプレートを完了するには、特定の AWS リソース識別子が必要です。必要な識別子 (組織 ID など) と IAM プリンシパル名を KMS キーポリシーステートメントに挿入します。

以下は、 AWS 管理コンソールでこれらの識別子を見つけるためのガイドです。

IAM アイデンティティセンター Amazon リソースネーム (ARN) と ID ストア ARN

IAM アイデンティティセンターインスタンスは、arn:aws:sso:::instance/ssoins-1234567890abcdef などの独自の ARN を持つ AWS リソースです。ARN は、「サービス認可リファレンス」の「IAM アイデンティティセンターリソースタイプ」セクションに記載されているパターンに従います。

すべての IAM アイデンティティセンターインスタンスには、ユーザー ID とグループ ID を保存する ID ストアが関連付けられています。ID ストアには、ID ストア ID と呼ばれる一意の識別子 (例: d-123456789a) があります。ARN は、「サービス認可リファレンス」の「ID ストアリソースタイプ」セクションに記載されているパターンに従います。

ARN と ID ストア ID の両方の値は、IAM アイデンティティセンターの設定ページで確認できます。ID ストア ID は ID ソースタブにあります。

AWS Organizations ID

キーポリシーで組織 ID (o-exampleorg1 など) を指定する場合は、IAM アイデンティティセンターと組織コンソールの設定ページでその値を確認できます。ARN は、「サービス認可リファレンス」の「組織リソースタイプ」セクションに記載されているパターンに従います。

KMS キー ARN

KMS キーの ARN は、AWS KMS コンソールで確認できます。左側のカスタマーマネージドキーを選択し、ARN を検索するキーをクリックすると、全般設定セクションに表示されます。ARN は、「サービス認可リファレンス」の「AWS KMS リソースタイプ」セクションに記載されているパターンに従います。

AWS KMS のキーポリシーと AWS KMS アクセス許可のトラブルシューティングの詳細については、「AWS Key Management Service デベロッパーガイド」を参照してください。IAM ポリシーとその JSON 表現の詳細については、IAM ユーザーガイドを参照してください。