Azure Synapse 専用 SQL プール (旧称 SQL DW) の Azure セキュリティ ベースラインに関するページ

このセキュリティ ベースラインにより、Azure セキュリティ ベンチマーク バージョン 2.0 のガイダンスが Azure Synapse 専用 SQL プール (旧称 SQL DW) に適用されます。 Azure セキュリティ ベンチマークには、Azure 上のクラウド ソリューションをセキュリティで保護する方法に関する推奨事項がまとめてあります。 内容は、Azure セキュリティ ベンチマークで定義されているセキュリティ コントロールと、Azure Synapse 専用 SQL プールに適用される関連ガイダンスでグループ化されています。

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

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

Note

Azure Synapse 専用 SQL プール (旧称 SQL DW) に適用されないコントロールと、グローバル ガイダンスがそのまま推奨されているコントロールは、除外しています。 Azure Synapse 専用 SQL プール (旧称 SQL DW) を完全に Azure セキュリティ ベンチマークにマップする方法については、完全な Azure Synapse 専用 SQL プール (旧称 SQL DW) セキュリティ ベースラインのマッピング ファイルを参照してください。

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

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

NS-1: 内部トラフィック用のセキュリティを実装する

ガイダンス: Azure Synapse Analytics リソースをデプロイする場合は、仮想ネットワークを作成するか既存のものを使用します。 すべての Azure 仮想ネットワークが、ビジネス リスクに合わせたエンタープライズ セグメント化の原則に従っていることを確認します。

お使いのシステムによって、組織のリスクがより高くなりますか? その場合、独自の仮想ネットワーク内のそのシステムを分離します。 ネットワーク セキュリティ グループ (NSG) や Azure Firewall を使用して、仮想ネットワークを十分にセキュリティで保護します。

NSG の構成には、Microsoft Defender for Cloud のアダプティブ ネットワークのセキュリティ強化機能を使います。 これらの構成は、外部ネットワークのトラフィック規則を参照して、ポートおよびソース IP を制限します。

アプリケーションとエンタープライズのセグメント化戦略に基づき、NSG ルールのもとで内部リソース間のトラフィックを制限または許可します。 特定の適切に定義されたアプリケーション (3 層アプリなど) では、この処理を高度にセキュリティで保護された、既定で拒否にすることができます。

Microsoft Sentinel を使用して、次のような従来の安全でないプロトコルの使用を検出します。

  • SSL/TLSv1
  • SMBv1
  • LM/NTLMv1
  • WDigest
  • 署名されていない LDAP バインド
  • Kerberos の脆弱な暗号

最小 TLS バージョン設定では、顧客が SQL データ ウェアハウスで使う TLS バージョンを選ぶことができます。 現時点では、TLS 1.0、1.1、および 1.2 がサポートされています。 最小 TLS バージョンを設定すると、それより新しい TLS バージョンは確実にサポートされます。 たとえば、TLS バージョン 1.1 を選ぶと、TLS 1.1 および 1.2 による接続のみが許可されます。 TLS 1.0 での接続は拒否されます。

ローカル コンピューターから Azure Synapse Analytics のデータ ウェアハウスにアクセスしますか? その場合、ネットワークとローカル コンピューターのファイアウォールで TCP ポート 1433 での送信通信が許可されていることを確認します。

[パブリック ネットワーク アクセスの拒否] が [はい] に設定されている場合、プライベート エンドポイント経由の接続のみが許可されます。 この設定が [いいえ] (既定) の場合、顧客は次を使用して接続できます。

  • IP ベースか仮想ネットワーク ベースのファイアウォール規則を使ったパブリック エンドポイント。
  • Azure Private Link を使ったプライベート エンドポイント。

この動作については、ネットワーク アクセスの概要を参照してください。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
Azure SQL Database のパブリック ネットワーク アクセスを無効にする必要がある パブリック ネットワーク アクセス プロパティを無効にすると、Azure SQL Database へのアクセスがプライベート エンドポイントのみに制限されるため、セキュリティが強化されます。 この構成により、IP または仮想ネットワーク ベースのファイアウォール規則に一致するすべてのログインが拒否されます。 Audit、Deny、Disabled 1.1.0

NS-2: プライベート ネットワークをまとめて接続する

ガイダンス: Azure ExpressRoute または Azure 仮想プライベート ネットワーク (VPN) を使用して、コロケーション環境内で Azure のデータセンターとオンプレミスのインフラストラクチャ間のプライベート接続を作成します。 ExpressRoute 接続はパブリックなインターネットを経由しません。 一般的なインターネット接続と比較すると、ExpressRoute 接続では次のことを提供します。

  • 信頼性が高い
  • 高速
  • 待機時間が短い

ポイント対サイト VPN およびサイト間 VPN を使う必要がありますか? その場合、オンプレミスのデバイスやネットワークを仮想ネットワークに接続します。 これらの VPN オプションと Azure ExpressRoute を組み合わせて使うことができます。

Azure で 2 つ以上の仮想ネットワークを接続するには、仮想ネットワーク ピアリングを使用します。 ピアリングされた仮想ネットワーク間のネットワーク トラフィックはプライベートである。 このトラフィックは Azure バックボーン ネットワークで維持されます。

Private Link を使うと、プライベート エンドポイントを介して Azure SQL サーバーに接続できます。 プライベート エンドポイントは、特定の仮想ネットワークおよびサブネット内のプライベート IP アドレスです。 SQL 管理者は、プライベート エンドポイントの接続を承認または拒否することを選ぶことができます。 管理者は、必要に応じて短いテキスト応答を追加できます。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
Azure SQL Database のプライベート エンドポイント接続を有効にする必要がある プライベート エンドポイント接続は、Azure SQL Database へのプライベート接続を有効にすることで、通信のセキュリティを強化します。 Audit、Disabled 1.1.0

NS-3: Azure サービスへのプライベート ネットワーク アクセスを確立する

ガイダンス: Azure Private Link を使うと、インターネットを介さずに仮想ネットワークから Azure Synapse Analytics にプライベート アクセスできるようにします。 プライベート アクセスは、Azure サービスが提供する認証およびトラフィックのセキュリティに対する、別の多層防御手段となります。

また、データ ウェアハウスをホストする Azure SQL サーバーへのパブリック ネットワーク アクセスを拒否することもできます。 この構成を有効にすると、プライベート エンドポイントを介した接続のみが許可されます。

PolyBase と COPY ステートメントは、Azure Storage アカウントから Azure Synapse Analytics にデータを読み込むときによく使用されます。 ただし、PolyBase と COPY ステートメントからアカウントへの接続は中断される可能性があります。 この中断のシナリオでは、Azure Storage アカウントは、一連の以下を介する仮想ネットワーク サブネットだけにアクセスが制限されます。

  • プライベート エンドポイント
  • サービス エンドポイント
  • IP ベースのファイアウォール

