Azure Database Migration Service の Azure セキュリティ ベースライン

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

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

Note

Azure Database Migration Service に適用されないコントロールと、グローバルなガイダンスが一字一句たがえず推奨されるコントロールは、除外されています。 Azure Database Migration Service を完全に Azure セキュリティ ベンチマークにマップする方法については、完全な Azure Database Migration Service セキュリティ ベースライン マッピング ファイルを参照してください。

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

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

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

ガイダンス:Azure Database Migration Service リソースをデプロイする場合は、既存の仮想ネットワークを作成または使用する必要があります。 すべての Azure 仮想ネットワークが、ビジネス リスクに合わせたエンタープライズ セグメント化の原則に従っていることを確認します。 組織のリスクが高くなる可能性があるシステムは、独自の仮想ネットワーク内に隔離し、ネットワーク セキュリティ グループ (NSG) または Azure Firewall で十分に保護する必要があります。

Azure Database Migration Service では、既定では TLS 1.2 を使用します。 移行されるデータ ソースの下位互換性のために必要な場合は、Azure Database Migration Service のサービス構成ブレードで TLS 1.0 または TLS 1.1 のサポートを有効にすることができます。

Microsoft Sentinel を使用して、不安がある従来のプロトコルである SSL/TLSv1、SMBv1、LM/NTLMv1、wDigest、署名なしの LDAP バインド、Kerberos の弱い暗号の使用を検出します。

セキュリティ規則を使用してネットワーク セキュリティ グループを作成する方法: /azure/virtual-network/tutorial-filter-network-traffic

Azure Firewall をデプロイおよび構成する方法: /azure/firewall/tutorial-firewall-deploy-portal

責任: Customer

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

ガイダンス:移行のユース ケースにネットワーク間トラフィックが含まれている場合は、Azure ExpressRoute または Azure 仮想プライベート ネットワーク (VPN) を使用して、Azure データセンターとコロケーション環境内のオンプレミス インフラストラクチャの間のプライベート接続を作成するオプションがあります。 ExpressRoute 接続はパブリック インターネットを経由しないので、一般的なインターネット接続と比べて信頼性が高く、より高速で、待ち時間も短くなります。 ポイント対サイト VPN とサイト間 VPN では、これらの VPN オプションと Azure ExpressRoute の任意の組み合わせを使用して、オンプレミスのデバイスやネットワークを仮想ネットワークに接続できます。 Azure で 2 つ以上の仮想ネットワークを接続するには、仮想ネットワーク ピアリングを使用します。 ピアリングされた仮想ネットワーク間のネットワーク トラフィックはプライベートであり、Azure のバックボーン ネットワーク上に保持されます。

責任: Customer

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

ガイダンス:該当する場合は、Azure Private Link を使用して、ソースおよび宛先サービス (Azure SQL Server など) またはその他の移行中に必要なサービスへのプライベート アクセスを有効にします。 Azure Private Link がまだ使用できない場合は、Azure 仮想ネットワーク サービス エンドポイントを使用します。 Azure Private Link とサービス エンドポイントはどちらも、インターネットを経由せずに、Azure のバックボーン ネットワーク上の最適化されたルートを使用したサービスへの安全なアクセスを提供します。

さらに、Azure Database Migration Service を仮想ネットワークにプロビジョニングする前に、前提条件 (許可する必要がある通信ポートを含む) が満足されていることを確認してください。

責任: Customer

ID 管理

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

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

ガイダンス:Azure Database Migration Service では、既定の ID およびアクセス管理サービスとして Azure Active Directory (Azure AD) を使用します。 Azure AD を標準化して、次のリソースでの組織の ID とアクセス管理を統制する必要があります。

Azure portal、Azure Storage、Azure 仮想マシン (Linux と Windows)、Azure Key Vault、PaaS、SaaS アプリケーションなどの Microsoft Cloud リソース。

Azure 上のアプリケーションや企業ネットワーク リソースなどの組織のリソース。

Azure AD を保護することは、組織のクラウド セキュリティ プラクティスの中で高い優先順位を持つ必要があります。 Azure AD では、Microsoft のベスト プラクティスの推奨事項を基準にした、お客様の ID セキュリティ体制を評価するために役立つ ID セキュリティ スコアが提供されます。 スコアを使用して、構成がベスト プラクティスの推奨事項とどの程度一致しているかを測定し、セキュリティ体制を強化します。

