AI エージェント向け: ドキュメントインデックスは https://www.mongodb.com/ja-jp/docs/llms.txt で利用できます。すべてのページの markdown バージョンは、いずれかの URL パスに .md を追加することで利用できます。

Amazon Web Services のプライベート エンドポイントを使用したカスタマー キーの管理

Amazon Web Servicesの KMS で作成、所有、管理するカスタマー マネージド キー(CMK)を使用して Atlas に保管中のデータを暗号化するだけでなく、 Amazon Web Servicesへのすべてのトラフィックを構成することでセキュリティをさらにレイヤーできます。 AWS PrivateLink を使用するための KMS 。

注意

MongoDB Atlas共有責任モデルは、安全で回復力のあるデータ環境を維持するためのMongoDBとそのカスタマーの補完的な役割を定義します。このフレームワークの下、 MongoDB は基礎のプラットフォームのセキュリティと運用上の整合性を管理しますが、カスタマーは特定の配置の構成、管理、データ ポリシーに責任を負います。所有者のセキュリティと運用の優れ性の詳細な内訳については、共有責任モデルを参照してください。

このページでは、Amazon Web Services KMS でAWS PrivateLink を設定して、Atlas とAmazon Web Services KMS 間のすべてのトラフィックがAmazon Web Servicesのプライベートネットワークインターフェイスを介して行われるようにする方法について説明します。

PrivateLink 経由でAmazon Web Services KMS を使用して保管時の暗号化を有効にする前に、次のユースケース、利点、制限、前提条件を確認してください。

Atlas は 1 つのクラウドサービス プロバイダーに配置されているとします。Amazon Web Services KMS へのすべてのアクセスは、クラウドプロバイダーのプライベート ネットワーク インフラストラクチャを介して実行される必要があります。このページでは、 Atlasプロジェクトでプライベートエンドポイント接続を有効にする手順について説明します。

プライベートネットワーク経由で、Amazon Web Services KMS を使用した保管時の暗号化を構成できます。この設定により、AWS KMS へのすべてのトラフィックがプライベートエンドポイントのセットを介して通過することが許可され、AWS KMS がパブリックインターネットまたはパブリック IP アドレスに公開されることを避けることができます。この構成により、すべての Amazon Web Services KMS トラフィックを Amazon Web Services のプライベート ネットワーク内で維持することで、許可された IP アドレスを維持する必要がなくなります。また、データセキュリティも向上させます。

  • Atlas は、プライベート ネットワーク経由でAmazon Web Services KMS を使用して保管時の暗号化をサポートしており、単一クラウド配置のみをサポートしています。

  • Atlas は、ACTIVE 状態のプロジェクトに対してのみ、プライベート ネットワーク経由でAmazon Web Services KMS を使用した保管時の暗号化をサポートしています。

MongoDB プロジェクトで AWS KMS を使用してカスタマー管理キーを有効にするには、次の条件を満たす必要があります。

  • M10 以上のクラスターを使用します。
  • 十分な特権を持つ AWS IAM ロールを持っていること。Atlas には、キーを使用して次のアクションを実行する権限が必要です。

    注意

    AWS KMS キーを作成した IAM ロールではなく、別の AWS アカウントの AWS IAM ロールで AWS KMS キーを使用する場合は、十分な権限があることを確認してください。

    • 外部 AWS アカウントを含めるために、AWS KMSキーの下にキー ポリシー ステートメントを追加する。

    • 外部 AWS アカウントの IAM ロールに IAM インライン ポリシーを追加します。

    IAM ロールとカスタマーについて詳しくは、Amazon Web Services のドキュメント を参照してください。

    上記の権限を確認したら、通常の手順に従って Atlas で KMS 設定を構成できますが、次の例外があります。

    • AWS KMS キー ID フィールドに、マスター キー ID(例: 12345678-1234-1234-1234-12345678)ではなく、AWS KMS キーの完全な ARN(例: arn:aws:kms:eu-west-2:111122223333:key/12345678-1234-1234-1234-12345678)を入力する必要があります。

    IAM ロールの作成方法を学ぶには、 AWS ドキュメントにある「 IAM ロール 」を参照してください。

    Atlas は、保存時の暗号化が有効になっているプロジェクト内のすべてのクラスターに対して同じ IAM ロールと Amazon Web Services KMS キー設定を使用します。

  • AWS KMS の設定で必要な場合、Atlas が KMS と通信できるように、 Atlas の IP アドレス およびパブリック IP アドレス、またはクラスター ノードの DNS ホスト名からの アクセスを許可 します。ポリシー ドキュメントで IP アドレス条件演算子 を構成することにより、 マネージド IAM ロール ポリシー に IP アドレスを含める必要があります。ノードの IP アドレスが変更された場合は、接続の中断を回避するために構成を更新する必要があります。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2
