Azure Database for PostgreSQL の Azure セキュリティ ベースライン - Hyperscale

このセキュリティ ベースラインにより、Azure セキュリティ ベンチマーク バージョン 1.0 のガイダンスが Azure Database for PostgreSQL - Hyperscale に適用されます。 Azure セキュリティ ベンチマークには、Azure 上のクラウド ソリューションをセキュリティで保護する方法に関する推奨事項がまとめてあります。 この内容は、Azure セキュリティ ベンチマーク、および Azure Database for PostgreSQL - Hyperscale に適用できる関連ガイダンスによって定義されているセキュリティ コントロールでグループ化されています。

このセキュリティ ベースラインとその推奨事項は、Microsoft Defender for Cloud を使用して監視できます。 Azure Policy定義は、Microsoft Defender for Cloud ダッシュボードの [規制コンプライアンス] セクションに一覧表示されます。

セクションに関連するAzure Policy定義がある場合は、Azure セキュリティ ベンチマークのコントロールと推奨事項への準拠を測定するのに役立つ、このベースラインに一覧表示されます。 一部の推奨事項では、特定のセキュリティ シナリオを有効にするために有料の Microsoft Defender プランが必要になる場合があります。

Note

Azure Database for PostgreSQL - Hyperscale に適用されない、または Microsoft の責任であるコントロールは除外されています。 Azure Database for PostgreSQL - Hyperscale を完全に Azure セキュリティ ベンチマークにマップする方法については、 完全な Azure Database for PostgreSQL - Hyperscale セキュリティ ベースライン マッピング ファイル を参照してください。

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

詳細については、Azure セキュリティ ベンチマークの「ネットワークのセキュリティ」を参照してください。

1.1:仮想ネットワーク内の Azure リソースを保護する

ガイダンス: Azure Database for PostgreSQL サーバーのファイアウォールは、どのコンピューターに権限を持たせるかを指定するまで、Hyperscale (Citus) コーディネーター ノードへのすべてのアクセスを遮断します。 ファイアウォールは、各要求の送信元 IP アドレスに基づいてサーバーへのアクセス権を付与します。 ファイアウォールを構成するには、受け入れ可能な IP アドレスの範囲を指定するファイアウォール規則を作成します。 ファイアウォール規則はサーバー レベルで作成できます。

責任: Customer

Microsoft Defender for Cloud による監視: Azure セキュリティ ベンチマークは Microsoft Defender for Cloud の既定のポリシー イニシアチブであり、Microsoft Defender for Cloud の推奨事項の基礎となります。 このコントロールに関連する Azure Policy 定義は、Microsoft Defender for Cloud によって自動的に有効になります。 このコントロールに関連するアラートでは、関連するサービスのために Microsoft Defender プランが必要になる場合があります。

Azure Policy 組み込み定義 - Microsoft.DBforPostgreSQL:

名前
(Azure portal)
説明 効果 Version
(GitHub)
PostgreSQL サーバーに対してプライベート エンドポイントを有効にする必要がある プライベート エンドポイント接続は、Azure Database for PostgreSQL へのプライベート接続を有効にすることで、通信のセキュリティを強化します。 既知のネットワークからのトラフィックへのアクセスを有効にし、Azure 内の IP アドレスも含めて他のすべての IP アドレスからのアクセスを防ぐために、プライベート エンドポイント接続を構成します。 AuditIfNotExists、Disabled 1.0.2

1.9:ネットワーク デバイスの標準的なセキュリティ構成を維持する

ガイダンス: Azure Policy を使用して、Azure Database for PostgreSQL インスタンスに関連付けられているネットワーク設定とネットワーク リソースの標準的なセキュリティ構成を定義して実装します。 Azure Database for PostgreSQL インスタンスのネットワーク構成を監査または適用するためのカスタム ポリシーを作成するには、"Microsoft.Network" 名前空間で Azure Policy エイリアスを使用します。

責任: Customer

ログ記録と監視

詳細については、Azure セキュリティ ベンチマークの「ログ記録と監視」を参照してください。

2.2:セキュリティ ログの一元管理を構成する

