Microsoft Defender for Cloud は、データ環境のセキュリティ状態を向上させる機会を評価および提供するように設計された統合セキュリティ管理システムです。 Microsoft Defender では、Azure VM 上の SQL Server に対してコンピューター上の Microsoft Defender for SQL の保護が提供されます。 Microsoft Defender for SQL を使用して、データベースの潜在的な脆弱性を検出および軽減し、SQL Server インスタンスおよびデータベース レイヤーへの脅威を示す可能性のある異常なアクティビティを検出します。
Microsoft Defender for SQL では次のベネフィットが提供されます。
脆弱性評価は、SQL Server 環境に対する潜在的なリスクを検出し、修復を支援します。 セキュリティの状態を表示することができ、セキュリティの問題を解決するための実行可能な手順が含まれます。
Azure 機密 VM は、ハードウェアによって適用される強力な境界を提供します。これにより、ホスト オペレーターのアクセスからゲスト OS を強力に保護することができます。 Azure VM 上でご利用の SQL Server に対して機密 VM サイズを選択すると、保護レイヤーが追加され、それにより、確実に機密データをクラウドに格納し、厳格なコンプライアンス要件を満たすことができます。
Azure 機密 VM では、SEV-SNP テクノロジを備えた AMD プロセッサを活用しています。このプロセッサでは自身で生成したキーを使用して VM のメモリを暗号化します。 これは、使用中のデータ (SQL Server プロセスのメモリ内で処理されるデータ) を、ホスト OS からの不正アクセスから保護するのに役立ちます。 また、仮想マシンのトラステッド プラットフォーム モジュール (TPM) チップにバインドされたキーを使用して機密 VM の OS ディスクを暗号化し、保存データの保護を強化することもできます。
Azure Disk Encryption では、Azure Key Vault を使用して、ディスク暗号化キーとシークレットを制御および管理します。
アクセス制御
Azure ギャラリー イメージを使用して SQL Server 仮想マシンを作成する場合は、[SQL Server 接続] オプションで、[ローカル (VM 内)]、[プライベート (仮想ネットワーク内)]、または [パブリック (インターネット)] を選択できます。
セキュリティを最大限に強化するため、自分のシナリオで最も制限の厳しいオプションを選択します。 たとえば、同じ VM の SQL Server にアクセスするアプリケーションを実行している場合、最もセキュリティで保護された選択は [ローカル] です。 SQL Server へのアクセスを必要とする Azure アプリケーションを実行している場合、 [プライベート] では、指定された Azure 仮想ネットワーク内の SQL Server への通信のみがセキュリティで保護します。 SQL Server VM にアクセスする [パブリック (インターネット)] が必要な場合、危険を回避するために、このトピックの他のベスト プラクティスに従ってください。
ポータルで選択されたオプションは、VM のネットワーク セキュリティ グループ (NSG) の受信セキュリティ ルールを使用して、仮想マシンへのネットワーク トラフィックを許可または拒否します。 SQL Server ポート (既定値 1433) へのトラフィックを許可するには、受信 NSG ルールを変更または新規作成します。 また、このポートでの通信を許可する、特定の IP アドレスを指定することもできます。
ネットワーク トラフィックを制限する NSG ルールに加え、仮想マシンで Windows ファイアウォールを使用することもできます。
Azure 仮想マシンの SQL Server DB エンジンのインスタンスに対して暗号化接続を有効にすることを検討してください。 署名付き証明書で SQL Server インスタンスを構成します。 詳細については、「データベース エンジンへの暗号化接続の有効化」および「接続文字列の構文」をご覧ください。
ネットワーク接続または境界をセキュリティで保護する場合は、次の点を考慮してください。
Azure Firewall - ネットワーク リソースを保護するために、発信元 IP アドレスに基づいてサーバー アクセスを許可/拒否するステートフルで管理されたファイアウォールとしてのサービス (FaaS) です。
このセクションでは、ディスク暗号化のガイダンスを提供しますが、推奨事項は、Azure VM に従来の SQL Server をデプロイするのか、Azure 機密 VM に SQL Server をデプロイするのかによって異なります。
従来の VM
Azure 機密 VM 以外の VM にデプロイされたマネージド ディスクでは、サーバー側の暗号化と Azure Disk Encryption を使用します。 サーバー側暗号化では、保存時の暗号化が提供され、組織のセキュリティおよびコンプライアンス要件を満たすようにデータが保護されます。 Azure Disk Encryption では、BitLocker または DM-Crypt テクノロジを使用し、Azure Key Vault と統合して OS とデータ ディスクの両方を暗号化します。
以下、具体例に沿って説明します。
Azure Disk Encryption - Windows 仮想マシンと Linux 仮想マシンの両方で Azure Disk Encryption を使用して仮想マシンのディスクを暗号化します。
コンプライアンスとセキュリティの要件で、エフェメラル (ローカルに接続された一時) ディスクの暗号化を含め、暗号化キーを使用してエンド ツー エンドでデータを暗号化する必要がある場合は、Azure Disk Encryption を使用します。
Azure Disk Encryption (ADE) は、Windows の業界標準である BitLocker 機能と Linux の DM-Crypt 機能を活用して、OS とデータ ディスクの暗号化を提供します。
マネージド ディスクの暗号化
マネージド ディスクの暗号化は既定で、Azure Storage Service Encryption を使用して行われます。暗号化キーは、Microsoft が Azure で管理するキーです。
既定で、Azure は SQL Server 仮想マシンのセットアップ中に Windows 認証を選択します。 そのため、 SA ログインは無効となり、パスワードはセットアップによって割り当てられます。 SA ログインは使用せず、有効にしないことをお勧めします。 SQL ログインが必要な場合は、次の方法のいずれかを使用します。
Azure VM 上の SQL Server を FIPS に準拠させるには、既定で FIPS が有効になっている Windows Server 2022 上に存在する必要があります。 Windows Server 2019 の場合は、セキュリティ技術実装ガイド (STIG) 項目 V-93511 で指定されたポリシーを使用して、FIPS を手動で有効化して FIPS に準拠させることもできます。
SQL Server は、現在 Linux Azure VM では FIPS に準拠していません。
関連するコンテンツ
SQL Server と Azure VM のセキュリティのベスト プラクティスを確認してからこの記事を確認して、Azure VM 上の SQL Server に特に当てはまるベストプラクティスを確認してください。
Always On 可用性グループ、フェールオーバー クラスター インスタンス、データベース ミラーリング、ログ配布、Azure Storage へのバックアップと復元など、Azure VM 上の SQL Server で使用できる高可用性、ディザスター リカバリー (HADR)、およびビジネス継続性のオプションについて学習します。
この記事では、SQL Server IaaS Agent 拡張機能を使って、Azure Windows VM 上の SQL Server の管理固有の管理タスクを自動化する方法について説明します。 この中には、自動バックアップ、自動修正、Azure Key Vault の統合、ライセンス管理、ストレージ構成、すべての SQL Server VM インスタンスの中央管理といった機能が含まれます。