Azure Virtual Network サービス エンドポイントを使用して、Azure Synapse Analytics へのセキュリティで保護されたアクセスを提供します。 Azure Virtual Network は、インターネットを経由しない、Azure のバックボーン ネットワークを介した最適化されたルートを使います。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
Azure SQL Database のプライベート エンドポイント接続を有効にする必要がある プライベート エンドポイント接続は、Azure SQL Database へのプライベート接続を有効にすることで、通信のセキュリティを強化します。 Audit、Disabled 1.1.0

NS-4: 外部ネットワーク攻撃からアプリケーションやサービスを保護する

ガイダンス: Azure Synapse Analytics のリソースを、次のような外部ネットワーク攻撃から保護します。

  • 分散型サービス拒否 (DDoS) 攻撃。
  • アプリケーション固有の攻撃。
  • 未承諾で悪意のある可能性があるインターネット トラフィック。

Azure Firewall を使って、インターネットや他の外部の場所からの、悪意がある可能性のあるトラフィックから、アプリケーションやサービスを保護します。 DDoS 攻撃から資産を保護するには、Azure 仮想ネットワークで DDoS 標準保護を有効にします。 Microsoft Defender for Cloud を使用して、ネットワーク関連リソースに対する誤った構成のリスクを検出します。

Azure Synapse Analytics は、Web アプリケーションを実行するためのものではありません。 そのため、Web アプリケーションを標的とした外部ネットワーク攻撃から保護する必要はありません。 その他の構成や追加のネットワーク サービスのデプロイも必要ありません。

責任: 共有

NS-6: ネットワーク セキュリティ規則を簡略化する

ガイダンス: Azure Virtual Network サービス タグを使って、Azure Synapse Analytics リソースに構成された NSG または Azure Firewall のネットワーク アクセス制御を定義します。 セキュリティ規則を作成するときは、特定の IP アドレスの代わりにサービス タグを使うことができます。 規則のソースまたは宛先にサービス タグ名を指定することで、対応するサービスのトラフィックを許可または拒否します。 Microsoft が、サービス タグに包含されるアドレス プレフィックスを管理します。 その後、アドレスが変更されると、Microsoft は自動的にサービス タグを更新します。

Azure Synapse SQL プールに対するサービス エンドポイントを使っている場合は、Azure SQL データベースのパブリック IP アドレスへの送信トラフィックが必要です。 Azure SQL Database の IP に対して NSG を開き、接続を許可します。 Azure SQL Database の NSG サービス タグを使うと、この要件が満たされます。

責任: 共有

NS-7: セキュリティで保護されたドメイン ネーム サービス (DNS)

ガイダンス: DNS セキュリティのベスト プラクティスに従うと、次のような一般的な攻撃の防止に役立ちます。

  • ダングリング DNS
  • DNS アンプ攻撃
  • DNS ポイズニングとスプーフィング

Azure DNS を権限のある DNS サービスとして使っていますか? その場合、Azure RBAC とリソース ロックを使って、DNS ゾーンとレコードを偶発的または悪意のある変更から保護します。

DNS エイリアスを使って、データ ウェアハウスを格納している Azure SQL サーバーに接続できます。 PowerShell と REST API では、論理 SQL サーバー名の DNS エイリアスの作成や管理を行う呼び出しを使用できます。 サーバー名の代わりに DNS エイリアスを使うことができます。 クライアント プログラムで接続文字列内にエイリアスを使用することができます。 DNS エイリアスには、クライアント プログラムを別のサーバーにリダイレクトする変換レイヤーがあります。 このレイヤーによって、すべてのクライアントとその接続文字列を特定して編集する手間を省くことができます。

クライアント プログラム開発の開始時に、接続文字列で DNS エイリアスを使用します。 エイリアスのプロパティがサーバーのテスト版を参照するよう設定します。 その後、新しいシステムの運用を開始するときに、運用サーバーを参照するようにエイリアスのプロパティを更新します。 クライアント プログラムを変更する必要はありません。

責任: 共有

ID 管理

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

IM-1:Azure Active Directory を中央 ID および認証システムとして標準化する

ガイダンス: Azure Synapse Analytics では、Azure Active Directory (Azure AD) を既定の ID およびアクセス管理サービスとして使用します。 Azure AD を標準化して、以下での組織の ID とアクセス管理を統制します。

  • 次のような Microsoft Cloud リソース:

    • Azure portal
    • Azure Storage
    • Azure 仮想マシン (Linux と Windows)
    • Azure Key Vault
    • PaaS
    • SaaS アプリケーション
  • Azure 上のアプリケーションや企業ネットワーク リソースなどの組織のリソース。

組織のクラウド セキュリティ プラクティスにおいて、Azure AD に対するセキュリティ保護の優先順位を高くしてください。 Azure AD は、ID セキュリティ スコアを提供しています。 このスコアは、Microsoft のベスト プラクティスの推奨事項と比較して、ID セキュリティ体制を評価するのに役立ちます。 このスコアを使用して、構成がベスト プラクティスの推奨事項にどの程度一致しているかを測定します。 さらには、スコアを使用してセキュリティ体制を改善できます。

注: Azure AD では外部 ID をサポートしています。 Microsoft アカウントのないユーザーは、自分の外部 ID でアプリケーションやリソースにサインインできます。

専用 SQL プール (旧称 SQL DW) の場合、Azure AD 認証では、包含データベース ユーザーを使用して、データベース レベルで ID を認証します。 Azure AD では、多要素認証を含む Active Directory ユニバーサル認証を使って SQL Server Management Studio から接続することができます。 Azure AD は、Active Directory 対話型認証を使用する SQL Server Data Tools (SSDT) からの同様の接続をサポートしています。

専用 SQL プール (旧称 SQL DW) の管理には、3 つの Azure RBAC 組み込みロールを利用することができます。

  1. SQL DB 共同作成者は、SQL データ ウェアハウスを管理できますが、アクセスすることはできません。 セキュリティ関連のポリシーまたは親 SQL サーバーを管理することはできません。

  2. SQL セキュリティ管理者は、SQL サーバーとデータ ウェアハウスのセキュリティ関連のポリシーを管理できますが、それらにアクセスすることはできません。

  3. SQL Server 共同作成者は、SQL サーバーとデータ ウェアハウスを管理できますが、それらにアクセスすることはできません。 セキュリティ関連のポリシーを管理することはできません。

Azure SQL は、SQL 認証もサポートしています。 この認証方法では、ユーザーはユーザー アカウント名と、関連付けられたパスワードを送信して接続を確立します。 このパスワードは、次の 2 つの場所のいずれかに格納されます。

  • サインイン情報にリンクされているユーザー アカウントのマスター データベース。
  • サインイン情報にリンクされていないユーザー アカウントを含むデータベース。

サインイン情報は、マスター データベース内の単一のアカウントであり、1 つ以上のデータベース内のユーザー アカウントをリンクさせることができます。 サインイン情報の使用では、そのユーザー アカウントの資格情報がサインイン情報と共に格納されます。

