次の方法で共有


Azure Cosmos DB for NoSQL アカウントをセキュリティで保護する

Azure Cosmos DB for NoSQL は、ミッション クリティカルなアプリケーション向けに設計された、グローバルに分散されたマルチモデル データベース サービスです。 Azure Cosmos DB には、データを保護するための組み込みのセキュリティ機能が用意されていますが、ベスト プラクティスに従って、アカウント、データ、ネットワーク構成のセキュリティをさらに強化することが不可欠です。

この記事では、Azure Cosmos DB for NoSQL デプロイを最適にセキュリティで保護する方法に関するガイダンスを提供します。

ネットワークのセキュリティ

  • パブリック ネットワーク アクセスを無効にし、プライベート エンドポイントのみを使用する: Azure Cosmos DB for NoSQL をデプロイします。Azure-deloyed 仮想ネットワークへのネットワーク アクセスを制限する構成を使用します。 アカウントは、構成した特定のサブネットを介して公開されます。 次に、アカウント全体のパブリック ネットワーク アクセスを無効にし、アカウントに接続するサービス専用のプライベート エンドポイントを使用します。 詳細については、 仮想ネットワーク アクセスの構成プライベート エンドポイントからのアクセスの構成に関する説明を参照してください。

  • ネットワーク分離のためにネットワーク セキュリティ境界を有効にする: ネットワーク境界 (NSP) を使用して、ネットワーク境界を定義し、パブリック インターネット アクセスから分離することで、Azure Cosmos DB アカウントへのアクセスを制限します。 詳細については、「 ネットワーク セキュリティ境界の構成」を参照してください。

ID 管理

  • マネージド ID を使用して他の Azure サービスからアカウントにアクセスする: マネージド ID では、Microsoft Entra ID で自動的にマネージド ID を提供することで、資格情報を管理する必要がなくなります。 マネージド ID を使用して、コードに資格情報を埋め込まずに、他の Azure サービスから Azure Cosmos DB に安全にアクセスします。 詳細については、「Azure リソースのマネージド ID」を参照してください。

  • Azure コントロール プレーンのロールベースのアクセス制御を使用してアカウント データベースとコンテナーを管理する: Azure ロールベースのアクセス制御を適用して、Azure Cosmos DB アカウント、データベース、コンテナーを管理するためのきめ細かなアクセス許可を定義します。 この制御により、承認されたユーザーまたはサービスのみが管理操作を実行できるようになります。 詳しくは、「コントロール プレーン アクセスを付与する」をご覧ください。

  • ネイティブ データ プレーンのロールベースのアクセス制御を使用して、コンテナー内の項目のクエリ、作成、アクセスを行います。データ プレーンロールベースのアクセス制御を実装して、Azure Cosmos DB コンテナー内の項目のクエリ、作成、およびアクセスに最小限の特権アクセスを適用します。 この制御は、データ操作をセキュリティで保護するのに役立ちます。 詳細については、「 データ プレーンへのアクセスを許可する」を参照してください。

  • データとコントロール プレーンのアクセスに使用される Azure ID を分離する: コントロール プレーンとデータ プレーンの操作に個別の Azure ID を使用して、特権エスカレーションのリスクを軽減し、アクセス制御を強化します。 この分離により、各 ID のスコープを制限することでセキュリティが強化されます。

トランスポート セキュリティ

  • トランスポート セキュリティに TLS 1.3 を使用して適用する: トランスポート層セキュリティ (TLS) 1.3 を適用して、転送中のデータを最新の暗号化プロトコルでセキュリティで保護し、より強力な暗号化とパフォーマンスの向上を保証します。 詳細については、「 最小 TLS 強制」を参照してください。

データの暗号化

  • サービスマネージド キーまたはカスタマー マネージド キー (CMK) を使用して保存中または移動中のデータを暗号化する: 保存時および転送中の機密データを暗号化して保護します。 暗号化をより詳細に制御するために、サービス管理キーを使用してわかりやすくするか、カスタマー マネージド キーを使用します。 詳細については、「カスタマー マネージド キーを構成する」を参照してください。

  • Always Encrypted を使用してクライアント側の暗号化を使用してデータをセキュリティで保護する: Always Encrypted では、Azure Cosmos DB に送信される前に機密データがクライアント側で暗号化され、セキュリティが強化されます。 詳細については、「 Always Encrypted」を参照してください。

バックアップと復元

  • ネイティブの継続的バックアップと復元を有効にする: 継続的バックアップを有効にしてデータを保護します。これにより、保持期間内の任意の時点に Azure Cosmos DB アカウントを復元できます。 詳細については、「 連続バックアップと復元」を参照してください。

  • バックアップと回復の手順をテストする: バックアップ プロセスの有効性を確認するには、データベース、コンテナー、および項目の復元を定期的にテストします。 詳細については、「 コンテナーまたはデータベースの復元」を参照してください。