3

保存時の暗号化に使用する Amazon Web Services KMS キーにアクセスするための新しいAmazon Web Services IAM ロールを作成するには、「Amazon Web Services CLI を使用した新しいロールの作成 」の手順に従います。承認する既存の AWS IAM ロールがある場合は、「既存のロールに信頼関係を追加する」手順に従ってください。

4

注意

このポリシーステートメントにより、MongoDB のAmazon Web Services Principal は、暗号化および復号化操作にカスタマーの KMS キーを使用できるようになります。Atlas Principal は秘密ではなく、すべての Atlas カスタマー間で使用されます。これは、高度に制限された、目的限定のAmazon Web Servicesアカウントであり、IAM ユーザー以外のリソースは含まれません。ポリシー ステートメント内の ExternalId は Atlas のプロジェクトごとに一意ですが、秘密ではありません。ExternalId は、クロスコンテキスト(混乱した代理)への脆弱性の可能性を軽減するために使用されます。こちら で説明されているように、Atlas が共通のプリンシパルを使用してすべてのカスタマーのキーにアクセスする方法を、アクセス パターンとしてAmazonは推奨しています。

保管時の暗号化のアクセス ポリシーは次のようになります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:Encrypt", "kms:DescribeKey" ], "Resource": [ "arn:aws:kms:us-east-1:123456789012:key/12x345y6-7z89-0a12-3456-xyz123456789" ] } ]}
5
6
  1. AWS IAM role ドロップダウン リストから割り当てるロールを選択します。

  2. Customer Master Key ID フィールドに暗号化のキーを指定します。

  3. 暗号化のキーの AWS リージョンを選択します。

プロジェクトの暗号化のキーへのロールベース アクセスを有効 にした後、「プロジェクトのプライベート エンドポイント接続の有効化と設定 」に従ってプロジェクトのプライベート エンドポイント接続を有効にします。

Amazon Web Services 、 Atlas 内の Amazon Web Services KMS 暗号化のキーへのアクセスを管理するために、 IAM ユーザー ではなく IAM ロール を使用する必要があります。IAM ユーザー認証情報を使用してAmazon Web Services KMS キーにアクセスするようにプロジェクトを最初に設定した場合は、次の手順に従ってロールベースのアクセスに切り替えます。

重要

暗号化キーをロールベースのアクセスに切り替えた場合、そのプロジェクトでは、ロールベースのアクセス構成を取り消して、暗号化のキーの認証情報ベースのアクセスに戻すことはできません。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2
3
4

保存時の暗号化に使用する Amazon Web Services KMS キーにアクセスするための新しいAmazon Web Services IAM ロールを作成するには、「Amazon Web Services CLI を使用した新しいロールの作成 」の手順に従います。承認する既存の AWS IAM ロールがある場合は、「既存のロールに信頼関係を追加する」手順に従ってください。

プライベートネットワークを有効にし、Amazon Web Services KMS にプライベートエンドポイントを設定するには、次の手順を実行する必要があります。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2