ユーザー アカウントは、任意のデータベースにおける個々のアカウントであり、サインイン情報とリンクしていてもしていなくても構いません。 サインイン情報にリンクされていないユーザー アカウントの使用では、資格情報はユーザー アカウントと共に格納されます。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
SQL Server に対して Azure Active Directory 管理者をプロビジョニングする必要がある Azure AD 認証を可能にする SQL サーバー向けの Azure Active Directory 管理者のプロビジョニングを監査します。 Azure AD 認証を使用して、アクセス許可の管理を簡単にし、データベース ユーザーとその他の Microsoft サービスの ID を一元管理できます AuditIfNotExists、Disabled 1.0.0

IM-2:アプリケーション ID を安全かつ自動的に管理する

ガイダンス: Azure Synapse Analytics では、Azure リソースのマネージド ID がサポートされています。 サービス プリンシパルを作成する代わりに、Azure Synapse Analytics と共にマネージド ID を使用してその他のリソースにアクセスします。 Azure Synapse Analytics は、Azure AD 認証をサポートする Azure サービスやリソースに対してネイティブに認証を行うことができます。 この認証は、ソース コードや構成ファイルにハードコーディングされた資格情報を使わずに、定義済みのアクセス許可規則によって実行されます。

責任: 共有

IM-3:アプリケーションのアクセスに Azure AD シングル サインオン (SSO) を使用する

ガイダンス: Azure Synapse Analytics は、Azure Active Directory を使って、次のような ID とアクセスの管理を行います。

  • 管理
  • クラウド アプリケーション
  • オンプレミスのアプリケーション

従業員などの企業 ID や、次のような外部 ID が、この管理の対象となります。

  • パートナー
  • ベンダー
  • Suppliers (仕入先)

この仕組みでは、シングル サインオン (SSO) を使用して、組織のデータとリソースへのアクセスを管理し、セキュリティで保護することができます。 この管理は、オンプレミスやクラウドで行われることもあります。 すべてのユーザー、アプリケーション、デバイスを Azure AD に接続します。 セキュリティで保護されたシームレスなアクセスや、優れた可視性と制御が得られます。

責任: 共有

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

ガイダンス: Azure Synapse Analytics によって、ID やシークレットを持つ可能性のある以下のエンティティのデプロイまたは実行が顧客に許可される場合があります。

  • コード
  • 構成
  • 永続化されたデータ

それらのエンティティ内の資格情報を識別するための資格情報スキャナーを実装します。 また、資格情報スキャナーを使うと、検出された資格情報を、Azure Key Vault などのより安全な場所に移動しやすくなります。

GitHub の場合は、ネイティブのシークレット スキャン機能を使用します。 この機能は、コード内の資格情報や他の形式のシークレットを識別します。

責任: 共有

特権アクセス

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

PA-1:高い特権を持つユーザーを保護および制限する

ガイダンス: Azure AD の最も重要な組み込みロールは、グローバル管理者と特権ロール管理者です。

  • グローバル管理者または社内管理者: このロールが割り当てられたユーザーは、Azure AD のすべての管理機能にアクセスできます。 また、このロールでは、Azure AD の ID を使うサービスにもアクセスできます。

  • 特権ロール管理者: このロールが割り当てられたユーザーは、Azure AD と Azure AD Privileged Identity Management (PIM) におけるロールの割り当てを管理できます。 このロールでは、PIM と管理単位のすべての側面を管理することもできます。

注: 特定の特権アクセス許可を割り当てられたカスタム ロールを使う場合、他の重要なロールを管理する必要がある場合があります。 また、重要なビジネス資産の管理者アカウントにも、同様の制御を適用することがあります。

高い特権を持つアカウントまたはロールの数を制限します。 これらのアカウントを高いレベルで保護します。 これらの特権を持つユーザーは Azure 環境内のすべてのリソースを直接または間接に読み取り、変更できます。

Azure AD PIM を使用して、Azure リソースと Azure AD への Just-In-Time (JIT) の特権アクセスを有効にします。 JIT により、ユーザーが必要とする場合にのみ特権タスクを実行するための一時的なアクセス許可が付与されます。 PIM を使用すると、不審な、または安全でないアクティビティが Azure AD 組織にある場合に、セキュリティ アラートを生成することもできます。

専用管理者アカウントの使用に関する標準的な操作手順を作成します。

Azure SQL を初めてデプロイするときに、管理者のサインイン情報と、そのサインイン情報に関連付けられているパスワードを指定します。 この管理者アカウントは、サーバー管理者と呼ばれます。データベースの管理者アカウントを特定するには、Azure portal を開きます。 次に、サーバーまたはマネージド インスタンスのプロパティ タブに移動します。 また、完全な管理アクセス許可を持つ Azure AD 管理者アカウントを構成することもできます。 Azure Active Directory 認証を有効にする場合は、このアクションが必要です。

スコープ付きの管理者特権を持つサインイン情報とユーザーをさらに作成することもできます。 これらのサインイン情報とユーザーは、SQL 認証用の組み込み Azure SQL 管理者ロールと Azure AD 認証アカウントに追加されます。

責任: 共有

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

ガイダンス: Azure AD アカウントとそのアクセスが有効であることを確認するため、Azure Synapse Analytics ではこれらのアカウントを定期的に次の用途で使用します。

  • リソースの管理
  • ユーザー アカウントのレビュー
  • アクセスの割り当て

Azure AD とアクセス レビューを使用して、以下を確認します。

  • グループ メンバーシップ
  • エンタープライズ アプリケーションへのアクセス
  • ロールの割り当て

Azure AD レポートによって、古いアカウントの検出に役立つログが提供されます。 Azure AD PIM を使って、アクセス レビュー レポートのワークフローを作成します。 これらのワークフローによって、レビュー プロセスが簡単になります。

過剰な数の管理者アカウントが作成された場合に警告するように Azure AD PIM を構成することもできます。 あるいは、古い、または不適切に構成されている管理者アカウントを特定するように Azure AD PIM を構成します。

注:一部の Azure サービスでは、Azure AD で管理されていないローカル ユーザーとロールがサポートされています。 これらのユーザーは別個に管理します。

SQL 認証の使用時は、データベース内に包含データベース ユーザーを作成します。 カスタム データベース ロールに 1 人以上のデータベース ユーザーを含めます。 そのユーザー グループに適切な、特定のアクセス許可を適用します。

組み込みの Azure RBAC ロールを使って、専用 SQL プール (旧称 SQL DW) を管理することができます。 使用できるロールは次のとおりです。

  1. SQL DB 共同作成者。 このロールでは SQL データベースを管理できますが、アクセスすることはできません。 また、セキュリティ関連のポリシーまたは親 SQL Server を管理することはできません。

  2. SQL Server 共同作成者。 このロールでは SQL サーバーとデータベースを管理できます。ただし、それらへのアクセスや、それらのセキュリティ関連ポリシーは管理できません。

  3. SQL セキュリティ管理者。 このロールでは SQL サーバーとデータベースのセキュリティ関連のポリシーを管理できますが、アクセスすることはできません。

詳細については、次の記事を参照してください。

責任: 共有

PA-6:特権アクセス ワークステーションを使用する