注意:Azure AD では外部 ID がサポートされています。これにより、Microsoft アカウントを持たないユーザーは、自分の外部 ID を使用して自分のアプリケーションおよびリソースにサインインすることができます。

責任: Customer

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

ガイダンス:Azure Database Migration Service では、ユーザーは 'オンライン' モードで Azure SQL Database Managed Instance に移行するために、Azure Active Directory (Azure AD) 内にアプリケーション ID (サービス プリンシパル) と認証キーを作成する必要があります。 このアプリケーション ID には、サブスクリプション レベルの共同作成者ロール (これは、共同作成者ロールに付与される過剰なアクセス許可のためにお勧めできません) か、または Azure Database Migration Service に必要な特定のアクセス許可を持つカスタム ロールの作成のどちらかが必要です。

移行が完了したら、このアプリケーション ID を削除することをお勧めします。

責任: Customer

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

ガイダンス:Azure Database Migration Service は、Azure リソース、クラウド アプリケーション、オンプレミスのアプリケーションに対する ID およびアクセス管理のために Azure Active Directory と統合されています。 これには、従業員などの企業 ID だけでなく、パートナー、ベンダー、サプライヤーなどの外部 ID も含まれます。 これにより、オンプレミスおよびクラウド内の組織のデータとリソースへのアクセスを管理し、セキュリティで保護するためのシングルサインオン (SSO) が可能になります。 すべてのユーザー、アプリケーション、デバイスを Azure AD に接続することで、シームレスで安全なアクセスを実現し、可視性と制御性を高めることができます。

責任: Customer

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

ガイダンス:Azure Database Migration Service では、ID やシークレットを含んでいる可能性のあるコード、構成、または永続化されたデータを顧客がデプロイまたは実行できます。コード、構成、または永続化されたデータ内の資格情報を識別するために、資格情報スキャナーを実装することをお勧めします。 また、資格情報スキャナーを使うと、検出された資格情報を、Azure Key Vault などのより安全な場所に移動しやすくなります。

GitHub が使用されている場合は、ネイティブなシークレット スキャン機能を使用して、コード内の資格情報やその他の形式のシークレットを識別できます。

責任: Customer

特権アクセス

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

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

ガイダンス:Azure Database Migration Service では、ユーザーは 'オンライン' モードで Azure SQL Database Managed Instance に移行するために、Azure Active Directory (Azure AD) 内にアプリケーション ID (サービス プリンシパル) と認証キーを作成する必要があります。 移行が完了したら、このアプリケーション ID を削除することをお勧めします。

責任: Customer

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

ガイダンス:セキュリティで保護された分離したワークステーションは、管理者、開発者、重要なサービス オペレーターのような機密性の高い役割のセキュリティには非常に重要です。 管理タスクに高度にセキュリティ保護されたユーザー ワークステーションや Azure Bastion を使用します。 Azure Active Directory、Microsoft Defender Advanced Threat Protection (ATP)、または Microsoft Intune を使用して、管理タスクのためにセキュリティで保護されたマネージド ユーザー ワークステーションを展開します。 セキュリティで保護されたワークステーションを一元管理して、強力な認証、ソフトウェアとハードウェアのベースライン、制限された論理アクセスとネットワーク アクセスなどのセキュリティで保護された構成を実施できます。

責任: Customer

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

ガイダンス:Azure Database Migration Service は、そのリソースの管理のために Azure ロールベースのアクセス制御 (RBAC) と統合されています。 Azure RBAC を使用すると、ロールの割り当てによって Azure リソースへのアクセスを管理できます。 これらのロールを、ユーザー、グループ サービス プリンシパル、およびマネージド ID に割り当てることができます。 特定のリソースに対して定義済みの組み込みロールがあります。これらのロールは、Azure CLI、Azure PowerShell、Azure portal などのツールを使用してインベントリまたは照会できます。 Azure RBAC を使用してリソースに割り当てる特権は、常に、ロールで必要なものに制限する必要があります。 これは、Azure Active Directory Privileged Identity Management (PIM) のジャスト イン タイム (JIT) アプローチを補完するものであり、定期的に見直す必要があります。

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