Advanced ページの Encryption at Rest using your Key Management セクションで、次の手順を実行します。

  1. AWS KMS が折りたたまれている場合は、Network Settings を展開します。

  2. [] の横にあるボタンを [] に切り替えます。Require Private Networking

  3. [Set up] をクリックします。

    Set Up Private Networking for AWSページが表示されます。

3
  1. Amazon Web Services KMS ダッシュボードにサインインします。

  2. Atlas UIで、Copy をクリックして、カスタマーマスター キーIDを保存します。

  3. Amazon Web Services KMS ダッシュボードで、必要なすべてのリージョンでキーを複製します。詳しくは、Amazon Web Services のドキュメント を参照してください。

  4. Atlas UIでクリックします Continue

4
  1. ドロップダウンからAmazon Web Services のリージョンを選択します。

  2. [Continue] をクリックします。

Atlas はこれらのリージョンにプライベートエンドポイントを自動的に作成し、プライベートネットワークを使用して接続できるようにします。

Atlas がプライベートエンドポイントの現在のステータスを反映するまでに最大 3 分かかります。プライベートエンドポイントは、次のいずれかのステータスになります。

アクティブ

プライベートエンドポイントが承認され、Atlas が または として使用していることを示します。

失敗

プライベートエンドポイントの作成が失敗したことを示します。

5

プロジェクトでカスタマーキー管理を有効にし、プライベートエンドポイントを設定したら、「Atlas クラスターのカスタマーキー管理の有効化」に従って、プロジェクト内の各 Atlas クラスターのカスタマー キー管理を有効にします。

重要

Amazon Web Services KMS シングルリージョンキーを使用してカスタマーキーマネジメントが有効になっている既存のマルチリージョン Amazon Web Services クラスターがある場合、Require Private Networking オプションを有効にすることはできません。この構成はサポートされていません。

プロジェクトの暗号化のキーでロールベース アクセスを有効にした後、暗号化するデータを含む各 Atlas クラスターに対してカスタマーキー マネジメントを有効にする必要があります。

注意

該当プロジェクト内のクラスターのカスタマー キー管理を有効にするには、Project Owner ロールが必要です。

マルチリージョンAmazon Web Services CMK の場合は、すべてのリージョンキー ARN を KMS キー ポリシーに追加して、それらのリージョンの Atlas クラスターがアクセスできるようにしてください。

Amazon Web Services KMS プライベートネットワークを使用する Amazon Web Services 上のマルチリージョン Atlas クラスターの場合、 KMS 設定はクラスターが使用するすべての Atlas リージョンをカバーする必要があります。マルチリージョンキーを各リージョンにレプリケートし、各リージョンに Amazon Web Services KMS プライベートエンドポイントを作成します。

新しいクラスターの場合は、クラスターを作成するときに 独自の暗号化キーの管理設定を [Yes] に切り替えます。

既存クラスターの場合:

1
  1. まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー

  2. まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。

  3. サイドバーで、 Database見出しの下のClustersをクリックします。

[ Clusters (クラスター) ] ページが表示されます。

2

暗号化するデータを含むクラスターで、クリックします、次にEdit Configurationを選択します。

3
  1. [Additional Settings] パネルを展開します。

  2. Manage your own encryption keys 設定を Yes に切り替えます。

  3. クラスターのRequire Private Networking設定のステータスを確認します。

    プロジェクト レベルで Atlas に対して CMK を使用した保管時の暗号化(プライベート ネットワーク経由)を設定した場合、ステータスは「Active」です。プロジェクトにプライベートエンドポイント接続を設定していない場合、ステータスは「Inactive」です。

4
  1. [Review Changes] をクリックします。

  2. 変更内容を確認し、[Apply Changes] をクリックしてクラスターをアップデートします。

プロジェクトの CMK を無効にするには、まず、状態に関係なく、プロジェクトに関連付けられているすべてのプライベートエンドポイントを削除する必要があります。アクティブなプライベートエンドポイントに関連付けられているプロジェクトの CMK を無効にしようとすると、Atlas にエラーが表示されます。