ガイダンス: コントロール プレーンの監査ログ記録については、Azure アクティビティ ログの診断設定を有効にして、Log Analytics ワークスペース、Azure イベント ハブ、または Azure ストレージ アカウントにログを送信してアーカイブします。 Azure アクティビティ ログのデータを使用すると、Azure リソースのコントロール プレーン レベルで実行された書き込み操作 (PUT、POST、DELETE) について、"いつだれが何を" 行ったのかを特定することができます。

また、Azure Monitor を介してログを取り込み、Hyperscale (Citus) によって生成されたセキュリティ データを集計します。 Azure Monitor 内で Log Analytics ワークスペースを使用してクエリを発行し、分析を実行して、長期/アーカイブ ストレージにはストレージ アカウントを使用します。 または、Microsoft Sentinel またはサードパーティのセキュリティ インシデントおよびイベント管理 (SIEM) に対してデータを有効にしてオンボードすることもできます。

責任: Customer

2.3:Azure リソースの監査ログ記録を有効にする

ガイダンス: Hyperscale (Citus) には、サーバー グループ内の各ノード用のメトリックが用意されています。 メトリックを使うと、サポート リソースの動作を分析できます。 各メトリックは 1 分間隔で出力されます。履歴は最大 30 日分です。

コントロール プレーンの監査ログ記録については、Azure アクティビティ ログの診断設定を有効にして、Log Analytics ワークスペース、Azure イベント ハブ、または Azure ストレージ アカウントにログを送信してアーカイブします。 Azure アクティビティ ログのデータを使用すると、Azure リソースのコントロール プレーン レベルで実行された書き込み操作 (PUT、POST、DELETE) について、"いつだれが何を" 行ったのかを特定することができます。

また、Azure Monitor を介してログを取り込み、Hyperscale (Citus) によって生成されたセキュリティ データを集計します。 Azure Monitor 内で Log Analytics ワークスペースを使用してクエリを発行し、分析を実行して、長期/アーカイブ ストレージにはストレージ アカウントを使用します。 または、Microsoft Sentinel またはサードパーティのセキュリティ インシデントおよびイベント管理 (SIEM) に対してデータを有効にしてオンボードすることもできます。

責任: Customer

2.5:セキュリティ ログのストレージ保持を構成する

ガイダンス: Azure Monitor 内で、Hyperscale (Citus) ログを保持するために使用される Log Analytics ワークスペースに対して、組織のコンプライアンス規則に従って保持期間を設定します。 長期/アーカイブ ストレージには Azure Storage アカウントを使用します。

責任: Customer

2.6:ログを監視して確認する

ガイダンス: Hyperscale (Citus) インスタンスからのログを分析および監視して、異常な動作がないか確認します。 ログを確認し、ログ データに対してクエリを実行するには、Azure Monitor の Log Analytics を使用します。 または、Microsoft Sentinel またはサード パーティの SIEM に対してデータを有効にしてオンボードすることもできます。

責任: Customer

2.7:異常なアクティビティについてのアラートを有効にする

ガイダンス: Hyperscale (Citus) の診断設定を有効にし、Log Analytics ワークスペースにログを送信することができます。 お使いの Azure のサービスの監視メトリックに基づいて、アラートを構成して受信することができます。 ログを確認し、ログ データに対してクエリを実行するには、Azure Monitor の Log Analytics を使用します。 または、Microsoft Sentinel またはサード パーティの SIEM に対してデータを有効にしてオンボードすることもできます。

Log Analytics ワークスペースを Microsoft Sentinel にオンボードします。これは、セキュリティ オーケストレーション自動応答 (SOAR) ソリューションが提供されるためです。 これにより、プレイブック (自動化されたソリューション) を作成して、セキュリティの問題を修復するために使用できます。

責任: Customer

ID およびアクセス制御

詳細については、Azure セキュリティ ベンチマークの「ID およびアクセス制御」を参照してください。

3.1: 管理アカウントのインベントリを維持する