ガイダンス: セキュリティで保護された分離ワークステーションは、次のような機密性の高いロールのセキュリティにとって非常に重要です。

  • 管理者
  • Developer
  • 重要なサービス オペレーター

高度にセキュリティ保護されたユーザー ワークステーションまたは Azure Bastion を管理タスクに使用します。 管理タスク用のセキュリティで保護されたマネージド ユーザー ワークステーションをデプロイするには、次を使用します。

  • Azure AD
  • Microsoft Defender Advanced Threat Protection (ATP)
  • Microsoft Intune

セキュリティで保護されたワークステーションを一元的に管理して、次のようなセキュリティで保護された構成を適用できます。

  • 強力な認証
  • ソフトウェアとハードウェアのベースライン
  • 制限付きの論理アクセスとネットワーク アクセス

詳細については、次の記事を参照してください。

責任: 共有

PA-7:Just Enough Administration (最小限の特権の原則) に従う

ガイダンス: Azure Synapse Analytics は、リソースを管理するために Azure RBAC と統合されています。 Azure RBAC を使用して、ロールの割り当てによって Azure リソースへのアクセスを管理できます。 これらのロールは、次のものに割り当てることができます。

  • ユーザー
  • グループ
  • サービス プリンシパル
  • マネージド ID

特定のリソースには、定義済みの組み込みロールがあります。 これらのロールは、次のようなツールを使用してインベントリまたはクエリを実行できます。

  • Azure CLI
  • Azure PowerShell
  • Azure portal

必ず、Azure RBAC を使用してリソースに割り当てる特権を、ロールで必要なものに制限します。 この方法は、Azure AD PIM の Just-In-Time (JIT) アプローチを補完します。 このプラクティスは定期的に確認してください。

組み込みロールを使用してアクセス許可を付与します。 必要な場合にのみ、カスタム役割を作成します。

Azure SQL を初めてデプロイするときに、管理者のサインイン情報と、そのサインイン情報に関連付けられているパスワードを指定します。 この管理者アカウントは、サーバー管理者と呼ばれます。データベースの管理者アカウントを特定するには、Azure portal を開きます。 次に、サーバーまたはマネージド インスタンスのプロパティ タブに移動します。 また、完全な管理アクセス許可を持つ Azure AD 管理者アカウントを構成することもできます。 Azure Active Directory 認証を有効にする場合は、このアクションが必要です。

SQL 認証の使用時は、データベース内に包含データベース ユーザーを作成します。 組み込みまたはカスタム データベース ロールに 1 人以上のデータベース ユーザーを含めます。 そのロールに対して、そのユーザーまたはユーザー グループに適切な、特定のアクセス許可を追加します。

責任: 共有

PA-8: Microsoft サポートの承認プロセスを選択する

ガイダンス: Microsoft が専用 SQL プール内の Azure SQL Database に関連するデータにアクセスする必要があるサポート シナリオはありますか? Azure カスタマー ロックボックスには、データ アクセス要求を確認、承認、または拒否するためのインターフェイスが用意されています。

Microsoft が顧客データにアクセスする必要があるサポート シナリオはありますか? Azure Synapse Analytics はカスタマー ロックボックスをサポートしており、顧客データへのアクセス要求を確認、承認、または拒否するためのインターフェイスを提供します。

責任: 共有

データ保護

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

DP-1:機密データを検出、分類、ラベル付けする

ガイダンス: 機密データを検出、分類、ラベル付けします。 次に、組織のテクノロジ システムが機密情報を安全に格納、処理、送信できるように、適切な制御を設計します。

Office ドキュメント内の機密情報には、Azure Information Protection (および関連するスキャン ツール) を使います。

  • Azure
  • オンプレミス
  • Microsoft 365
  • その他の場所

Azure SQL Information Protection を使って、Azure SQL Database に格納されている情報を分類し、ラベル付けします。

データの検出と分類は、Azure SQL に組み込まれており、次の機能をサポートします。

  • 検出と推奨事項。 分類エンジンは、データベースをスキャンして、機密データが含まれる可能性のある列を識別します。 その後、Azure portal を通して、推奨される分類を確認して適用するための簡単な方法を提供します。

  • ラベル付け。 区別分類ラベルを列に永続的に適用するにはどうすればよいですか? SQL Server データベース エンジンに追加された新しいメタデータ属性を使います。 このメタデータは、機密度に基づく監査と保護のシナリオに利用できます。

  • クエリ結果セットの機密度。 監査のため、クエリ結果セットの機密度がリアルタイムで計算されます。

  • 表示 : データベースの分類状態は、Azure portal の詳細ダッシュボードで確認します。 コンプライアンスと監査の目的や他のニーズのために使用される Excel 形式のレポートをダウンロードします。

詳細については、次の記事を参照してください。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
SQL データベースの機密データを分類する必要がある Microsoft Defender for Cloud は、SQL データベースのデータ検出と分類スキャンの結果を監視し、監視とセキュリティの向上のためにデータベース内の機密データを分類するように推奨します AuditIfNotExists、Disabled 3.0.0-preview

DP-2:機密データを保護する

ガイダンス: Azure RBAC を使って、Synapse SQL プール内の Azure SQL データベースに対するアクセスを管理します。 SQL Security Manager Azure RBAC 組み込みロールを使うと、SQL サーバーとデータベースのセキュリティ関連ポリシーを管理することはできますが、アクセスすることはできません。

ユーザー アカウントのデータベースのロール メンバーシップとオブジェクト レベルのアクセス許可によって制御されます。 ベスト プラクティスとして、必要最低限の特権をユーザーに付与します。

Azure Synapse SQL のデータの検出と分類機能を使用します。 また、Azure portal で動的データ マスク (DDM) ポリシーを設定することもできます。 DDM の推奨エンジンでは、データベースの特定のフィールドに注意が付けられます。 これらのフィールドは機密データの可能性があり、マスク候補選択の参考となります。

Transparent Data Encryption (TDE) を使用すると、保存データを暗号化することにより、悪意のあるオフライン アクティビティの脅威から Azure Synapse SQL を保護できます。 保存時の TDE では、アプリケーションに変更を加えることなく、次の暗号化と暗号化解除がリアルタイムで実行されます。

  • データベース
  • 関連付けられたバックアップ
  • トランザクション ログ ファイル

Azure の TDE の既定の設定では、データベース暗号化キー (DEK) は、組み込みのサーバー証明書によって保護されます。 代わりに、カスタマー マネージド TDE を使用できます。 ユーザーによって管理される TDE は、TDE に対する Bring Your Own Key (BYOK) サポートとも呼ばれます。 このシナリオでは、DEK を暗号化する TDE 保護機能は、カスタマー マネージド非対称キーです。 この非対称キーは、顧客が所有および管理する Azure Key Vault に格納されます (Azure Key Vault は、Azure のクラウドベースの外部キー管理システムです)。非対称キーがキー コンテナーから離れることはありません。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
保護されていない SQL マネージド インスタンスに対して Microsoft Defender for SQL を有効にする必要がある Advanced Data Security を使用していない各 SQL Managed Instance を監査します。 AuditIfNotExists、Disabled 1.0.2
Transparent Data Encryption を SQL データベース上で有効にする必要がある 保存データを保護し、コンプライアンス要件を満たすには、Transparent Data Encryption を有効にする必要があります AuditIfNotExists、Disabled 2.0.0