プロジェクトのすべてのプライベートエンドポイントを削除した後、プロジェクトの機能を無効にする前に、プロジェクト内の各クラスターでカスタマーキー管理を無効にする必要があります。

警告

Atlasプロジェクト内でカスタマーキー管理を無効にする前に、Atlasプロジェクト内のいずれかのクラスターが使用する Amazon Web Services KMS キーを 無効にしたり削除したり しないでください。Atlas がAmazon Web Services KMS キーにアクセスできない場合、キーが暗号化したデータにアクセスできなくなります。

プロジェクトのプライベートエンドポイント接続を有効にして設定した後は、Atlas UIと Atlas Administration APIからいつでも追加のエンドポイントを追加できます。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2

Advanced ページの Encryption at Rest using your Key Management セクションで、次のアクションを実行します。

  1. AWS KMS が折りたたまれている場合は、Network Settings を展開します。

  2. [Manage] をクリックします。

    Private Endpoints for AWS KMS ページには、リージョン、エンドポイント名、Atlas クラスターのプライベートエンドポイントのステータス、プライベートエンドポイントで実行できるアクションが表示されます。

3
4
  1. ドロップダウンからAmazon Web Services のリージョンを選択します。

  2. [Continue] をクリックします。

Atlas はこれらのリージョンにプライベートエンドポイントを自動的に作成し、プライベートネットワークを使用して接続できるようにします。

Atlas がプライベートエンドポイントの現在のステータスを反映するまでに最大 3 分かかります。プライベートエンドポイントは、次のいずれかのステータスになります。

アクティブ

プライベートエンドポイントが承認され、Atlas が または として使用していることを示します。

失敗

プライベートエンドポイントの作成が失敗したことを示します。

5

Atlas UIと Atlas 管理APIからプライベートエンドポイント接続を削除できます。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2

Advanced ページの Encryption at Rest using your Key Management セクションで、次のアクションを実行します。

  1. AWS KMS が折りたたまれている場合は、Network Settings を展開します。

  2. [Manage] をクリックします。

    Private Endpoints for AWS KMS ページには、リージョン、エンドポイント名、Atlas クラスターのプライベートエンドポイントのステータス、プライベートエンドポイントで実行できるアクションが表示されます。

3
  1. 削除するプライベートエンドポイントの Actions 列の アイコンをクリックします。

  2. プライベートエンドポイントの削除を確認するには、Delete をクリックします。

Atlas UIと Atlas 管理APIから、さまざまなリージョンのプライベートエンドポイントとそのステータスを表示できます。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2

Advanced ページの Encryption at Rest using your Key Management セクションで、次のアクションを実行します。

  1. AWS KMS が折りたたまれている場合は、Network Settings を展開します。

  2. [Manage] をクリックします。

    Private Endpoints for AWS KMS ページには、リージョン、エンドポイント名、Atlas クラスターのプライベートエンドポイントのステータス、プライベートエンドポイントで実行できるアクションが表示されます。

各プライベートエンドポイントは、次のいずれかのステータスになります。

アクティブ

プライベートエンドポイントが承認され、Atlas が または として使用していることを示します。

失敗

プライベートエンドポイントの作成が失敗したことを示します。

プロジェクトのプライベートエンドポイント接続を無効にするには、まずプロジェクトに関連付けられているすべてのプライベートエンドポイントを削除する必要があります。Atlas は、プロジェクトがアクティブなプライベートエンドポイントに関連付けられている場合、プロジェクトのプライベートエンドポイント接続を無効にしません。

プロジェクトのすべてのプライベートエンドポイント を削除した後、Atlas UIと Atlas Administration APIを使用してプロジェクトのプライベートエンドポイント接続を無効にできます。

1
  1. まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。

  2. まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。

  3. サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。

  4. サイドバーで、Advanced をクリックします。

    詳細ページが表示されます。

2
  1. Encryption at Rest using your Key Management で AWS KMS を選択します。

  2. Network Settings で、Require Private Networking の横にあるボタンを Off に切り替えます。

  3. [Save] をクリックします。

このページを評価