ガイダンス: Hyperscale (Citus) インスタンスのコントロール プレーン (Azure portal など) への管理アクセス権を持つユーザー アカウントのインベントリを管理します。 さらに、Hyperscale (Citus) インスタンスの (データベース自体内の) データ プレーンへのアクセス権を持つ管理アカウントのインベントリを管理します。

Hyperscale (Citus) では、組み込みのロールベースのアクセス制御はサポートされませんが、特定のリソース プロバイダーの操作に基づいてカスタム ロールを作成することはできます。

さらに、PostgreSQL エンジンはロールを使用してデータベース オブジェクトへのアクセスを制御し、新しく作成された Hyperscale (Citus) サーバー グループにはいくつかのロールが事前に定義されています。 ユーザーの特権を変更するには、PgAdmin や psql などのツールを使用して、標準的な PostgreSQL コマンドを使用します。

責任: Customer

3.2: 既定のパスワードを変更する (該当する場合)

ガイダンス: Azure Active Directory (Azure AD) には、既定のパスワードの概念がありません。 パスワードを必要とする他の Azure リソースでは、パスワードが強制的に作成されます。これには複雑な要件と、サービスによって異なるパスワードの最小文字数が適用されます。 既定のパスワードが使用される可能性があるサードパーティ製のアプリケーションとマーケットプレース サービスについては、お客様が責任を負うものとします。

責任: Customer

3.3: 専用管理者アカウントを使用する

ガイダンス: Hyperscale (Citus) インスタンスへのアクセスに使用される専用管理者アカウントの使用に関する標準的な操作手順を作成します。 Azure リソースを管理する管理者アカウントは、Azure Active Directory (Azure AD) に関連付けられています。また、データベースのアクセス許可を管理するための、Hyperscale (Citus) サーバー グループ内に存在するローカル サーバー管理者アカウントもあります。 Microsoft Defender for Cloud の ID およびアクセス管理を使用して、Azure AD 内の管理アカウントの数を監視します。

責任: Customer

3.5: すべての Azure Active Directory ベースのアクセスに多要素認証を使用する

ガイダンス: Azure portal にアクセスするには、Azure Active Directory (Azure AD) の多要素認証を有効にし、Microsoft Defender for Cloud ID とアクセス管理の推奨事項に従います。

責任: Customer

3.6: すべての管理タスクに専用マシン (特権アクセス ワークステーション) を使用する

ガイダンス: 多要素認証が構成された特権アクセス ワークステーション (PAW) を使用して Azure リソースにログインし、構成します。

責任: Customer

3.7: アカウント ログイン動作の偏差に関するアラートを生成する

ガイダンス: Azure Active Directory (Azure AD) Privileged Identity Management (PIM) を使用して、環境内で疑わしいアクティビティまたは安全ではないアクティビティが発生したときにログとアラートを生成します。

Azure AD のリスク検出を使用して、危険なユーザーの行動に関するアラートとレポートを表示します。

責任: Customer

3.8:承認された場所からのみ Azure リソースを管理する

ガイダンス: ポータルや Azure Resource Manager での IP アドレス範囲または国と地域の特定の論理グループからのアクセスのみを許可するには、条件付きアクセスのネームド ロケーションを使用します。

責任: Customer

3.9: Azure Active Directory を使用する

ガイダンス: PostgreSQL リソースを管理する主要な認証および承認システムとして Azure Active Directory (Azure AD) を使用します。 Azure AD でデータを保護するには、保存データと転送中のデータに強力な暗号化を使用します。 また、Azure AD では、ユーザーの資格情報がソルト化およびハッシュされ、安全に格納されます。

Hyperscale (Citus) サーバー グループ内のユーザーを Azure AD アカウントに直接関連付けることはできません。 データベース オブジェクトへのアクセスのためのユーザー特権を変更するには、PgAdmin や psql などのツールで、標準的な PostgreSQL コマンドを使用します。

責任: Customer

3.10: ユーザー アクセスを定期的に確認して調整する

ガイダンス: ローカル データベースへのアクセス権を持つ、および Azure Active Directory (Azure AD) 経由で PostgreSQL リソースを管理するユーザーの両方のアクセス権を確認し、調整します。