責任: Customer

データ保護

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

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

ガイダンス:Azure Database Migration Service では、顧客によって構成されたソースからデータベース移行サービス インスタンスに転送中のデータを、既定では TLS 1.2 以降を使用して暗号化します。 ソース サーバーが TLS 1.2 接続をサポートしていない場合は、これを無効にすることを選択できますが、そうしないことを強くお勧めします。 データベース移行サービス インスタンスからターゲット インスタンスへのデータの転送は、常に暗号化されます。

Azure Database Migration Service の外部では、アクセス制御を使用できます。転送中のデータを、暗号化を使用して '帯域外' 攻撃 (トラフィックのキャプチャなど) から保護することにより、攻撃者がそのデータを簡単に読み取ったり、変更したりできないようにする必要があります。 HTTP トラフィックの場合は、Azure リソースに接続するすべてのクライアントが確実に TLS v1.2 以上をネゴシエートできるようにしてください。 リモート管理には、暗号化されていないプロトコルではなく、SSH (Linux の場合) または RDP/TLS (Windows の場合) を使用します。 SSL、TLS、または SSH の古いバージョンやプロトコル、弱い暗号化は無効にする必要があります。

Azure では、基になるインフラストラクチャで、転送中のデータの暗号化が Azure データ センター間のデータ トラフィックに対して既定で提供されます。

責任: 共有

アセット管理

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

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

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

セキュリティ リスクの監視は、セキュリティ チームの責任の構造に応じて、中央のセキュリティ チームまたはローカル チームの責任になります。 ただし、セキュリティ分析情報とリスクは、常に組織内で一元的に集計する必要があります。

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

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

責任: Customer

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

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

Azure Database Migration Service では、そのリソースに対するアプリケーションの実行やソフトウェアのインストールは許可されません。

責任: Customer

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

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

責任: Customer

ログと脅威検出

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

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 コンピューティング リソース (仮想マシン、コンテナー、アプリ サービス)、データ リソース (SQL DB、ストレージ)、Azure サービス レイヤーから、さらに詳細なセキュリティ アラートを収集することもできます。 この機能により、個々のリソース内でアカウントの異常を確認できます。

責任: Customer

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

ガイダンス:セキュリティ分析で、インシデント調査、脅威ハンティング、セキュリティ アラートの生成をサポートするために、ネットワーク セキュリティ グループ (NSG) のリソース ログ、NSG フロー ログ、Azure Firewall ログ、Web アプリケーション ファイアウォール (WAF) ログを有効にして収集します。 Azure Monitor Log Analytics ワークスペースにフロー ログを送信し、Traffic Analytics を使用して分析情報を提供できます。

注: Azure Database Migration Service では、有効にする必要がある DNS クエリ ログの生成や処理は行われません。

責任: Customer

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

ガイダンス:ログ記録のストレージと分析を一元化して、相関関係を有効にします。 ログ ソースごとに、データ所有者、アクセス ガイダンス、ストレージの場所、データの処理とアクセスに使用するツール、データ保持の要件を割り当てたことを確認します。

Azure アクティビティ ログを一元的なログ記録に統合していることを確認します。 Azure Monitor を介してログを取り込み、エンドポイント デバイス、ネットワーク リソース、およびその他のセキュリティ システムによって生成されたセキュリティ データを集計します。 Azure Monitor で Log Analytics ワークスペースを使用してクエリを発行し、分析を実行して、長期のアーカイブ ストレージには Azure Storage アカウントを使用します。

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

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

責任: Customer

体制と脆弱性の管理

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

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

ガイダンス:必要に応じて、Azure リソースの侵入テストまたはレッド チーム アクティビティを実施し、セキュリティに関するすべての重大な調査結果が確実に修復されるようにします。 お客様の侵入テストが Microsoft のポリシーに違反しないように、Microsoft クラウド侵入テストの実施ルールに従ってください。 Microsoft が管理しているクラウド インフラストラクチャ、サービス、アプリケーションに対する Red Teaming およびライブ サイト侵入テストに関する Microsoft の戦略と実施を活用してください。

責任: Customer

次のステップ