DP-3:機密データの不正転送を監視する

ガイダンス: 企業が可視および制御できる範囲外の場所にデータが不正に転送されるのを監視します。 このプロセスには通常、不正なデータ流出を示す可能性のある異常な活動 (大規模または異常な転送) の監視が含まれます。

Microsoft Defender for Storage と Microsoft Defender for SQL を使うと、異常な情報転送時にアラートを出すことができます。 これらの異常は、機密情報の不正な転送を示している可能性があります。

Azure Information Protection (AIP) には、分類およびラベル付けされた情報を監視する機能があります。

データ損失防止 (DLP) を実現するために必要な場合、ホスト ベースの DLP ソリューションを使って、検出または予防コントロールを実施することで、データの流出を防止します。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
保護されていない SQL マネージド インスタンスに対して Microsoft Defender for SQL を有効にする必要がある Advanced Data Security を使用していない各 SQL Managed Instance を監査します。 AuditIfNotExists、Disabled 1.0.2

DP-4:転送中の機密情報を暗号化する

ガイダンス: アクセス制御を補完するには、暗号化を使用して "帯域外" 攻撃 (トラフィックのキャプチャなど) から転送中のデータを保護します。 攻撃者がデータを簡単に読み取ったり変更したりできないことを保証します。

Azure Synapse Analytics は、TLS v1.2 以上で転送中のデータの暗号化をサポートします。

転送中のデータ暗号化はプライベート ネットワーク上のトラフィックでは省略できますが、外部ネットワークとパブリック ネットワーク上のトラフィックには重要です。 HTTP トラフィックの場合は、Azure リソースに接続するすべてのクライアントが確実に TLS v1.2 以上をネゴシエートできるようにしてください。 リモート管理には、暗号化されていないプロトコルではなく、(Linux の場合) SSH または (Windows の場合) RDP/TLS を使用します。 以下のエンティティの古いバージョンを無効にします。

  • SSL
  • TLS
  • SSH のバージョンとプロトコル
  • 脆弱な暗号

既定では Azure によって、Azure のデータ センター間の転送データが暗号化されます。

責任: 共有

DP-5:保存データを暗号化する

ガイダンス: アクセス制御を補完するため、Azure Synapse Analytics は保存データを暗号化して、"帯域外" 攻撃 (基になるストレージへのアクセスなど) から保護します。 このプラクティスは、攻撃者がデータを簡単に読み取ったり変更したりできないようにする上で役立ちます。

既定では Azure によって保存データが暗号化されます。 機密性の高いデータの場合は、使用可能なすべての Azure リソースで保存時の追加の暗号化を実装することもできます。 既定では、Azure によって暗号化キーが管理されます。 ただし、Azure では、規制要件を満たすために、特定の Azure サービス用の独自のキー (カスタマー マネージド キー) を管理することもできます。

TDE を使用すると、保存データを暗号化することにより、悪意のあるオフライン アクティビティの脅威から Azure Synapse SQL を保護できます。 保存時の TDE では、アプリケーションに変更を加えることなく、次の暗号化と暗号化解除がリアルタイムで実行されます。

  • データベース
  • 関連付けられたバックアップ
  • トランザクション ログ ファイル

Azure では、TDE の既定の設定は、組み込みのサーバー証明書によって保護される DEK です。 代わりに、カスタマー マネージド TDE または TDE の BYOK サポートを使用できます。 このシナリオでは、DEK を暗号化する TDE 保護機能は、カスタマー マネージド非対称キーです。 この非対称キーは、顧客が所有および管理する Azure Key Vault に格納され、キー コンテナーの外部に移動されることはありません。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
SQL マネージド インスタンスでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある 独自キーを使用して Transparent Data Encryption (TDE) を実装すると、TDE 保護機能の透明性および制御が強化され、HSM で保護された外部サービスによるセキュリティが向上し、職務の分離が促進されます。 この推奨事項は、関連するコンプライアンス要件を持つ組織に適用されます。 AuditIfNotExists、Disabled 1.0.2
SQL サーバーでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある 独自キーを使用して Transparent Data Encryption (TDE) を実装すると、TDE 保護機能の透明性および制御が強化され、HSM で保護された外部サービスによるセキュリティが向上し、職務の分離が促進されます。 この推奨事項は、関連するコンプライアンス要件を持つ組織に適用されます。 AuditIfNotExists、Disabled 2.0.1
Transparent Data Encryption を SQL データベース上で有効にする必要がある 保存データを保護し、コンプライアンス要件を満たすには、Transparent Data Encryption を有効にする必要があります AuditIfNotExists、Disabled 2.0.0

アセット管理

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

AM-1:セキュリティ チームが資産のリスクを確実に可視化できるようにする

ガイダンス: Azure テナントおよびサブスクリプションで、セキュリティ チームにセキュリティ閲覧者アクセス許可が付与されていることを確認します。 これらのアクセス許可によって、チームは、Microsoft Defender for Cloud を使用してセキュリティ リスクを監視できます。

セキュリティ リスクの監視は、中央のセキュリティ チームまたはローカル チームの責任になる可能性があります。 その決定は、セキュリティ チームの責任体制がどのようなものかにより異なります。 ただし、セキュリティ分析情報およびリスクを、常に必ず組織内で一元的に集約してください。

セキュリティ閲覧者のアクセス許可は、テナント全体 (ルート管理グループ) に幅広く適用することも、管理グループまたは特定のサブスクリプションにスコープ指定することもできます。

注: ワークロードとサービスを可視化するには、追加のアクセス許可が必要になることがあります。

責任: Customer

AM-2:セキュリティ チームが資産インベントリとメタデータに確実にアクセスできるようにする

ガイダンス: セキュリティ チームが、Azure Synapse Analytics のような、Azure 上の継続的に更新される資産インベントリに確実にアクセスできるようにします。 セキュリティ チームは、組織が新たなリスクにさらされる可能性を評価するため、このインベントリを必要とすることがよくあります。 インベントリは、継続的なセキュリティ向上のためのインプットとしても必要となります。 組織の認可済みセキュリティ チームを含めるための Azure AD グループを作成します。 次に、すべての Azure Synapse Analytics リソースへの読み取りアクセスを割り当てます。 このアクションは、サブスクリプション内の 1 つの高レベルのロール割り当てで行うことができます。

Azure リソース、リソース グループ、サブスクリプションにタグを適用して、それらを論理的に分類できます。 各タグは、名前と値のペアで構成されます。 たとえば、運用環境のすべてのリソースには名前 "環境" と値 "運用" を適用できます。