Azure のデータベース リソースを管理するためのアクセス権を持つユーザーについては、古いアカウントを検出するために、Azure AD ログを確認してください。 さらに、Azure ID アクセス レビューを使用して、グループ メンバーシップ、Hyperscale (Citus) へのアクセスに使用される可能性のあるエンタープライズ アプリケーションへのアクセス、およびロールの割り当てを効率的に管理します。 ユーザー アクセスを定期的 (たとえば、90 日ごと) に確認し、正当なユーザーだけが継続してアクセスできるようにする必要があります。

責任: Customer

3.11: 非アクティブ化された資格情報へのアクセスの試行を監視する

ガイダンス: Azure Active Directory (Azure AD) 内では、Azure AD サインイン アクティビティ、監査、およびリスク イベント ログのソースにアクセスできるため、任意の SIEM または監視ツールと統合することができます。

このプロセスを効率化するには、Azure AD ユーザー アカウントの診断設定を作成し、監査ログとサインイン ログを Log Analytics ワークスペースに送信します。 Log Analytics ワークスペースで必要なアラートを構成できます。

責任: Customer

3.12: アカウント サインイン動作の偏差に関するアラートを生成する

ガイダンス: Azure Active Directory (Azure AD) レベルで、検出された疑わしいアクションに対する自動応答を構成するには、Azure ADの Identity Protection およびリスク検出の機能を使用します。 Microsoft Sentinel で自動応答を有効にして、組織のセキュリティ対応を実装することができます。

Microsoft Sentinel にログを取り込んで、さらに詳しく調査することもできます。

責任: Customer

3.13: サポート シナリオで関連する顧客データに Microsoft がアクセスできるようにする

ガイダンス: 現在は利用できません。Hyperscale (Citus) では、カスタマー ロックボックスはまだサポートされていません。

責任: Customer

データ保護

詳細については、Azure セキュリティ ベンチマークの「データ保護」を参照してください。

4.1: 機密情報のインベントリを維持する

ガイダンス: タグを使用すると、機密情報を格納または処理する Hyperscale (Citus) インスタンスや関連リソースの追跡に役立ちます。

責任: Customer

4.2:機密情報を格納または処理するシステムを分離する

ガイダンス:開発、テスト、および運用で別々のサブスクリプションまたは管理グループ、あるいはその両方を実装します。 管理ロールとファイアウォール規則の組み合わせを使用して、Azure Database for PostgreSQL インスタンスへのネットワーク アクセスを分離して制限します。

責任: Customer

4.4:転送中のすべての機密情報を暗号化する

ガイダンス: Hyperscale (Citus) コーディネーター ノードへのクライアント アプリケーション接続には、トランスポート層セキュリティ (TLS) 1.2 が必要です。 お使いのデータベース サーバーとクライアント アプリケーション間に TLS 接続を強制すると、サーバーとお使いのアプリケーション間のデータ ストリームを暗号化することにより、中間者 (man in the middle) 攻撃から保護するのに役立ちます。

Azure portal を使用してプロビジョニングされたすべての Azure Database for PostgreSQL サーバーでは、TLS 接続の適用が既定で有効になります。

安全に接続するために、信頼された証明機関 (CA) 証明書ファイル (.cer) から生成されたローカルの証明書ファイルがサードパーティ アプリケーションに必要な場合があります。

責任: 共有

Microsoft Defender for Cloud による監視: Azure セキュリティ ベンチマークは Microsoft Defender for Cloud の既定のポリシー イニシアチブであり、Microsoft Defender for Cloud の推奨事項の基礎となります。 このコントロールに関連する Azure Policy 定義は、Microsoft Defender for Cloud によって自動的に有効になります。 このコントロールに関連するアラートでは、関連するサービスのために Microsoft Defender プランが必要になる場合があります。

Azure Policy 組み込み定義 - Microsoft.DBforPostgreSQL:

名前
(Azure portal)
説明 効果 Version
(GitHub)
PostgreSQL データベース サーバーでは [SSL 接続を強制する] が有効でなければならない Azure Database for PostgreSQL では、Secure Sockets Layer (SSL) を使用する Azure Database for PostgreSQL サーバーからクライアント アプリケーションへの接続がサポートされています。 お使いのデータベース サーバーとクライアント アプリケーション間に SSL 接続を強制すると、サーバーとお使いのアプリケーション間のデータ ストリームを暗号化することにより、中間者 (man in the middle) 攻撃から保護するのに役立ちます。 この構成では、データベース サーバーへのアクセスに対して SSL が常に有効にされます。 Audit、Disabled 1.0.1

4.6:Azure RBAC を使用してリソースへのアクセスを制御する

ガイダンス: Azure ロールベースのアクセス制御 (Azure RBAC) を使用して、Hyperscale (Citus) コントロール プレーン (Azure portal など) へのアクセスを制御します。 Azure RBAC は、データベース内のユーザーのアクセス許可には影響しません。

データベース レベルでユーザーの特権を変更するには、PgAdmin や psql などのツールを使用して、標準的な PostgreSQL コマンドを使用します。

責任: Customer

4.8:機密情報を保存時に暗号化する

ガイダンス: 少なくとも 1 日に 1 回、Azure Database for PostgreSQL Hyperscale (Citus) では、データ ファイルとデータベース トランザクション ログのスナップショット バックアップが作成されます。 バックアップを使用すると、サーバーを、保持期間内の任意の時点に復元できます (保持期間は現在、すべてのクラスターで 35 日です)。すべてのバックアップが、AES 256 ビット暗号化を使用して暗号化されます。 PostgreSQL Hyperscale (Citus) オファリングでは、暗号化に Microsoft マネージド キーを使用します。

責任: 共有

4.9:重要な Azure リソースへの変更に関するログとアラート

ガイダンス: Hyperscale (Citus) の運用インスタンスやその他の重要または関連するリソースへの変更がいつ発生したかに関するアラートを作成するには、Azure Monitor と Azure アクティビティ ログを使用します。

責任: Customer

脆弱性の管理

詳細については、Azure セキュリティ ベンチマークの「脆弱性の管理」を参照してください。

5.1:自動化された脆弱性スキャン ツールを実行する

ガイダンス: 現在は使用できません。Microsoft Defender for Cloud では、Azure Database for PostgreSQL - Hyperscale (Citus) の脆弱性評価はまだサポートされていません。

責任: 共有

インベントリと資産の管理

詳細については、Azure セキュリティ ベンチマークの「インベントリと資産の管理」を参照してください。

6.1:自動化された資産検出ソリューションを使用する

ガイダンス: サブスクリプション内のすべてのリソース (Hyperscale (Citus) インスタンスを含む) のクエリや検出を実行するには、Azure Resource Graph を使用します。 テナント内の適切な (読み取り) アクセス許可を持っており、サブスクリプション内のリソースだけでなく、すべての Azure サブスクリプションを列挙できることを確認します。

責任: Customer

6.2:資産メタデータを保持する

ガイダンス: メタデータを提供する Hyperscale (Citus) インスタンスやその他の関連リソースにタグを適用し、論理的に分類してまとめます。

責任: Customer

6.3:承認されていない Azure リソースを削除する

ガイダンス: 必要に応じて、タグ付け、管理グループ、および個別のサブスクリプションを使用して、Hyperscale (Citus) インスタンスと関連リソースの整理と追跡を行います。 定期的にインベントリを調整し、承認されていないリソースがサブスクリプションから適切なタイミングで削除されるようにします。

責任: Customer

6.4:承認された Azure リソースのインベントリを定義および管理する

ガイダンス:次の組み込みのポリシー定義を使用して、顧客のサブスクリプション内に作成できるリソースの種類に制限を適用するには、Azure Policy を使用します。

  • 許可されないリソースの種類

  • 許可されるリソースの種類

また、Azure Resource Graph を使用すると、サブスクリプション内のリソースのクエリまたは検出を行えます。

責任: Customer

6.5:承認されていない Azure リソースを監視する

ガイダンス:次の組み込みのポリシー定義を使用して、顧客のサブスクリプション内に作成できるリソースの種類に制限を適用するには、Azure Policy を使用します。

  • 許可されないリソースの種類
  • 許可されるリソースの種類

