Azure SQLの Azure セキュリティ ベースライン
このセキュリティ ベースラインは、Microsoft クラウド セキュリティ ベンチマーク バージョン 1.0 のガイダンスをAzure SQLに適用します。 Microsoft クラウド セキュリティ ベンチマークでは、Azure 上のクラウド ソリューションをセキュリティで保護する方法に関する推奨事項が提供されます。 コンテンツは、Microsoft クラウド セキュリティ ベンチマークと、Azure SQLに適用できる関連ガイダンスによって定義されたセキュリティ制御によってグループ化されます。
このセキュリティ ベースラインとその推奨事項は、Microsoft Defender for Cloud を使用して監視できます。 Azure Policy定義は、[クラウド ポータルのMicrosoft Defender] ページの [規制コンプライアンス] セクションに一覧表示されます。
機能に関連するAzure Policy定義がある場合は、Microsoft クラウド セキュリティ ベンチマークの制御と推奨事項への準拠を測定するのに役立つ、このベースラインに一覧表示されます。 一部の推奨事項では、特定のセキュリティ シナリオを有効にするために有料Microsoft Defenderプランが必要になる場合があります。
注意
Azure SQLに適用されない機能は除外されています。 Azure SQLが Microsoft クラウド セキュリティ ベンチマークに完全にマップされる方法については、完全なAzure SQLセキュリティ ベースライン マッピング ファイルを参照してください。
セキュリティ プロファイル
セキュリティ プロファイルは、Azure SQLの影響が大きい動作をまとめたものです。これにより、セキュリティに関する考慮事項が高まる可能性があります。
サービス動作属性 | 値 |
---|---|
製品カテゴリ | データベース |
お客様は HOST/OS にアクセスできます | アクセス権なし |
サービスは顧客の仮想ネットワークにデプロイできます | True |
顧客のコンテンツを保存する | True |
ネットワークのセキュリティ
詳細については、「 Microsoft クラウド セキュリティ ベンチマーク: ネットワーク セキュリティ」を参照してください。
NS-1: ネットワーク セグメント化の境界を確立する
機能
Virtual Network 統合
説明: サービスは、顧客のプライベート Virtual Network (VNet) へのデプロイをサポートします。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: サービスを仮想ネットワークにデプロイします。 パブリック IP をリソースに直接割り当てる強い理由がない限り、リソースにプライベート IP を割り当てます (該当する場合)。
リファレンス: Azure SQL Database 内のサーバーに仮想ネットワーク サービス エンドポイントとルールを使用する
ネットワーク セキュリティ グループのサポート
説明: サービス ネットワーク トラフィックは、サブネット上のネットワーク セキュリティ グループルールの割り当てを尊重します。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: Azure Virtual Network サービス タグを使用して、ネットワーク セキュリティ グループに対するネットワーク アクセス制御を定義するか、Azure SQL リソース用に構成Azure Firewall。 セキュリティ規則を作成するときは、特定の IP アドレスの代わりにサービス タグを使うことができます。 規則の適切なソースまたはターゲット フィールドにサービス タグ名を指定することで、対応するサービスのトラフィックを許可または拒否できます。 サービス タグに含まれるアドレス プレフィックスの管理は Microsoft が行い、アドレスが変化するとサービス タグは自動的に更新されます。 Azure SQL Database 用のサービス エンドポイントを使用している場合は、Azure SQL Database のパブリック IP アドレスへの送信が必要です。ネットワーク セキュリティ グループ (NSG) は、接続を許可するために Azure SQL Database IP に対して開かれている必要があります。 これは、Azure SQL Database 用の NSG サービス タグを使用して行うことができます。
リファレンス: Azure SQL Database 内のサーバーに仮想ネットワーク サービス エンドポイントとルールを使用する
NS-2: ネットワーク制御を使用してクラウド サービスをセキュリティで保護する
機能
Azure Private Link
説明: ネットワーク トラフィックをフィルター処理するためのサービス ネイティブ IP フィルタリング機能 (NSG やAzure Firewallと混同しないように)。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: Private Link機能をサポートするすべての Azure リソースのプライベート エンドポイントをデプロイして、リソースのプライベート アクセス ポイントを確立します。
リファレンス: Azure SQL Database と Azure Synapse Analytics のAzure Private Link
パブリック ネットワーク アクセスの無効化
説明: サービスでは、サービス レベルの IP ACL フィルター規則 (NSG またはAzure Firewallではなく) または [パブリック ネットワーク アクセスの無効化] トグル スイッチを使用して、パブリック ネットワーク アクセスを無効にできます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | True | Microsoft |
構成ガイダンス: 既定のデプロイでこれが有効になっているので、追加の構成は必要ありません。
リファレンス: Azure SQL接続設定
Microsoft Defender for Cloud による監視
Azure Policy 組み込み定義 - Microsoft.Sql:
名前 (Azure portal) |
説明 | 効果 | Version (GitHub) |
---|---|---|---|
Azure SQL Managed Instance でパブリック ネットワーク アクセスを無効にする必要がある | 仮想ネットワーク内またはプライベート エンドポイント経由からのみアクセスできるようにして、Azure SQL Managed Instance でパブリック ネットワーク アクセス (パブリック エンドポイント) を無効にすると、セキュリティが向上します。 パブリック ネットワーク アクセスについて詳しくは、https://aka.ms/mi-public-endpoint をご覧ください。 | Audit、Deny、Disabled | 1.0.0 |
ID 管理
詳細については、「 Microsoft クラウド セキュリティ ベンチマーク: ID 管理」を参照してください。
IM-1: 一元的な ID および認証システムを使用する
機能
データ プレーン アクセスに必要な Azure AD Authentication
説明: サービスでは、データ プレーン アクセスに Azure AD 認証を使用できます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | 共有 |
機能ノート: Azure SQL Database では、複数のデータ プレーン認証メカニズムがサポートされています。そのうちの 1 つは AAD です。
構成ガイダンス: データ プレーンアクセスを制御するための既定の認証方法として Azure Active Directory (Azure AD) を使用します。
リファレンス: Azure Active Directory 認証を使用する
データ プレーン アクセスのローカル認証方法
説明: ローカルユーザー名やパスワードなど、データ プレーンアクセスでサポートされるローカル認証方法。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
機能に関するメモ: ローカル認証方法またはアカウントの使用は避けてください。これらは可能な限り無効にする必要があります。 代わりに、可能な場合は Azure AD を使用して認証します。
構成ガイダンス: データ プレーン へのアクセスに対するローカル認証方法の使用を制限します。 代わりに、データ プレーン アクセスを制御するための既定の認証方法として、Azure Active Directory (Azure AD) を使います。
リファレンス: Azure SQL Database Access
Microsoft Defender for Cloud による監視
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-3: アプリケーション ID を安全かつ自動的に管理する
機能
マネージド ID
説明: データ プレーン アクションでは、マネージド ID を使用した認証がサポートされます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: 可能な場合は、サービス プリンシパルの代わりに Azure マネージド ID を使用します。これにより、Azure Active Directory (Azure AD) 認証をサポートする Azure サービスとリソースに対して認証できます。 マネージド ID の資格情報は、プラットフォームによって完全に管理、ローテーション、保護されており、ソース コードまたは構成ファイル内でハードコーディングされた資格情報を使用せずに済みます。
リファレンス: BYOK を使用した透過的なデータ暗号化のためのマネージド ID
サービス プリンシパル
説明: データ プレーンでは、サービス プリンシパルを使用した認証がサポートされています。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | True | Microsoft |
機能に関するメモ: Azure SQL DB では、データ プレーンで認証する複数の方法が用意されています。そのうちの 1 つは Azure AD で、マネージド ID とサービス プリンシパルが含まれています。
構成ガイダンス: 既定のデプロイでこれが有効になっているので、追加の構成は必要ありません。
リファレンス: Azure SQLを使用した Azure Active Directory サービス プリンシパル
IM-7: 条件に基づいてリソースへのアクセスを制限する
機能
データ プレーンへの条件付きアクセス
説明: データ プレーンアクセスは、Azure AD 条件付きアクセス ポリシーを使用して制御できます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: ワークロード内の Azure Active Directory (Azure AD) 条件付きアクセスに適用できる条件と条件を定義します。 特定の場所からのアクセスのブロックや許可、危険なサインイン動作のブロック、特定のアプリケーションに対するorganizationマネージド デバイスの要求など、一般的なユース ケースを検討してください。
リファレンス: Azure SQL データベースを使用した条件付きアクセス
IM-8: 資格情報とシークレットの公開を制限する
機能
Azure Key Vault での、サービス資格情報とシークレットの統合とストレージのサポート
説明: データ プレーンでは、資格情報とシークレット ストアに対する Azure Key Vaultのネイティブな使用がサポートされています。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
False | 適用しない | 適用しない |
機能に関するメモ: 暗号化キーは AKV にのみ格納でき、シークレットやユーザー資格情報には格納できません。 たとえば、Transparent Data Encryption 保護機能キーなどです。
構成ガイダンス: この機能は、このサービスをセキュリティで保護するためにサポートされていません。
特権アクセス
詳細については、「 Microsoft クラウド セキュリティ ベンチマーク: 特権アクセス」を参照してください。
PA-1: 高い特権を持つ/管理者ユーザーを分離して制限する
機能
ローカル 管理 アカウント
説明: サービスには、ローカル管理アカウントの概念があります。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
False | 適用しない | 適用しない |
機能ノート: Azure SQL DB の "ローカル管理者" はなく、sa アカウントもありません。 ただし、インスタンスを設定するアカウントは管理者です。
構成ガイダンス: この機能は、このサービスをセキュリティで保護するためにサポートされていません。
PA-7: Just Enough Administration (最小限の特権の原則) に従う
機能
データ プレーン用の Azure RBAC
説明: Azure Role-Based Access Control (Azure RBAC) を使用して、サービスのデータ プレーン アクションへのアクセスを管理できます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
False | 適用しない | 適用しない |
機能ノート: Azure SQL Database には、データベース固有の豊富なデータ プレーン承認モデルが用意されています。
構成ガイダンス: この機能は、このサービスをセキュリティで保護するためにサポートされていません。
PA-8: クラウド プロバイダー サポートのアクセス プロセスを決定する
機能
カスタマー ロックボックス
説明: カスタマー ロックボックスは、Microsoft サポート へのアクセスに使用できます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: Microsoft がデータにアクセスする必要があるサポート シナリオでは、カスタマー ロックボックスを使用して確認し、各 Microsoft のデータ アクセス要求を承認または拒否します。
データの保護
詳細については、「 Microsoft クラウド セキュリティ ベンチマーク: データ保護」を参照してください。
DP-1:機密データを検出、分類、ラベル付けする
機能
機密データの検出と分類
説明: ツール (Azure Purview や Azure Information Protection など) は、サービスでのデータの検出と分類に使用できます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | True | Microsoft |
構成ガイダンス: これは既定のデプロイで有効になっているので、追加の構成は必要ありません。
リファレンス: データ検出 & 分類
DP-2: 機密データをターゲットにした異常と脅威を監視する
機能
データ漏えい/損失防止
説明: サービスでは、(顧客のコンテンツ内の) 機密データの移動を監視するための DLP ソリューションがサポートされています。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
False | 適用しない | 適用しない |
機能ノート: DLP のSQL Serverで使用できるツールがありますが、組み込みのサポートはありません。
構成ガイダンス: この機能は、このサービスをセキュリティで保護するためにサポートされていません。
Microsoft Defender for Cloud による監視
Azure Policy 組み込み定義 - Microsoft.Sql:
名前 (Azure portal) |
説明 | 効果 | Version (GitHub) |
---|---|---|---|
保護されていない SQL Managed Instance に対して Azure Defender for SQL を有効にする必要がある | Advanced Data Security を使用していない各 SQL Managed Instance を監査します。 | AuditIfNotExists、Disabled | 1.0.2 |
DP-3: 転送中の機密データの暗号化
機能
転送中データの暗号化
説明: サービスでは、データ プレーンの転送中のデータ暗号化がサポートされています。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | True | Microsoft |
構成ガイダンス: これは既定のデプロイで有効になっているので、追加の構成は必要ありません。
リファレンス: 最小 TLS バージョン
DP-4: 保存データ暗号化を既定で有効にする
機能
プラットフォーム キーを使用した保存データの暗号化
説明: プラットフォーム キーを使用した保存データの暗号化がサポートされており、保存中のすべての顧客コンテンツは、これらの Microsoft マネージド キーで暗号化されます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | True | Microsoft |
構成ガイダンス: これは既定のデプロイで有効になっているので、追加の構成は必要ありません。
リファレンス: SQL Database、SQL Managed Instance、Azure Synapse Analytics の透過的なデータ暗号化
Microsoft Defender for Cloud による監視
Azure Policy 組み込み定義 - Microsoft.Sql:
名前 (Azure portal) |
説明 | 効果 | Version (GitHub) |
---|---|---|---|
Transparent Data Encryption を SQL データベース上で有効にする必要がある | 保存データを保護し、コンプライアンス要件を満たすには、Transparent Data Encryption を有効にする必要があります | AuditIfNotExists、Disabled | 2.0.0 |
DP-5: 必要に応じて保存データ暗号化でカスタマー マネージド キー オプションを使用する
機能
CMK を使用した保存データの暗号化
説明: カスタマー マネージド キーを使用した保存データの暗号化は、サービスによって格納される顧客コンテンツでサポートされています。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: 規制コンプライアンスに必要な場合は、カスタマー マネージド キーを使用した暗号化が必要なユース ケースとサービス スコープを定義します。 それらのサービスでカスタマー マネージド キーを使って、保存データ暗号化を有効にして実装します。
リファレンス: SQL Database、SQL Managed Instance、Azure Synapse Analytics の透過的なデータ暗号化
Microsoft Defender for Cloud による監視
Azure Policy 組み込み定義 - Microsoft.Sql:
名前 (Azure portal) |
説明 | 効果 | Version (GitHub) |
---|---|---|---|
SQL マネージド インスタンスでは保存データを暗号化するためにカスタマー マネージド キーを使用する必要がある | 独自キーを使用して Transparent Data Encryption (TDE) を実装すると、TDE 保護機能の透明性および制御が強化され、HSM で保護された外部サービスによるセキュリティが向上し、職務の分離が促進されます。 この推奨事項は、関連するコンプライアンス要件を持つ組織に適用されます。 | Audit、Deny、Disabled | 2.0.0 |
DP-6: セキュア キー管理プロセスの使用
機能
Azure Key Vault でのキー管理
説明: このサービスでは、カスタマー キー、シークレット、または証明書に対する Azure Key Vault統合がサポートされています。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | 共有 |
機能ノート: 一部の機能では、キーに AKV を使用できます (たとえば、Always Encryptedを使用する場合)。
構成ガイダンス: Azure Key Vaultを使用して、キーの生成、配布、ストレージなど、暗号化キー (TDE とAlways Encrypted) のライフ サイクルを作成および制御します。 定義されたスケジュールに基づいて、またはキーの廃止や侵害が発生した場合に、Azure Key Vault とサービスのキーをローテーションして取り消します。 ワークロード、サービス、またはアプリケーション レベルでカスタマー マネージド キー (CMK) を使用する必要がある場合は、キー管理のベスト プラクティスに従ってください。 独自のキー (BYOK) をサービスに持ち込む必要がある場合 (オンプレミスの HSM から Azure Key Vaultに HSM で保護されたキーをインポートする場合など)、初期キーの生成とキー転送を実行するための推奨ガイドラインに従ってください。
リファレンス: Azure Key Vault を使用してAlways Encryptedを構成する
アセット管理
詳細については、「 Microsoft クラウド セキュリティ ベンチマーク: 資産管理」を参照してください。
AM-2: 承認済みのサービスのみを使用する
機能
Azure Policy のサポート
説明: サービス構成は、Azure Policy経由で監視および適用できます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: Microsoft Defender for Cloud を使用して、Azure リソースの構成を監査および適用するAzure Policyを構成します。 Azure Monitor を使用し、リソースで構成の逸脱が検出されたときにアラートを作成します。 [deny] と [deploy if not exists] 効果Azure Policy使用して、Azure リソース全体でセキュリティで保護された構成を適用します。
リファレンス: Azure SQL Database & SQL Managed Instance の組み込み定義をAzure Policyする
ログと脅威検出
詳細については、「 Microsoft クラウド セキュリティ ベンチマーク: ログ記録と脅威検出」を参照してください。
LT-1: 脅威検出機能を有効にする
機能
サービス/製品のオファリングのための Microsoft Defender
説明: サービスには、セキュリティの問題を監視およびアラートするためのオファリング固有のMicrosoft Defender ソリューションがあります。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: Azure SQLのMicrosoft Defenderは、データベースの潜在的な脆弱性を検出して軽減するのに役立ち、データベースに対する脅威を示す可能性がある異常なアクティビティに対してアラートを生成します。
リファレンス: Azure SQLのMicrosoft Defenderの概要
Microsoft Defender for Cloud による監視
Azure Policy 組み込み定義 - Microsoft.Sql:
名前 (Azure portal) |
説明 | 効果 | Version (GitHub) |
---|---|---|---|
保護されていない Azure SQL サーバーに対して Azure Defender for SQL を有効にする必要がある | Advanced Data Security を使用していない SQL サーバーの監査 | AuditIfNotExists、Disabled | 2.0.1 |
LT-3: セキュリティ調査のためのログを有効にする
LT-3 のその他のガイダンス
サーバー レベルでログ記録を有効にすると、データベースもフィルター処理されます。
Microsoft Defender for Cloud による監視
Azure Policy 組み込み定義 - Microsoft.Sql:
名前 (Azure portal) |
説明 | 効果 | Version (GitHub) |
---|---|---|---|
SQL Server の監査を有効にする必要があります | サーバー上のすべてのデータベースについてデータベースのアクティビティを追跡して、監査ログに保存するには、お使いの SQL サーバーに対する監査を有効にする必要があります。 | AuditIfNotExists、Disabled | 2.0.0 |
LT-4: セキュリティ調査のためのログを有効にする
機能
Azure リソース ログ
説明: サービスは、強化されたサービス固有のメトリックとログを提供できるリソース ログを生成します。 お客様はこれらのリソース ログを構成し、ストレージ アカウントや Log Analytics ワークスペースなどの独自のデータ シンクに送信できます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | False | Customer |
構成ガイダンス: サービスのリソース ログを有効にします。 たとえば、Key Vaultでは、キー コンテナーからシークレットを取得するアクションや、データベースへの要求を追跡するリソース ログAzure SQLに対する追加のリソース ログがサポートされています。 リソース ログの内容は、Azure サービスとリソースの種類によって異なります。
リファレンス: データベース データ リファレンスAzure SQL監視
バックアップと回復
詳細については、「 Microsoft クラウド セキュリティ ベンチマーク: バックアップと回復」を参照してください。
BR-1:定期的な自動バックアップを保証する
機能
Azure Backup
説明: サービスは、Azure Backup サービスによってバックアップできます。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
False | 適用しない | 適用しない |
構成ガイダンス: この機能は、このサービスをセキュリティで保護するためにサポートされていません。
サービス ネイティブ バックアップ機能
説明: サービスでは、独自のネイティブ バックアップ機能がサポートされます (Azure Backupを使用していない場合)。 詳細については、こちらを参照してください。
サポートされています | 既定で有効 | 構成の責任 |
---|---|---|
True | True | Microsoft |
構成ガイダンス: これは既定のデプロイで有効になっているので、追加の構成は必要ありません。
リファレンス: 自動バックアップ - Azure SQL データベース
次の手順
- Microsoft クラウド セキュリティ ベンチマークの概要を参照してください
- Azure セキュリティ ベースラインの詳細について学習する