Azure 仮想マシンのインベントリを使用して、Virtual Machines 上のソフトウェアに関する情報の収集を自動化します。 Azure portal では、これらの情報項目が利用できます。

  • ソフトウェア名
  • バージョン
  • Publisher
  • 更新時刻

インストール日などの情報にアクセスするには、ゲスト レベルの診断を有効にします。 続いて、Windows イベント ログを Log Analytics ワークスペースに取り込みます。

Azure Synapse Analytics のリソースでは、アプリケーションを実行することも、ソフトウェアをインストールすることもできません。

責任: 共有

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

ガイダンス:Azure Policy を使用して、環境内でユーザーがプロビジョニングできるサービスを監査および制限します。 Azure Resource Graph を使用して、サブスクリプション内のリソースのクエリまたは検出を行います。 Azure Monitor を使って、承認されていないサービスが検出されたときにアラートをトリガーするルールを作成することもできます。

責任: 共有

AM-6:コンピューティング リソースで承認済みのアプリケーションのみを使用する

ガイダンス: 適用できません。Azure Synapse Analytics では、顧客向けのコンピューティング リソースはデプロイされません。 顧客がサービスにアプリケーションをインストールすることもできません。

責任: 共有

ログと脅威検出

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

LT-1:Azure リソースの脅威検出を有効にする

ガイダンス: Azure Synapse Analytics のリソースには、Microsoft Defender for Cloud の組み込みの脅威検出機能を使って、Microsoft Defender を有効にします。 Azure Synapse Analytics 用 Microsoft Defender では、追加のセキュリティ インテリジェンス レイヤーを提供します。 Azure Synapse Analytics リソースにアクセスしたり悪用したりしようとする、通常とは異なる、害を及ぼす可能性のある試行を検出します。

特定のデータベースの監査ポリシーを定義できます。 または、それを (Azure Synapse をホストする) Azure の既定のサーバー ポリシーとして定義します。 サーバー ポリシーがサーバー上にある既存と新規作成のすべてのデータベースに適用されます。

サーバー監査を有効にした場合は、常にデータベースに適用されます。 データベース監査設定に関係なく、データベースが監査されます。

監査を有効にすると、次の内部にあるログに監査を書き込むことができます。

  • お使いの Azure Storage アカウント
  • Log Analytics ワークスペース
  • Event Hubs

Azure Synapse Analytics から SIEM に、カスタム脅威検出を設定するために使用できるログを転送します。 潜在的な脅威や異常を検出するために、さまざまな種類の Azure 資産を監視していることを確認してください。 アナリストが選別しやすいように、質の高いアラートを取得して誤検知を減らすことに専念します。 アラートは、ログ データ、エージェント、その他のデータを元に生成できます。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
保護されていない SQL マネージド インスタンスに対して Microsoft Defender for SQL を有効にする必要がある Advanced Data Security を使用していない各 SQL Managed Instance を監査します。 AuditIfNotExists、Disabled 1.0.2

LT-2:Azure ID とアクセスの管理のために脅威検出を有効にする

ガイダンス: Azure AD には、以下に示すユーザー ログがあります。 より高度な監視と分析の使用例については、Azure AD レポートでログを参照できます。 あるいは、Azure Monitor、Microsoft Sentinel、または他の SIEM や監視ツールとログを統合することができます。

  • サインイン。サインイン レポートでは、マネージド アプリケーションの使用状況とユーザー サインイン アクティビティに関する情報が得られます。

  • 監査ログ。 監査ログは、Azure AD 内のさまざまな機能によって実行されたすべての変更の追跡可能性を提供します。 監査ログの例としては、以下のような追加と削除など、Azure AD 内のあらゆるリソースに加えられた変更があります。

    • ユーザー
    • アプリ
    • グループ
    • ロール
    • ポリシー
  • 危険なサインイン。危険なサインインとは、ユーザー アカウントの正当な所有者ではないユーザーによって行われたサインイン試行を意味します。

  • リスクのフラグ付きユーザー。 危険なユーザーとは、侵害された可能性があるユーザー アカウントを示します。

Microsoft Defender for Cloud では、特定の不審なアクティビティに関するアラートをトリガーすることもできます。 これらのアクティビティには、過剰な数の認証試行の失敗や、サブスクリプションでの非推奨アカウントなどがあります。 基本的なセキュリティ検疫監視に加えて、Microsoft Defender for Cloud の脅威保護モジュールは、より詳細なセキュリティ アラートを次の対象から収集することもできます。

  • 個別の Azure コンピューティング リソース (仮想マシン、コンテナー、または App Service)
  • データ リソース (SQL DB とストレージ)
  • Azure サービス レイヤー

この機能を使用することにより、個々のリソース内でアカウントの異常を確認できます。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
保護されていない SQL マネージド インスタンスに対して Microsoft Defender for SQL を有効にする必要がある Advanced Data Security を使用していない各 SQL Managed Instance を監査します。 AuditIfNotExists、Disabled 1.0.2

LT-3:Azure ネットワーク アクティビティのログ記録を有効にする

ガイダンス: セキュリティ分析のために、以下を有効にして収集します。

  • NSG リソース ログ
  • NSG フロー ログ
  • Azure Firewall ログ
  • Web アプリケーション ファイアウォール (WAF) ログ

以下のサポートにログが使われます。

  • インシデント調査
  • 脅威の捜索
  • セキュリティ アラートの生成

Azure Monitor の Log Analytics ワークスペースにフロー ログを送信することができます。 次に、Traffic Analytics を使用して分析情報を提供します。

Azure Synapse Analytics において、お客様のアクセスのために処理するすべてのネットワーク トラフィックはログに記録されます。 デプロイされているオファリング リソース内でネットワーク フロー機能を有効にします。

Azure Synapse SQL に対して Advanced Threat Protection (ATP) を使用します。 ATP により、データベースにアクセスしたりデータベースを悪用したりしようとする、通常とは異なる、害を及ぼす可能性のある試行を示す異常なアクティビティが検出されます。 ATP では、次のようなさまざまなアラートをトリガーすることができます。

  • "SQL インジェクションの可能性"
  • "通常と異なる場所からのアクセス"

ATP は、Advanced Data Security (ADS) オファリングに含まれています。 SQL ADS ポータルを使って一元的にアクセスおよび管理できます。

他のネットワーク データを関連付けるために、DNS クエリ ログを収集します。 組織のニーズに応じて、DNS ログ記録用の Azure Marketplace のサード パーティ ソリューションを実装します。

責任: 共有

LT-4:Azure リソースのログ記録を有効にする

ガイダンス: 自動的に利用できるアクティビティ ログには、Azure Synapse Analytics リソースに対するすべての書き込み操作 (PUT、POST、DELETE) が含まれています。 アクティビティ ログには読み取り操作 (GET) は含まれません。 トラブルシューティング時に、アクティビティ ログを使用してエラーを見つけます。 または、このログを使用して、組織内のユーザーがリソースを変更した方法を監視します。

Azure Synapse Analytics に対し、Azure リソース ログを有効にします。 Microsoft Defender for Cloud と Azure Policy を使って、リソース ログとログ データの収集を有効にします。 これらのログは、セキュリティ インシデントの調査やフォレンジックの演習を行うためにきわめて重要となる可能性があります。