また、Azure Resource Graph を使用すると、サブスクリプション内のリソースのクエリまたは検出を行えます。

責任: Customer

6.9:承認された Azure サービスのみを使用する

ガイダンス:次の組み込みのポリシー定義を使用して、顧客のサブスクリプション内に作成できるリソースの種類に制限を適用するには、Azure Policy を使用します。

責任: Customer

6.11:Azure Resource Manager を操作するユーザーの機能を制限する

ガイダンス: Azure Conditional Access を使用して Azure Resource Manager を操作するユーザーの権限を制限するには、"Microsoft Azure 管理" アプリに対して [アクセスのブロック] を構成します。 これにより、機密情報を含む Hyperscale (Citus) のインスタンスなど、高セキュリティ環境内でのリソースの作成と変更を防ぐことができます。

責任: Customer

セキュリティで保護された構成

詳細については、Azure セキュリティ ベンチマークの「セキュリティで保護された構成」を参照してください。

7.1:すべての Azure リソースに対してセキュリティで保護された構成を確立する

ガイダンス: Azure Policy を使用して、Hyperscale (Citus) インスタンスの標準のセキュリティ構成を定義および実装します。 Azure Database for PostgreSQL インスタンスのネットワーク構成を監査または適用するためのカスタム ポリシーを作成するには、Azure Policy を使用します。

また、Azure Resource Manager には、テンプレートを JavaScript Object Notation (JSON) でエクスポートする機能があり、構成が確実に組織のセキュリティ要件を満たすかそれを超えるように確認する必要があります。

責任: Customer

7.3:セキュリティで保護された Azure リソースの構成を維持する

ガイダンス: Azure リソース全体にセキュリティで保護された設定を適用するには、Azure ポリシー [拒否] と [存在する場合はデプロイする] を使用します。 さらに、Azure Resource Manager テンプレートを使用して、組織に必要な Azure リソースのセキュリティ構成を維持できます。

責任: Customer

7.5:Azure リソースの構成を安全に格納する

ガイダンス: Hyperscale (Citus) インスタンスと関連リソースにカスタム Azure Policy 定義を使用する場合は、Azure Repos を使ってコードを安全に格納および管理します。

責任: Customer

7.7:Azure リソース用の構成管理ツールをデプロイする

ガイダンス:Azure リソース全体にセキュリティで保護された設定を適用するには、Azure ポリシー [拒否] と [存在する場合はデプロイする] を使用します。 さらに、Azure Resource Manager テンプレートを使用して、組織に必要な Azure リソースのセキュリティ構成を維持できます。

責任: Customer

7.9:Azure リソースの自動構成監視を実装する

ガイダンス: システム構成のアラート生成、監査、および適用のためのカスタム ポリシーを作成するには、"Microsoft.DBforPostgreSQL" 名前空間で Azure Policy エイリアスを使用します。 Azure ポリシーの [audit]、[deny]、[deploy if not exist] を使用して、Azure Database for PostgreSQL インスタンスおよび関連リソースの構成を自動的に適用します。

責任: Customer

7.12:ID を安全かつ自動的に管理する

ガイダンス: 現在、Azure Database for PostgreSQL - Hyperscale (Citus) では、マネージド ID は直接はサポートされていません。 Azure Database for PostgreSQL サーバーを作成するときに、管理者ユーザーの資格情報を指定する必要があります。 Azure portal インターフェイスで追加のユーザー ロールを作成できます。

責任: Customer

7.13:意図しない資格情報の公開を排除する

ガイダンス: コード内で資格情報を特定する資格情報スキャナーを実装します。 また、資格情報スキャナーを使うと、検出された資格情報を、Azure Key Vault などのより安全な場所に移動しやすくなります。

責任: Customer

マルウェアからの防御

詳細については、Azure セキュリティ ベンチマークの「マルウェアからの防御」を参照してください。

8.2:非コンピューティング Azure リソースにアップロードするファイルを事前にスキャンする

ガイダンス: Microsoft のマルウェア対策は、Azure サービス (Hyperscale (Citus) など) をサポートしている基になるホストで有効になっていますが、顧客のコンテンツに対しては実行されません。

