注意
AKV(Azure Key Vault)のカスタマー マネージド キー(CMK)を使用して、Atlas で保管中のデータをさらに暗号化できます。 Azure Private Link を使用して、 AKVへのすべてのトラフィックを構成することもできます。
注意
MongoDB Atlas共有責任モデルは、安全で回復力のあるデータ環境を維持するためのMongoDBとそのカスタマーの補完的な役割を定義します。このフレームワークの下、 MongoDB は基礎のプラットフォームのセキュリティと運用上の整合性を管理しますが、カスタマーは特定の配置の構成、管理、データ ポリシーに責任を負います。所有者のセキュリティと運用の優れ性の詳細な内訳については、共有責任モデルを参照してください。
このページでは、Atlas Administration API を使用してAKVで Azure Private Link を自動的に設定し、Atlas とAKV間のすべてのトラフィックがAzureのプライベート ネットワーク インターフェイスを介して行われるようにする方法について説明します。
Considerations
プライベートエンドポイントでAKVを使用して保管時の暗号化を有効にする前に、次のユースケース、利点、制限、前提条件を確認してください。
ユースケース
Atlas は 1 つのクラウド サービス プロバイダーに配置されているとします。 AKVへのすべてのアクセスは、クラウドプロバイダーのプライベート ネットワーク インフラストラクチャ経由で発生する必要があります。 このページでは、Atlas プロジェクトでプライベートエンドポイント接続を有効にする手順について説明します。
メリット
Atlas API を使用して、Atlas がプライベートエンドポイントを使用して AKV で保管時の暗号化を構成できるようにします。これにより、AKV へのすべてのトラフィックはプライベートエンドポイントのセットを通過し、AKV がパブリックインターネットまたはパブリックIPアドレスに公開されるのを回避できます。すべての AKV トラフィックを Azure のプライベート ネットワーク内に保持することで、データのセキュリティを強化しながら、許可されたIPアドレスを維持する必要がなくなります。
制限
Atlas は、マルチクラウド配置のプライベートエンドポイント経由で CMK を使用した保管時の暗号化をサポートしていません。マルチクラウドクラスターを含む既存のプロジェクトでAzure Private Link 経由でCMKを使用して保管時の暗号化を有効にすると、Atlas はプロジェクト内のマルチクラウドクラスターを無効にします。
Atlas では、
INACTIVE状態のプロジェクトで、プライベートエンドポイント経由で CMK を使用した保管時の暗号化はサポートされていません。プライベートエンドポイント接続を設定した後は、AKVへの Key Vault Name、Subscription ID、またはResource Group Name は変更できませんが、AKV の Microsoft Azureキー識別子はローテーションできます。これらの値を変更するには、まずすべてのプライベートエンドポイント接続を削除する必要があります。
マルチリージョンクラスター
マルチリージョンクラスターを使用している場合は、クラスターが配置されている各リージョンに AKV のプライベートエンドポイントを作成する必要があります。
前提条件
MongoDB プロジェクトでAKVを使用してカスタマー マネージド キーを有効にするには、次の手順を実行する必要があります。
- M10 以上のクラスターを使用します。
Azureアカウントと Key Vault の認証情報と、暗号化のキーのキー識別子をAKVに用意します。
アカウントには、クライアントID、 テナントID、および シークレット が必要です。シークレット オプションの詳細については、 「 Azure Key Vault シークレットレス認証 」を参照してください。
キーヴォールトには、サブスクリプション ID、リソース グループ名、およびキーヴォールト名が必要です。
これらのAzureコンポーネントの構成方法については、Azure のドキュメントを参照してください。
Atlas は、Atlas プロジェクト内のクラスターの保管時の暗号化を有効にするときにこれらのリソースを使用します。
- がApp registrations 条件付きアクセス ポリシー を使用する場合は一般的ではありません。アプリ登録用に Atlas Control Plane のIPアドレスとクラスター ノードのパブリックIPアドレスからのリクエストを許可する必要があります。これはアプリ登録にのみ使用され、キーヴォールトアクセスには使用されません。
注意
AzureサブスクライブリソースプロバイダーにMicrosoft .Network を登録する必要があります。詳しくは、Azure のドキュメント を参照してください。
手順
プロジェクトでのカスタマー マネージド キーの有効化
プロジェクト内のクラスターで CMK を有効にする前に、プロジェクトでCMKを有効にする必要があります。 Atlas UI と Atlas Administration API からプロジェクトでCMKを有効にできます。
Atlas で、プロジェクトの [Advanced] ページに移動します。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。
サイドバーで、Advanced をクリックします。
詳細ページが表示されます。
認証方法を設定します。
Atlas は AKV の 2 つの認証方法をサポートしています。
サービス プリンシパル(推奨):プロジェクトに固有の Atlas が管理するサービス プリンシパルを使用して、AKV( シークレット認証)に認証します。詳しくは、 「 Azure Key Vault シークレットレス認証 」を参照してください。
静的認証情報: カスタマーが管理する認証情報を提供します(ここで説明されています)。
Account Credentialsを入力します。
clientId | Azureアプリケーションの Client ID(または Application ID)を入力します。必要なアクセス権が Active Directory Application に割り当てられていることを確認してください。詳細については、 「必要なアクセス権」 を参照してください。 |
テナント ID | Active Directory テナントのTenant ID (またはDirectory ID )を入力します。 |
シークレット | Active Directory テナントに関連付けられているアプリケーションの有効期限が切れていないクライアント シークレットの 1 つを入力します。 |
Azure 環境 | Active Directory テナントが存在する Azure クラウドを選択します。 |
Key Vault Credentials を入力します。
サブスクリプション ID | キーヴォールトのSubscription IDを入力します。 |
リソース グループ名 | キーヴォールトを含むAzure Resource GroupのResource Group名を入力します。 |
キーヴォールト名 | キーヴォールトの名前を入力します。キーヴォールトに必要なアクセス ポリシーがあることを確認します。詳細については、 「必要なアクセス権」 を参照してください。 |
Encryption Key を入力します。
キー識別子 | Key Vault で作成されたキーの完全なURLを入力します。 重要: キー識別子は、完全なAzure一般形式で指定する必要があります。
|
(任意)AKV へのプライベートエンドポイント接続を構成します。
詳細については、 「 プロジェクトでのプライベートエンドポイント接続の有効化と設定」を参照してください
ネットワーク設定を確認します。
Azure Private Link を使用してAtlas Administration API を使用して Atlas を構成し、Atlas と Key Vault 間のすべてのトラフィックがAzureのプライベート ネットワーク インターフェースで行われるようにした場合、Atlas はRequire Private NetworkingステータスをActiveに設定します。 ステータスがInactive の場合、Atlas で AKV へのプライベートエンドポイント接続を使用する場合 は、プロジェクトのプライベートエンドポイント接続の有効化と設定 の手順を完了できます。
encryptionAtRest エンドポイント となる接続されたデバイスに PATCHリクエストを送信します。
注意
この curl コマンドは、サービス アカウント アクセス トークン(OAuth 2.0)を使用して認証します。詳細については、Atlas 管理APIの使い始める を参照してください。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2024-05-30+json" \ --header "Content-Type: application/vnd.atlas.2024-05-30+json" \ --request PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/66c9e8f1dd6c9960802420e9/encryptionAtRest" \ --data ' { "azureKeyVault": { "azureEnvironment": "AZURE", "clientID": "b054a9ff-b60a-4cb6-8df6-20726eaefce6", "enabled": true, "keyIdentifier": "https://test-tf-export.vault.azure.net/keys/test/78b9134f9bc94fda8027a32b4715bf3f", "keyVaultName": "test-tf-export", "resourceGroupName": "test-tf-export", "secret": "", "subscriptionID": "009774e0-124f-4a69-83e0-ca8cd8acb4e2", "tenantID": "1f6ef922-9303-402a-bae2-cc68810b023c" } }'
プロジェクトの CMK を使用した保管時の暗号化の構成を確認します。
AKVを使用して管理するキーを使用して保管時の暗号化を有効にして構成するには、 GETリクエストをencryptionAtRestエンドポイントに送信します。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2024-05-30+json" \ --header "Content-Type: application/vnd.atlas.2024-05-30+json" \ --include \ --request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest"
{ "azureKeyVault": { "azureEnvironment": "AZURE", "clientID": "632ff709-32a8-48a3-8224-30d2386fadaf", "enabled": true, "keyIdentifier": "https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86", "keyVaultName": "string", "requirePrivateNetworking": false, "resourceGroupName": "string", "subscriptionID": "a39012fb-d604-4cd1-8841-77f705f3e6d5", "tenantID": "ee46317d-36a3-4472-a3dd-6549e901da0b", "valid": true } }
プロジェクトでCMKを使用して保管時の暗号化を正常に有効にしている場合、レスポンスではenabledはtrueになります。 プライベートネットワークを設定して 、Atlasと Key Vault 間のすべてのトラフィックがAzureのプライベートネットワークインターフェイスを介して行われるようにすることができます。 詳細については、 「 プロジェクトでのプライベートエンドポイント接続の有効化と設定 」を参照してください。
プロジェクトでのプライベートエンドポイント接続の有効化と設定
Atlas UIと Atlas 管理APIを使用して、プライベートエンドポイントを有効にして設定できます。プライベートネットワークを有効にして、AKV にプライベートエンドポイントを設定するには、次の手順を実行する必要があります。
プロジェクトで カスタマー マネージド キーを有効にする 手順を完了します。
詳細については、プロジェクトでのカスタマー マネージド キーの有効化 を参照してください。
Azureプライベートエンドポイントを作成するAzureリージョンを指定します。
クラスターが AKV を使用した保管時の暗号化 ですでに有効になっている場合は、Atlas はリージョンにクラスター リージョンを自動的に入力します。それ以外の場合で、リージョンを追加するには、次の手順を実行します。
ドロップダウンからAzureリージョンを選択します。
重要
マルチリージョンクラスターの場合は、クラスターが配置される各リージョンを選択する必要があります。
[Continue] をクリックします。
Atlas はこれらのリージョンにプライベートエンドポイントを自動的に作成し、プライベートネットワークを使用して接続できるようにします。
プライベートエンドポイントを承認します。
プライベートエンドポイント接続を承認するには、 Azure UI 、 CLI 、または Terraform を使用できます。
承認すると、Atlas は、パブリック インターネットを使用した接続を許可する既存のクラスターを含む、カスタマーマネージド キーを有効にしたすべてのクラスターを、プライベートエンドポイント接続のみを使用するように自動的に移行します。オプションで、クラスターをプライベートエンドポイント接続を使用するように移行した後に、AKV へのパブリックインターネットアクセスを無効にすることができます。 Azure上のすべての新しい Atlas クラスターは、デフォルトでは、アクティブなプライベートエンドポイント接続のみを使用します。 Atlas は、承認されたプライベートエンドポイントを持つリージョンにのみ既存のクラスターに追加のノードを配置します。
プライベートエンドポイントを承認してから、プライベートエンドポイントの現在のステータスが Atlas に反映されるまでに最大 3 分かかります。各リージョンのプライベートエンドポイントの場合、Approve Endpoints ページには各プライベートエンドポイントのステータスが表示されます。詳細については、「 プライベートエンドポイントとそのステータスの表示 」を参照してください。
プライベートネットワークを有効にします。
エンドポイントにPATCHリクエストを送信し、 requirePrivateNetworkingフラグの値をtrueに設定します。
注意
この curl コマンドは、サービス アカウント アクセス トークン(OAuth 2.0)を使用して認証します。詳細については、Atlas 管理APIの使い始める を参照してください。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2023-01-01+json" \ --header "Content-Type: application/vnd.atlas.2023-01-01+json" \ --include \ --request PATCH "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/" \ --data ' { "azureKeyVault": { "azureEnvironment": "AZURE", "clientID": "632ff709-32a8-48a3-8224-30d2386fadaf", "enabled": true, "keyIdentifier": "https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86", "keyVaultName": "string", "requirePrivateNetworking": true, "resourceGroupName": "string", "secret": "string", "subscriptionID": "a39012fb-d604-4cd1-8841-77f705f3e6d5", "tenantID": "ee46317d-36a3-4472-a3dd-6549e901da0b" } }'
プライベートエンドポイントを作成します。
POSTAtlas でプライベートエンドポイントを作成する Azure リージョンを含む エンドポイント に リクエストを送信します。Atlas でプライベートエンドポイントを作成するリージョンごとに個別のリクエストを送信する必要があります。
重要
マルチリージョンクラスターを使用している場合は、クラスターが配置されている各リージョンに AKV のプライベートエンドポイントを作成する必要があります。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2023-01-01+json" \ --header "Content-Type: application/vnd.atlas.2023-01-01+json" \ --include \ --request POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/AZURE/privateEndpoints" \ --data ' { "regionName": "US_CENTRAL" }'
プライベートエンドポイントを承認すると、次の制限が適用されます。
Atlas は、承認されたプライベートエンドポイントを持つリージョンにのみすべての新しいクラスターを作成します。
Atlas は、承認されたプライベートエンドポイントを持つリージョンにのみ既存のクラスターに追加のノードを配置します。
AKV へのプライベートエンドポイント接続を承認します。
プライベートエンドポイント接続を承認するには、 Azure UI 、 CLI 、または Terraform を使用できます。
承認すると、Atlas は、パブリック インターネットを使用した接続を許可する既存のクラスターを含む、カスタマーマネージド キーを有効にしたすべてのクラスターを、プライベートエンドポイント接続のみを使用するように自動的に移行します。オプションで、クラスターをプライベートエンドポイント接続を使用するように移行した後に、AKV へのパブリックインターネットアクセスを無効にすることができます。 Azure上のすべての新しい Atlas クラスターは、デフォルトでは、アクティブなプライベートエンドポイント接続のみを使用します。
リクエストのステータスを確認します。
プライベートエンドポイントのステータスを確認するには、 encryptionAtRestエンドポイントにGETリクエストを送信します。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2023-01-01+json" \ --header "Content-Type: application/vnd.atlas.2023-01-01+json" \ --include \ --request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/AZURE/privateEndpoints"
{ "links": [ { "href": "https://cloud.mongodb.com/api/atlas", "rel": "self" } ], "results": [ { "cloudProvider": "AZURE", "errorMessage": "string", "id": "24-hexadecimal-digit-string", "regionName": "string", "status": "INITIATING", "privateEndpointConnectionName": "string" } ], "totalCount": 0 }
プライベートエンドポイントを承認してから、プライベートエンドポイントの現在のステータスが Atlas に反映されるまでに最大 3 分かかります。 プライベートエンドポイントは、次のいずれかのステータスになります。
初期化 | Atlas がプライベートエンドポイントを作成しているプロセス中であることを示します。 |
PENDING_ACCe使用 | プライベートエンドポイントがまだ承認されていないことを示します。 Atlas がプライベートエンドポイントを使用できるようにするには、プライベートエンドポイントを受け入れる必要があります。 |
アクティブ | プライベートエンドポイントが承認され、Atlas が または として使用していることを示します。 |
PENDING_RECREATION | プライベートエンドポイントが拒否または削除され、Atlas が同じリージョンに新しいプライベートエンドポイントを作成するプロセス中であることを示します。 |
失敗 | プライベートエンドポイントの作成が失敗したことを示します。 |
Deleting | Atlas がプライベートエンドポイントの削除プロセス中であることを示します。 |
プロジェクトで CMK を使用した保管時の暗号化(オーバープライベート ネットワーク)を有効に したら、プロジェクト内の各 Atlas クラスターに対して CMK を使用した保管時の暗号化を有効にできます。
Atlas クラスターのカスタマー キー管理の有効化
プロジェクトでカスタマー マネージド キーを有効にした後、暗号化するデータを含む各 Atlas クラスターに対してカスタマーキー マネジメントを有効にする必要があります。 Atlasプロジェクトにプライベートエンドポイント接続を構成した 場合、Atlas は、パブリック インターネットを使用した接続を許可する既存のクラスターを含む、カスタマーマネージド キーをすでに有効にしているすべてのクラスターを、プライベートエンドポイント接続のみを使用するように自動的に移行します。
注意
該当プロジェクト内のクラスターのカスタマー キー管理を有効にするには、Project Owner ロールが必要です。
新しいクラスターの場合は、クラスターを作成するときに、 独自の暗号化キーの管理設定 をYesに切り替えます(まだ有効になっていない場合)。
既存クラスターの場合:
Atlas で、プロジェクトの [Clusters] ページに移動します。
まだ表示されていない場合は、希望するプロジェクトを含む組織を選択しますナビゲーション バーのOrganizationsメニュー
まだ表示されていない場合は、ナビゲーション バーのProjectsメニューから目的のプロジェクトを選択します。
サイドバーで、 Database見出しの下のClustersをクリックします。
[ Clusters (クラスター) ] ページが表示されます。
プロジェクトのカスタマー マネージド キーの無効化
プロジェクトの CMK を無効にするには、まず、状態に関係なく、プロジェクトに関連付けられているすべてのプライベートエンドポイントを削除する必要があります。アクティブなプライベートエンドポイントに関連付けられているプロジェクトの CMK を無効にしようとすると、Atlas にエラーが表示されます。
プロジェクトのすべてのプライベートエンドポイントを削除した後、プロジェクトの機能を無効にする前に、プロジェクト内の各クラスターでカスタマー キー管理を無効にする必要があります。
警告
Atlas プロジェクト内でカスタマー キー管理を無効にする前に、Atlas プロジェクト内のいずれかのクラスターが使用する AKV キーを無効にしたり削除したりし ない でください。Atlas がAKVキーにアクセスできない場合、キーが暗号化したデータにアクセスできなくなります。
プロジェクトの新しいエンドポイントの作成
プロジェクトのプライベートエンドポイント接続を有効にして設定した後は、Atlas UIと Atlas Administration APIからいつでも追加のエンドポイントを追加できます。
Atlas で、プロジェクトの [Advanced] ページに移動します。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。
サイドバーで、Advanced をクリックします。
詳細ページが表示されます。
Private Endpoints forAzure Key VaultページにGo。
Advanced ページの Encryption at Rest using your Key Management セクションで、次のアクションを実行します。
Azure Key Vault が折りたたまれている場合は、Network Settings を展開します。
[Manage] をクリックします。
Private Endpoints for Azure Key Vault ページには、リージョン、エンドポイント名、Atlas クラスターのプライベートエンドポイントのステータス、プライベートエンドポイントで実行できるアクションが表示されます。
プライベートエンドポイントを承認します。
プライベートエンドポイントを使用するには、AKV 内の各エンドポイントを承認する必要があります。プライベートエンドポイント接続を承認するには、 Azure UI 、 CLI 、または Terraform を使用できます。
各リージョンのプライベートエンドポイントの場合、Approve Endpoints ページには各プライベートエンドポイントのステータスが表示されます。プライベートエンドポイントを承認してから、プライベートエンドポイントの現在のステータスが Atlas に反映されるまでに最大 3 分かかります。プライベートエンドポイントのステータスの詳細については、「 プライベートエンドポイントとそのステータスの表示 」を参照してください。
プライベートエンドポイントを作成します。
POSTAtlas でプライベートエンドポイントを作成する Azure リージョンを含む エンドポイント に リクエストを送信します。Atlas でプライベートエンドポイントを作成するリージョンごとに個別のリクエストを送信する必要があります。
注意
この curl コマンドは、サービス アカウント アクセス トークン(OAuth 2.0)を使用して認証します。詳細については、Atlas 管理APIの使い始める を参照してください。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2023-01-01+json" \ --header "Content-Type: application/vnd.atlas.2023-01-01+json" \ --include \ --request POST "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/AZURE/privateEndpoints" \ --data ' { "regionName": "US_CENTRAL" }'
リクエストのステータスを確認します。
プライベートエンドポイントのステータスを確認するには、 encryptionAtRestエンドポイントにGETリクエストを送信します。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2023-01-01+json" \ --header "Content-Type: application/vnd.atlas.2023-01-01+json" \ --include \ --request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/AZURE/privateEndpoints"
{ "links": [ { "href": "https://cloud.mongodb.com/api/atlas", "rel": "self" } ], "results": [ { "cloudProvider": "AZURE", "errorMessage": "string", "id": "24-hexadecimal-digit-string", "regionName": "string", "status": "INITIATING", "privateEndpointConnectionName": "string" } ], "totalCount": 0 }
プライベートエンドポイントを承認してから、プライベートエンドポイントの現在のステータスが Atlas に反映されるまでに最大 3 分かかります。 プライベートエンドポイントは、次のいずれかのステータスになります。
初期化 | Atlas がプライベートエンドポイントを作成しているプロセス中であることを示します。 |
PENDING_ACCe使用 | プライベートエンドポイントがまだ承認されていないことを示します。 Atlas がプライベートエンドポイントを使用できるようにするには、プライベートエンドポイントを受け入れる必要があります。 |
アクティブ | プライベートエンドポイントが承認され、Atlas が または として使用していることを示します。 |
PENDING_RECREATION | プライベートエンドポイントが拒否または削除され、Atlas が同じリージョンに新しいプライベートエンドポイントを作成するプロセス中であることを示します。 |
失敗 | プライベートエンドポイントの作成が失敗したことを示します。 |
Deleting | Atlas がプライベートエンドポイントの削除プロセス中であることを示します。 |
プライベートエンドポイント接続の拒否または削除
Atlas UIと Atlas 管理APIからプライベートエンドポイント接続を削除できます。
Atlas で、プロジェクトの [Advanced] ページに移動します。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。
サイドバーで、Advanced をクリックします。
詳細ページが表示されます。
Private Endpoints forAzure Key VaultページにGo。
Advanced ページの Encryption at Rest using your Key Management セクションで、次のアクションを実行します。
Azure Key Vault が折りたたまれている場合は、Network Settings を展開します。
[Manage] をクリックします。
Private Endpoints for Azure Key Vault ページには、リージョン、エンドポイント名、Atlas クラスターのプライベートエンドポイントのステータス、プライベートエンドポイントで実行できるアクションが表示されます。
プライベートエンドポイントを削除するには、Atlas Administration APIエンドポイントに DELETEリクエストを送信し、削除するプロジェクトとプライベートエンドポイントのIDを指定します。削除するプライベートエンドポイントのID は、Atlas Administration API 1 つのプロバイダーの 1 つのプライベートエンドポイント サービスを返す GETリクエストを送信することで取得できます。
注意
この curl コマンドは、サービス アカウント アクセス トークン(OAuth 2.0)を使用して認証します。詳細については、Atlas 管理APIの使い始める を参照してください。
例
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2024-10-23+json" \\ or a different version of the Atlas Admin API --header "Content-Type: application/json" \ --include \ --request DELETE "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/AZURE/privateEndpoints/{endpointId}" \ --data ' { "cloudProvider": "AZURE", "regions": [ "string" ] }'
プライベートエンドポイントを削除すると、プライベートエンドポイントは DELETING ステータスに移行し、Atlas はプライベートエンドポイントを削除します。
Azure UIからアクティブなプライベートエンドポイントを削除または拒否すると、Atlas は同じリージョンに新しいプライベートエンドポイントの再作成を自動的に試行します。プライベートエンドポイントのステータスは、Atlas UIと Atlas 管理APIから確認できます。詳細については、「 プライベートエンドポイントとそのステータスの表示 」を参照してください。
Atlas が新しいプライベートエンドポイントを作成しようとしている間に、拒否または削除したプライベートエンドポイントのステータスはPENDING_RECREATIONに移行し、Atlas が作成しようとする新しいエンドポイントはINITIATING状態になります。 新しいプライベートエンドポイントは、作成後に承認する必要があります。
プライベートエンドポイントとそのステータスの表示
Atlas UIと Atlas 管理APIから、さまざまなリージョンのプライベートエンドポイントとそのステータスを表示できます。
Atlas で、プロジェクトの [Advanced] ページに移動します。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。
サイドバーで、Advanced をクリックします。
詳細ページが表示されます。
Private Endpoints forAzure Key VaultページにGo。
Advanced ページの Encryption at Rest using your Key Management セクションで、次のアクションを実行します。
Azure Key Vault が折りたたまれている場合は、Network Settings を展開します。
[Manage] をクリックします。
Private Endpoints for Azure Key Vault ページには、リージョン、エンドポイント名、Atlas クラスターのプライベートエンドポイントのステータス、プライベートエンドポイントで実行できるアクションが表示されます。
各プライベートエンドポイントは、次のいずれかのステータスになります。
承認待ち | プライベートエンドポイントがまだ承認されていないことを示します。 Atlas がプライベートエンドポイントを使用できるようにするには、プライベートエンドポイントを受け入れる必要があります。 |
アクティブ | プライベートエンドポイントが承認され、Atlas が または として使用していることを示します。 |
失敗 | プライベートエンドポイントの作成が失敗したことを示します。 |
プライベートエンドポイントとそのステータスは、Atlas Administration APIにGET リクエストを送信すると、Atlas Administration APIからすべてのエンドポイントまたはencryptionAtRest 1 つのエンドポイントを取得するために送信できます。このため、プライベートエンドポイントのIDは で指定する必要があります。パス。
注意
この curl コマンドは、サービス アカウント アクセス トークン(OAuth 2.0)を使用して認証します。詳細については、Atlas 管理APIの使い始める を参照してください。
例
1 つのプロジェクトのすべてのプライベートエンドポイントを返す
curl --header "Authorization: Bearer {ACCESS-TOKEN}" \ --header "Accept: application/vnd.atlas.2024-10-23+json" \\ or a different version of the Atlas Admin API --header "Content-Type: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/encryptionAtRest/AZURE/privateEndpoints/"
各プライベートエンドポイントは、次のいずれかのステータスになります。
初期化 | Atlas がプライベートエンドポイントを作成しているプロセス中であることを示します。 |
PENDING_ACCe使用 | プライベートエンドポイントがまだ承認されていないことを示します。 Atlas がプライベートエンドポイントを使用できるようにするには、プライベートエンドポイントを受け入れる必要があります。 |
アクティブ | プライベートエンドポイントが承認され、Atlas が または として使用していることを示します。 |
PENDING_RECREATION | プライベートエンドポイントが拒否または削除され、Atlas が同じリージョンに新しいプライベートエンドポイントを作成するプロセス中であることを示します。 |
失敗 | プライベートエンドポイントの作成が失敗したことを示します。 |
Deleting | Atlas がプライベートエンドポイントの削除プロセス中であることを示します。 |
プロジェクトのプライベートエンドポイント接続の無効化
プロジェクトのプライベートエンドポイント接続を無効にするには、まずプロジェクトに関連付けられているすべてのプライベートエンドポイントを削除する必要があります。 Atlas は、プロジェクトがアクティブなプライベートエンドポイントに関連付けられている場合、プロジェクトのプライベートエンドポイント接続を無効にしません。
プロジェクトのすべてのプライベートエンドポイント を削除した後、Atlas UIと Atlas Administration APIを使用してプロジェクトのプライベートエンドポイント接続を無効にできます。
Atlas で、プロジェクトの [Advanced] ページに移動します。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。
サイドバーで、Advanced をクリックします。
詳細ページが表示されます。
プライベートエンドポイント接続を無効にするには、requirePrivateNetworkingブール値値フラグ値を false に設定して、エンドポイントに PATCHリクエストを送信します。
例
{ "azureKeyVault": { "azureEnvironment": "AZURE", "clientID": "632ff709-32a8-48a3-8224-30d2386fadaf", "enabled": true, "keyIdentifier": "https://EXAMPLEKeyVault.vault.azure.net/keys/EXAMPLEKey/d891821e3d364e9eb88fbd3d11807b86", "keyVaultName": "string", "requirePrivateNetworking": false, "resourceGroupName": "string", "secret": "string", "subscriptionID": "a39012fb-d604-4cd1-8841-77f705f3e6d5", "tenantID": "ee46317d-36a3-4472-a3dd-6549e901da0b" } }
暗号化のキーへのアクセスを取り消す
AKV内から Atlas の暗号化のキーへのアクセスを取り消して、データを固定できます。 暗号化のキーへのアクセスを取り消すと、Atlas はクラスターを自動的に一時停止します。
Azure Key 識別子のローテーション
注意
開始する前に、 「 Azure キー識別子のローテーションについて 」を参照してください。
Atlas プロジェクトに関連付けられたAKVに新しいキーを作成する必要があります。 次の手順では、Atlas で新しいキー識別子を指定して、Atlas プロジェクト キー識別子をローテーションする方法を説明します。
Atlas で、プロジェクトの [Advanced] ページに移動します。
まだ表示されていない場合は、プロジェクトを含む組織をナビゲーション バーの Organizations メニューで選択します。
まだ表示されていない場合は、ナビゲーション バーの Projects メニューからプロジェクトを選択します。
サイドバーで、 Security見出しの下のDatabase & Network Accessをクリックします。
サイドバーで、Advanced をクリックします。
詳細ページが表示されます。
Azure 認証情報を更新します。
Azure Key Vaultセレクターがまだアクティブでない場合は、 Azure Key Vaultをクリックします。
Encryption Keyセレクターがまだアクティブでない場合は、 Encryption Keyをクリックします。
Key Identifierフィールドに Azure キー識別子を入力します。
新しい暗号化キー識別子への完全なURLを含めます。 例:
https://mykeyvault.vault.azure.net/keys/AtlasKMSKey/a241124e3d364e9eb99fbd3e11124b23 重要
暗号化のキーは、プロジェクト用に構成されたキーヴォールトに属している必要があります。 プロジェクトに現在構成されているキーヴォールトを表示するには、 Key Vaultセクションをクリックします。
[Update Credentials] をクリックします。
Atlas は、キー識別子のローテーション プロセス中に Atlas UI にバナーを表示します。 変更がデプロイされるまで、元のキー識別子を削除したり無効にしたり しない でください。
クラスターが クラスターのバックアップを使用する場合は、スナップショットが暗号化にそのキーを使用していないことを検証するまで、元のキー識別子を削除したり無効にしたり しないでください。
関連トピック
Atlas クラスターの配置時にキー管理を使用して保管時の暗号化を有効にするには、「独自の暗号化キーの管理 」を参照してください。
既存の Atlas クラスターでキー管理を使用して保管時の暗号化を有効にするには、 「 保管時の暗号化の有効化 」を参照してください。
Atlas でキー管理を使用した保管時の暗号化の詳細については、「 カスタマー キー管理を使用した保管時の暗号化 」を参照してください。
MongoDB の保存時の暗号化の詳細については、MongoDB サーバーのドキュメントの「保存時の暗号化」を参照してください。
クラウドバックアップによる保管時の暗号化について詳しくは、「ストレージ エンジンとクラウドバックアップの暗号化」を参照してください。
検索ノードでカスタマーキー管理を有効にするには、検索ノードのデータ暗号化の有効化を参照してください。