Azure Synapse Analytics では、セキュリティ監査ログも生成されます。 これらの監査ログを有効にして、データベース イベントを追跡します。 これらのイベントは、次の内部にある監査ログに書き込むことができます。

  • お使いの Azure ストレージ アカウント
  • Log Analytics ワークスペース
  • Event Hubs

特定のデータベースの監査ポリシーを定義します。 または、それを (専用 SQL プールをホストする) Azure の既定のサーバー ポリシーとして定義します。

Azure Synapse Analytics 対応 SQL Server 向け Advanced Threat Protection は、異常なアクティビティを検出します。 これらのアクティビティは、データベースへのアクセスや悪用といった、通常とは異なる、害を及ぼす可能性のある試みを示している可能性があります。 Advanced Threat Protection は、Microsoft Defender for SQL オファリングに含まれています。 このオファリングは、高度な SQL セキュリティ機能のための統合パッケージです。 Advanced Threat Protection は、中央の Microsoft Defender for SQL ポータル経由でアクセスし、管理できます。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
SQL Server の監査を有効にする必要があります サーバー上のすべてのデータベースについてデータベースのアクティビティを追跡して、監査ログに保存するには、お使いの SQL サーバーに対する監査を有効にする必要があります。 AuditIfNotExists、Disabled 2.0.0

LT-5:セキュリティ ログの管理と分析を一元化する

ガイダンス:ログ記録のストレージと分析を一元化して、相関関係を有効にします。 ログ ソースごとに次のものを割り当てます。

  • データ所有者
  • アクセス ガイダンス
  • 保存先
  • データの処理とアクセスに使用されるツール
  • データ保持の要件

Azure アクティビティ ログを一元的なログ記録に統合します。 Azure Monitor を介してログを取り込み、次のものによって生成されたセキュリティ データを集計します。

  • エンドポイント デバイス
  • ネットワーク リソース
  • その他のセキュリティ システム

Azure Monitor で、Log Analytics ワークスペースを使用し、クエリを実行して分析を行います。 その後、長期およびアーカイブ ストレージに Azure Storage アカウントを使用します。

さらに、Microsoft Sentinel またはサード パーティの SIEM に対してデータを有効にしてオンボードします。

多くの組織では、頻繁に使用される "ホット" データに Microsoft Sentinel を選んでいます。 これらの組織は、さらに使用頻度の低い "コールド" データに Azure Storage を選びます。

Azure Synapse Analytics はデータベース イベントを追跡します。 これらのイベントは、次のエンティティのいずれかの内部にある監査ログに書き込まれます。

  • お使いの Azure ストレージ アカウント
  • Log Analytics ワークスペース
  • Event Hubs

これらの監査ログは、規制コンプライアンスを維持し、データベースのアクティビティを理解するのに役立ちます。 また、ログを使うことで、ビジネス上の懸念やセキュリティ違反の疑いを示す可能性のある不一致や異常についての分析情報も得られます。 Azure Synapse Analytics で実行される可能性があるアプリケーションの場合、すべてのセキュリティ関連ログが SIEM に転送され、一元的に管理されます。

責任: 共有

LT-6:ログの保持期間を構成する

ガイダンス: Azure Synapse Analytics ログの保存に使用するストレージ アカウントまたは Log Analytics ワークスペースはありますか? 該当する場合は、組織のコンプライアンス規則に従ってログの保持期間を設定します。

責任: 共有

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
ストレージ アカウント ターゲットに対する SQL Server の監査データの保持期間を 90 日以上に構成する必要がある インシデント調査を目的として、SQL Server の監査のストレージ アカウントの保持先のデータ保持を少なくとも 90 日に設定することをお勧めします。 運用しているリージョンで必要な保持期間の規則を満たしていることを確認します。 これは、規制標準に準拠するために必要になる場合があります。 AuditIfNotExists、Disabled 3.0.0

LT-7:承認された時刻同期ソースを使用する

ガイダンス: 適用できません。Azure Synapse Analytics は、独自の時刻同期ソースの構成をサポートしていません。

Azure Synapse Analytics サービスは、Microsoft の時刻同期ソースに依存しています。 構成のためにお客様に公開されてはいません。

責任: 共有

体制と脆弱性の管理

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

PV-1: Azure サービスのセキュリティで保護された構成を確立する

ガイダンス: Azure Blueprints のブループリント定義で、次のものを含む、サービスのデプロイおよび構成とアプリケーション環境を自動化できます。

  • Azure Resources Manager テンプレート
  • Azure RBAC コントロール
  • ポリシー

Azure Synapse Analytics の監査では、データベース イベントを追跡します。 これらのイベントは、次のエンティティのいずれかの内部にある監査ログに書き込まれます。

  • お使いの Azure ストレージ アカウント
  • Log Analytics ワークスペース
  • Event Hubs

特定のデータベースの監査ポリシーを定義します。 または、それを (Azure Synapse の専用 SQL プールをホストする) Azure の既定のサーバー ポリシーとして定義します。 Microsoft Defender により、SQL 脆弱性の評価、Advanced Threat Protection などの高度な SQL セキュリティ機能のセットが提供されます。

Azure portal を使って、Azure Synapse Analytics のデータベースに対するアラートを設定します。

責任: 共有

PV-2: Azure サービスのセキュリティで保護された構成を維持する

ガイダンス: Microsoft Defender for Cloud を使用して構成基準を監視します。 Azure Policy の [Deny] と [DeployIfNotExists] の効果により、VM、コンテナー、その他など Azure のコンピューティング リソース全体にセキュリティで保護された構成を適用します。

特定のデータベースの SQL 監査ポリシーを定義します。 または、それを (専用 SQL プールをホストする) Azure の既定のサーバー ポリシーとして定義します。 既定の監査ポリシーには、すべてのアクションと一連のアクション グループが含まれます。 アクションとアクション グループは次の監査を行います。

  • データベースに対して実行されるすべてのクエリとストアド プロシージャ。
  • 成功および失敗したサインイン。

詳細については、次の記事を参照してください。

責任: 共有

PV-3: コンピューティング リソースにセキュリティで保護された構成を確立する

ガイダンス: Microsoft Defender for Cloud と Azure Policy を使って、VM、コンテナーなど、すべてのコンピューティング リソースにセキュリティで保護された構成を作成します。

責任: Customer

PV-6: ソフトウェアの脆弱性評価を実行する

ガイダンス: Microsoft では、Azure Synapse Analytics をサポートしている基になるシステムで脆弱性の管理を行います。

責任: Microsoft

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

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