App Service、Data Lake Storage、Blob Storage、Azure Database for PostgreSQL などの非コンピューティング Azure リソースにアップロードされるコンテンツはすべて、事前にスキャンしてください。Microsoft は、これらのインスタンス内のデータにアクセスできません。

責任: Customer

データの復旧

詳細については、Azure セキュリティ ベンチマークの「データの復旧」を参照してください。

9.1:定期的に自動バックアップを行う

ガイダンス: Azure Database for PostgreSQL – Hyperscale (Citus) では、各ノードのバックアップを自動的に作成し、ローカル冗長ストレージに格納します。 バックアップを使用して、指定した時間に Hyperscale (Citus) クラスターを復元することができます。

責任: Customer

Microsoft Defender for Cloud による監視: Azure セキュリティ ベンチマークは Microsoft Defender for Cloud の既定のポリシー イニシアチブであり、Microsoft Defender for Cloud の推奨事項の基礎となります。 このコントロールに関連する Azure Policy 定義は、Microsoft Defender for Cloud によって自動的に有効になります。 このコントロールに関連するアラートでは、関連するサービスのために Microsoft Defender プランが必要になる場合があります。

Azure Policy 組み込み定義 - Microsoft.DBforPostgreSQL:

名前
(Azure portal)
説明 効果 Version
(GitHub)
Azure Database for PostgreSQL の geo 冗長バックアップを有効にする必要がある Azure Database for PostgreSQL を使用すると、データベース サーバーの冗長オプションを選択できます。 これを、geo 冗長バックアップ ストレージに設定できます。これに設定すると、データはサーバーがホストされているリージョン内に格納されるだけでなく、リージョンの障害が発生した場合に復旧オプションを提供するために、ペア リージョンにもレプリケートされます。 バックアップに対して geo 冗長ストレージを構成できるのは、サーバーの作成時だけです。 Audit、Disabled 1.0.1

9.2: システムの完全バックアップを実行し、すべてのカスタマー マネージド キーをバックアップする

ガイダンス: 少なくとも 1 日に 1 回、Azure Database for PostgreSQL では、データ ファイルとデータベース トランザクション ログのスナップショット バックアップが作成されます。 バックアップを使用すると、サーバーを、保持期間内の任意の時点に復元できます 保持期間は現在、すべてのクラスターで 35 日です。 すべてのバックアップが、AES 256 ビット暗号化を使用して暗号化されます。

可用性ゾーンをサポートする Azure リージョンでは、バックアップ スナップショットは 3 つの可用性ゾーンに格納されます。 少なくとも 1 つの可用性ゾーンがオンラインになっている限り、Hyperscale (Citus) クラスターは復元可能です。

責任: Customer

Microsoft Defender for Cloud による監視: Azure セキュリティ ベンチマークは Microsoft Defender for Cloud の既定のポリシー イニシアチブであり、Microsoft Defender for Cloud の推奨事項の基礎となります。 このコントロールに関連する Azure Policy 定義は、Microsoft Defender for Cloud によって自動的に有効になります。 このコントロールに関連するアラートでは、関連するサービスのために Microsoft Defender プランが必要になる場合があります。

Azure Policy 組み込み定義 - Microsoft.DBforPostgreSQL:

名前
(Azure portal)
説明 効果 Version
(GitHub)
Azure Database for PostgreSQL の geo 冗長バックアップを有効にする必要がある Azure Database for PostgreSQL を使用すると、データベース サーバーの冗長オプションを選択できます。 これを、geo 冗長バックアップ ストレージに設定できます。これに設定すると、データはサーバーがホストされているリージョン内に格納されるだけでなく、リージョンの障害が発生した場合に復旧オプションを提供するために、ペア リージョンにもレプリケートされます。 バックアップに対して geo 冗長ストレージを構成できるのは、サーバーの作成時だけです。 Audit、Disabled 1.0.1

9.3:カスタマー マネージド キーを含むすべてのバックアップを検証する

ガイダンス:Azure Database for PostgreSQL では、Hyperscale (Citus) クラスターを復元すると、元のノードのバックアップから新しいクラスターが作成されます。 過去 35 日以内の任意の時点にクラスターを復元することができます。 復元プロセスでは、元のものと同じ Azure リージョン、サブスクリプション、およびリソース グループに新しいクラスターが作成されます。 新しいクラスター構成は、元のクラスター構成と同じです。ノード数、仮想コア数、ストレージ サイズ、およびユーザー ロールが同じです。

ファイアウォール設定と PostgreSQL サーバーのパラメーターは元のサーバー グループから保持されず、既定値にリセットされます。 ファイアウォールによって、すべての接続が阻止されます。 復元後にこれらの設定を手動で調整する必要があります。

責任: Customer

9.4: バックアップとカスタマー マネージド キーの保護を保証する

ガイダンス: 削除された Hyperscale (Citus) クラスターを復元することはできません。 クラスターを削除すると、そのクラスターに属するすべてのノードが削除され、復旧できなくなります。 管理者は、デプロイ後のクラスターのリソースを誤削除や予期せぬ変更から保護するために、管理ロックを利用できます。

責任: Customer

インシデント対応

詳細については、Azure セキュリティ ベンチマークの「インシデント対応」を参照してください。

10.1:インシデント対応ガイドを作成する

ガイダンス: 組織のインシデント対応ガイドを作成します。 要員のすべてのロールを定義するインシデント対応計画が記述されていることと、検出からインシデント後のレビューまでのインシデント対応/管理のフェーズがあることを確認します。

責任: Customer

10.2:インシデントのスコアリングと優先順位付けの手順を作成する

ガイダンス: Microsoft Defender for Cloud によって各アラートに重大度が割り当てられるため、最初に調査する必要があるアラートの優先順位付けに役立ちます。 重要度は、アラートの発行に使用された検出内容またはメトリックに対する Microsoft Defender for Cloud の信頼度と、アラートの原因となったアクティビティの背後に悪意のある意図があったかどうかの信頼レベルに基づいて決まります。

さらに、サブスクリプション (運用、非運用など) を明確にマークし、Azure リソースを明確に識別および分類するための命名システムを作成します。

責任: Customer

10.3:セキュリティ対応手順のテスト

ガイダンス:定期的にシステムのインシデント対応機能をテストする演習を実施します。 弱点やギャップを特定し、必要に応じて計画を見直します。

責任: Customer

10.4:セキュリティ インシデントの連絡先の詳細を指定し、セキュリティ インシデントのアラート通知を構成します

ガイダンス:セキュリティ インシデントの連絡先情報は、Microsoft Security Response Center (MSRC) で、不正なユーザーまたは権限のないユーザーによるお客様のデータへのアクセスが検出された場合に、Microsoft からの連絡先として使用されます。 事後にインシデントをレビューして、問題が解決されていることを確認します。

責任: Customer

10.5:インシデント対応システムにセキュリティ アラートを組み込む

ガイダンス: 連続エクスポート機能を使用して Microsoft Defender for Cloud のアラートと推奨事項をエクスポートします。 連続エクスポートを使用すると、アラートと推奨事項を手動で、または継続した連続的な方法でエクスポートできます。 Microsoft Defender for Cloud データ コネクタを使用してアラートを Microsoft Sentinel にストリーミングできます。

責任: Customer

10.6:セキュリティ アラートへの対応を自動化する

ガイダンス: セキュリティ アラートや推奨事項に対して「Logic Apps」経由で応答を自動的にトリガーするには、Microsoft Defender for Cloud のワークフローの自動化機能を使用します。

責任: Customer

侵入テストとレッド チーム演習

詳細については、Azure セキュリティ ベンチマークの「侵入テストとレッド チーム演習」を参照してください。

11.1:Azure リソースの通常の侵入テストを実施し、セキュリティに関する重大な調査結果がすべて、確実に修復されるようにする

ガイダンス: お客様の侵入テストが Microsoft のポリシーに違反しないように、確実に次の Microsoft の活動規則に従ってください。 https://www.microsoft.com/msrc/pentest-rules-of-engagement?rtc=1

責任: 共有

次のステップ