名前
(Azure portal)
説明 効果 Version
(GitHub)
SQL データベースでは脆弱性の検出結果を解決する必要がある 脆弱性評価スキャン結果と、データベースの脆弱性を修正する方法についての推奨事項を監視します。 AuditIfNotExists、Disabled 4.0.0
SQL Managed Instance で脆弱性評価を有効にする必要がある 定期的な脆弱性評価スキャンが有効になっていない各 SQL Managed Instance を監査します。 脆弱性評価は、潜在的なデータベースの脆弱性を検出、追跡、および修正するのに役立ちます。 AuditIfNotExists、Disabled 1.0.1
脆弱性評価を SQL サーバー上で有効にする必要がある 定期的な脆弱性評価スキャンが有効になっていない Azure SQL サーバーを監査します。 脆弱性評価は、潜在的なデータベースの脆弱性を検出、追跡、および修正するのに役立ちます。 AuditIfNotExists、Disabled 2.0.0

PV-8: 定期的に攻撃シミュレーションを実施する

ガイダンス: 必要に応じて、Azure リソースに対して侵入テストまたはレッド チーム アクティビティを実施します。 すべてのクリティカルなセキュリティ検出結果を必ず修復します。

侵入テストが Microsoft のポリシーに違反しないようにするには、Microsoft Cloud 侵入テストの実施ルールに従ってください。 Microsoft の戦略に沿って、Red Teaming およびライブ サイト侵入を実施して、以下の Microsoft が管理するクラウドに対してテストを行います。

  • インフラストラクチャ
  • サービス
  • アプリケーション

詳細については、次の記事を参照してください。

責任: Customer

エンドポイント セキュリティ

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

ES-2: 一元管理された最新のマルウェア対策ソフトウェアを使用する

ガイダンス: クラウド サービスまたはそのリソースを、一元管理された最新のマルウェア対策ソフトウェアで保護します。 集中管理されたエンドポイント マルウェア対策ソリューションを使います。 リアルタイムおよび定期的なスキャンが実行可能なことを確認します。

Microsoft Defender for Cloud では次の処理を自動的に実行できます。

  • 仮想マシン (VM) に一般的ないくつかのマルウェア対策ソリューションの使用を特定する。
  • エンドポイント保護の実行状態を報告する。
  • 推奨を行う。

Azure Cloud Services 向けの Microsoft Antimalware は、Windows VM の既定のマルウェア対策です。 Linux VM の場合は、サードパーティのマルウェア対策ソリューションを使用します。 Azure Storage アカウントにアップロードされたマルウェアを検出するには、Microsoft Defender for Cloud のデータ サービス向け脅威検出を使用します。

責任: Customer

バックアップと回復

詳細については、Azure セキュリティ ベンチマークの「バックアップと回復」を参照してください。

BR-1:定期的な自動バックアップを保証する

ガイダンス: データ ウェアハウス スナップショットによって復元ポイントが作成されます。 この復元ポイントを使ってデータ ウェアハウスを復元またはコピーし、以前の状態に戻すことができます。 専用 SQL プールは分散システムなので、データ ウェアハウスのスナップショットには Azure ストレージに配置されている多くのファイルがあります。 スナップショットでは、データ ウェアハウスに格納されたデータの増分の変更がキャプチャされます。 専用 SQL プールのスナップショットは、1 日を通して自動的に作成されます。 これらのスナップショットでは、7 日間使用可能な復元ポイントが作成されます (この保持期間は変更できません)。)SQL プールでは、8 時間の目標復旧ポイント (RPO) がサポートされています。 プライマリ リージョンでは、過去 7 日以内の任意のスナップショットからデータ ウェアハウスを復元できます。 必要に応じて、手動でスナップショットをトリガーすることができます。

ユーザー定義の復元ポイントを使って、スナップショットを手動でトリガーします。 このアクションで、大きな変更の前後にデータ ウェアハウスの復元ポイントが作成されます。 この機能により、復元ポイントの論理的な一貫性が確保されます。 一貫性があることで、ワークロードの中断やユーザー エラーが発生した場合、より多くのデータを保護することができ、迅速な回復が可能になります。

ユーザー定義の復元ポイントは、7 日間使用でき、自動的に削除されます。 ユーザー定義の復元ポイントの保持期間を変更することはできません。 どの時点でも、42 個のユーザー定義の復元ポイントが保証されます。 これらの復元ポイントは、別の復元ポイントを作成する前に削除する必要があります。 ユーザー定義の復元ポイントを作成するスナップショットのトリガーは、PowerShell または Azure portal で行うことができます。

ペアのデータ センターには、1 日に 1 回、geo バックアップが作成されます。 geo 復元の RPO は 24 時間です。 geo バックアップは、専用 SQL プールがサポートされている別のリージョン内のサーバーに復元することができます。 geo バックアップの使用で、プライマリ リージョンの復元ポイントにアクセスできない場合に、データ ウェアハウスを復元できます。 専用 SQL プールの geo バックアップを必要としない場合は無効にできます。 このアクションにより、ディザスター リカバリーのストレージ コストが削減されます。

カスタマー マネージド キーを使って DEK を暗号化している場合は、キーがバックアップされている必要があります。

責任: 共有

BR-2:バックアップ データを暗号化する

ガイダンス: 専用 SQL プールの復元ポイントを使って、データ ウェアハウスをプライマリ リージョンの以前の状態に復旧またはコピーします。 別の地理的リージョンに復元するには、データ ウェアハウスの geo 冗長バックアップを使用します。 スナップショットは、復元ポイントを作成する組み込み機能です。 この機能を有効にする必要はありません。 ただし、復元ポイントの作成のために、専用 SQL プールをアクティブ状態にしておく必要があります。

Key Vault のキーを使って TDE で専用 SQL プールを暗号化した後はどうなりますか? TDE では、同じ TDE 保護機能を使って新しく生成されたバックアップも暗号化されます。 TDE 保護機能が変更されても、専用 SQL プールの古いバックアップが、最新の TDE 保護機能を使用するように更新されることはありません。

TDE 保護機能で Key Vault から暗号化されたバックアップを復元するには、どのような準備が必要ですか? ターゲット サーバーでキー マテリアルが使用可能であることを確認します。 専用 SQL プールのバックアップを復元できるように、すべての以前のバージョンの TDE 保護機能を Key Vault に保管します。

責任: 共有

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

ガイダンス: 専用 SQL プールの復元ポイントを使って、データ ウェアハウスをプライマリ リージョンの以前の状態に復旧またはコピーします。 異なる地理的リージョンに復元するには、データ ウェアハウスの geo 冗長バックアップを使用します。

専用 SQL プールを削除すると、最後のスナップショットが作成され、7 日間保存されます。 専用 SQL プールは、削除するときに作成された最後の復元ポイントに復元できます。 専用 SQL プールが一時停止状態で削除された場合、スナップショットは作成されません。 そのシナリオでは、専用 SQL プールを削除する前に、ユーザー定義の復元ポイントを作成してください。

バックアップされたカスタマー マネージド キーが復元可能なことを定期的に確認してください。

責任: 共有

BR-4:キー紛失のリスクを軽減する

ガイダンス: キーの紛失を防止し、確実に回復できるようにします。 Azure Key Vault で論理的な削除と消去保護を有効にします。 このアクションは、偶発的または悪意のある削除からキーを保護します。

責任: 共有

次のステップ