Azure のデータ セキュリティと暗号化のベスト プラクティス

この記事では、データ セキュリティと暗号化のベスト プラクティスについて説明します。

これらのベスト プラクティスは、集約された意見に基づくものであり、Azure プラットフォームの最新の機能に対応しています。 人の考えやテクノロジは時間の経過と共に変化するため、この記事は、それらの変化が反映されるように定期的に更新されます。

データの保護

クラウド内のデータを保護するには、データが発生する可能性がある特定の状態と、その状態に対してどのような制御を利用できるのかを把握する必要があります。 Azure のデータ セキュリティと暗号化のベスト プラクティスは、次のデータの状態に関連しています。

  • 保存時:ストレージ オブジェクト、コンテナー、データなど、物理メディア (磁気ディスクまたは光学ディスク) に静的な状態で存在しているすべての情報が含まれます。
  • 転送中: コンポーネント、場所、またはプログラムの間でデータが転送されるとき、データは転送中になります。 例として、ネットワーク上の転送、サービス バス経由の転送 (オンプレミスからクラウドへ、クラウドからオンプレミスへ。ExpressRoute などのハイブリッド接続を含みます)、入力/出力プロセス中の転送があります。
  • 使用中: データのプロセス中、特殊な AMD および Intel チップセット ベースのコンフィデンシャル コンピューティング VM は、ハードウェア マネージド キーを使って、データをメモリ内で暗号化して保持します。

キー管理ソリューションを選択する

キーの保護は、クラウドでのデータ保護に不可欠です。

Azure Key Vault は、クラウド アプリケーションやサービスで使われる暗号化キーとシークレットをセキュリティで保護するために役立ちます。 Key Vault は、キー管理プロセスを合理化し、データにアクセスして暗号化するキーの制御を維持できます。 開発者は、開発やテスト用のキーを数分で作成し、それらを実稼働キーに移行できます。 セキュリティ管理者は、必要に応じて、キーに権限を付与する (取り消す) ことができます。

Key Vault を使用して、コンテナーと呼ばれるセキュリティで保護されたコンテナーを複数作成できます。 これらのコンテナーは、HSM によってバックアップされます。 コンテナーでは、アプリケーション シークレットを一元的に保管することで、セキュリティ情報が過って失われる可能性は低くなります。 さらに、キー コンテナーでは、その中に格納されているすべての情報へのアクセスの制御と記録を行います。 Azure Key Vault は、トランスポート層セキュリティ (TLS) 証明書の要求と更新を処理できます。 堅牢なソリューションに対して証明書のライフ サイクルを管理するための機能を提供します。

Azure Key Vault は、アプリケーション キーとシークレットをサポートするように設計されています。 Key Vault は、ユーザー パスワードの保管場所になることは意図されていません。

Key Vault を使用するためのセキュリティのベスト プラクティスを次に示します。

ベスト プラクティス: 特定のスコープでユーザー、グループ、およびアプリケーションにアクセス権を付与する。 詳細: Azure RBAC の定義済みロールを使用します。 たとえば、キー コンテナーを管理するためのアクセス権をユーザーに付与するには、定義済みのロールであ キー コンテナーの共同作成者を特定のスコープでそのユーザーに割り当てます。 この場合のスコープは、サブスクリプション、リソース グループ、または特定のキー コンテナーになります。 定義済みのロールがニーズに合わない場合は、独自のロールを定義できます。

ベスト プラクティス: ユーザーが所有するアクセス権を制御する。 詳細: キー コンテナーへのアクセスは、2 つの独立したインターフェイス (管理プレーンとデータ プレーン) を使って制御します。 管理プレーンとデータ プレーンのアクセス制御は独立して動作します。

Azure RBAC を使用して、ユーザーが所有するアクセス権を制御します。 たとえば、キー コンテナー内のキーを使用するためのアクセス権をアプリケーションに付与する場合は、キー コンテナー アクセス ポリシーを使用して、データ プレーンのアクセス許可のみを付与する必要があります。このアプリケーションには、管理プレーンへのアクセスは必要ありません。 逆に、ユーザーがコンテナーのプロパティやタグを読み取ることができるが、キー、シークレット、証明書にはアクセスできないようにする場合は、Azure RBAC を使用してそのユーザーに読み取りアクセス権を付与します。データ プレーンへのアクセスは必要ありません。

ベスト プラクティス: キー コンテナーに証明書を格納する。 お客様の証明書には高い価値があります。 悪人の手に渡れば、お客様のアプリケーションのセキュリティやデータのセキュリティが侵害される可能性があります。 詳細: Azure Resource Manager では、Azure VM がデプロイされるときに、Azure Key Vault に格納されている証明書をその VM に安全にデプロイできます。 キー コンテナー用の適切なアクセス ポリシーを設定することで、誰が証明書にアクセスできるかを制御することもできます。 別のメリットは、すべての証明書を Azure Key Vault の 1 か所で管理できることです。 詳細については、「Deploy certificates to VMs from a customer-managed key vault」(ユーザーが管理する Key Vault から VM に証明書をデプロイする) を参照してください。

ベスト プラクティス: キー コンテナーまたはキー コンテナー オブジェクトが削除された場合に回復できることを確認する。 詳細: 不注意や悪意によってキー コンテナーまたはキー コンテナー オブジェクトが削除される可能性があります。 Key Vault のソフト削除と消去保護機能を有効にしてください。保存データを暗号化するために使用されるキーに対しては必ず有効にしてください。 これらのキーの削除はデータ損失に相当するため、必要に応じて、削除されたコンテナーとコンテナー オブジェクトを回復できます。 Key Vault の回復操作を定期的に実行してください。

Note

ユーザーがキー コンテナーの管理プレーンに対する共同作成者権限 (Azure RBAC) を持っている場合は、キー コンテナー アクセス ポリシーを設定することで、データ プレーンへのアクセス権を自分自身に付与できます。 キー コンテナーに対する共同作成者アクセス権を持つユーザーを厳重に管理して、承認されたユーザーのみがキー コンテナー、キー、シークレット、および証明書にアクセスして管理できるようにすることをお勧めします。

セキュリティ保護されたワークステーションを利用して管理する

Note

サブスクリプション管理者または所有者は、セキュリティで保護されたアクセスを実行できるワークステーションまたは特権アクセスを提供するワークステーションを使用する必要があります。

ほとんどの攻撃はエンド ユーザーを標的としているため、エンドポイントが主要な攻撃目標の 1 つとなっています。 エンドポイントをセキュリティ侵害する攻撃者は、ユーザーの資格情報を悪用して組織のデータにアクセスする可能性があります。 ほとんどのエンドポイント攻撃は、ユーザーがローカル ワークステーションの管理者であるという事実を悪用しています。

ベスト プラクティス: セキュリティで保護された管理ワークステーションを使用して、機微なアカウント、タスク、およびデータを保護する。 詳細: ワークステーションの攻撃対象領域を減らすために、特権アクセスを提供するワークステーションを使用します。 このようなセキュリティで保護された管理ワークステーションを使用することで、攻撃を受ける可能性を減らし、データの安全性を高めることができます。

ベスト プラクティス: エンドポイントが保護されていることを保証する。 詳細: データの保存先 (クラウドまたはオンプレミス) に関わらず、データを利用するすべてのデバイスにセキュリティ ポリシーを必ず適用します。

保存データの保護

データ プライバシー、コンプライアンス、データ主権を確保するうえで、保存データの暗号化は欠かせません。

ベスト プラクティス: データを保護するためにディスク暗号化を適用する。 詳細: 「Linux VM に対する Azure Disk Encryption」または「Windows VM 用の Azure Disk Encryption」。 Disk Encryption は、業界標準である Linux dm-crypt または Windows の BitLocker 機能を組み合わせて、OS ディスクとデータ ディスクのボリューム暗号化を行います。

Azure Storage と Azure SQL Database では、保存データは既定で暗号化され、多くのサービス プランでは、暗号化はオプションとして提供されます。 Azure Key Vault を使用して、データへのアクセスと暗号化を行うキーの制御を維持できます。 詳細については、「Azure リソース プロバイダー暗号化モデルのサポート」を参照してください。

ベスト プラクティス:不正なデータ アクセスに関連するリスクを減らすために暗号化を使用する。 詳細: ドライブに機微なデータを書き込む前に、ドライブを暗号化します。

データの暗号化を行っていない組織は、データの機密性に関する問題にさらされる可能性が高くなります。 たとえば侵害されたアカウントのデータが許可のないユーザーや悪意のあるユーザーによって盗まれたり、平文のデータが不正アクセスを受けたりするおそれがあります。 さらに、業界の規制を遵守する必要がある企業は、適切なセキュリティ制御を使用してデータのセキュリティ強化に努めていることを証明する必要があります。

転送中のデータを保護する

転送中のデータの保護は、データ保護戦略に欠かせない要素です。 データはさまざまな場所を経由して転送されるため、一般的には常時 SSL/TLS プロトコルを使用してデータをやり取りすることが推奨されています。 状況によっては、オンプレミスとクラウド インフラストラクチャ間の通信チャネル全体を、VPN を使用して隔離する必要があります。

オンプレミス インフラストラクチャと Azure 間のデータ移動に対して、HTTPS や VPN などの適切なセキュリティ対策を検討してください。 暗号化されたトラフィックを Azure 仮想ネットワークとオンプレミスの場所の間でパブリック インターネット上で送信する場合は、Azure VPN Gateway を使用してください。

Azure VPN Gateway、SSL/TLS、および HTTPS の使用に固有のベスト プラクティスを次に示します。

ベスト プラクティス: オンプレミスの複数のワークステーションから Azure 仮想ネットワークへのアクセスをセキュリティで保護する。 詳細: サイト間 VPN を使用します。

ベスト プラクティス: オンプレミスの個々のワークステーションから Azure 仮想ネットワークへのアクセスをセキュリティで保護する。 詳細: ポイント対サイト VPN を使用します。

ベスト プラクティス: 大規模なデータ セットは、専用の高速 WAN リンク経由で移動する。 詳細: ExpressRoute を使用します。 ExpressRoute を使用する場合、SSL/TLS などのプロトコルを使用してアプリケーション レベルでデータを暗号化することで、さらに保護を強化できます。

ベスト プラクティス: Azure portal を通して Azure Storage を操作する。 詳細: すべてのトランザクションは HTTPS 経由で行われます。 また、HTTPS 経由で Storage REST API を使用して Azure Storage を操作することもできます。

転送中のデータを保護しない組織は、中間者攻撃盗聴、およびセッション ハイジャックを受ける可能性が高くなります。 このような攻撃は、機密データへのアクセスを取得するための最初の手順である場合があります。

使用中のデータを保護する

信頼の必要性を軽減する クラウド上でワークロードを実行するには信頼が必要です。 アプリケーションの各種のコンポーネントを有効にするさまざまなプロバイダーに、この信頼を付与します。

  • アプリ ソフトウェア ベンダー: オンプレミスにデプロイするか、オープンソースを使用するか、社内アプリケーション ソフトウェアを構築することで、ソフトウェアを信頼します。
  • ハードウェア ベンダー: オンプレミスのハードウェアまたは社内ハードウェアを使用することで、ハードウェアを信頼します。
  • インフラストラクチャ プロバイダー: クラウド プロバイダーを信頼するか、独自のオンプレミスのデータ センターを管理します。

攻撃面を減らす 信頼済みのコンピューティング ベース (TCB) とは、セキュリティで保護された環境を提供する、システムのハードウェア、ファームウェア、ソフトウェア コンポーネントのすべてのことです。 TCB 内のコンポーネントは、"クリティカル" と見なされます。TCB 内の 1 つのコンポーネントが侵害された場合、システム全体のセキュリティが脅かされる可能性があります。 TCB が低いほど、セキュリティが高いことを意味します。 さまざまな脆弱性、マルウェア、攻撃、および悪意のある人物にさらされるリスクが低下します。

Azure のコンフィデンシャル コンピューティングは、次の場合に役立ちます。

  • 未承認のアクセスを禁止する: 機密データをクラウドで実行します。 Azure が可能な限り最高のデータ保護を提供し、現在行われているものとほとんどまたはまったく変わらないことを信頼してください。
  • 規制コンプライアンスに対応する: 個人情報を保護する政府の規制を満たし、組織 IP をセキュリティで保護するために、クラウドに移行して、データの完全な制御を維持します。
  • セキュリティで保護されるものと信頼されていないもののコラボレーションを確保する: 広範なデータ分析と詳細な分析情報を可能にするために、競合他社も含む複数の組織にわたるデータを組み合わせることで、業界全体の作業規模の問題に取り組みます。
  • 処理を分離する: ブラインド処理によるプライベート データへの負担を除去する新しい機能の製品を提供します。 サービス プロバイダーさえ、ユーザー データを取得できません。

詳細については、コンフィデンシャル コンピューティングのページを参照してください。

電子メール、ドキュメント、および機微なデータをセキュリティで保護する

社外で共有する電子メール、ドキュメント、おおび機微なデータを管理してセキュリティで保護できます。 Azure Information Protection は、組織がドキュメントと電子メールを分類、ラベル付け、保護するのに役立つクラウドベースのソリューションです。 ルールおよび条件を定義する管理者は自動で、ユーザーまたはユーザーが推奨設定を取得する組み合わせの下では手動で、これを実行できます。

データを保存する場所や共有する相手に関係なく、分類は常に識別可能です。 ラベルには、ヘッダー、フッター、透かしなどの視覚的なマーキングが含まれます。 ファイルと電子メールのヘッダーには、クリア テキストでメタデータが追加されます。 クリア テキストは、データ損失を防ぐソリューションなどの他のサービスが分類を識別し、適切なアクションを実行できることを保証します。

保護テクノロジは、Azure Rights Management (Azure RMS) を使用しています。 このテクノロジは、Microsoft 365 や Microsoft Entra ID などの他の Microsoft クラウド サービスおよびアプリケーションと統合されています。 この保護テクノロジでは、暗号化、ID、および承認ポリシーが使用されます。 Azure RMS を使って適用された保護は、場所 (組織、ネットワーク、ファイル サーバー、アプリケーションの内外) に関係なくドキュメントや電子メールで保持されます。

この情報保護ソリューションは、データが他のユーザーと共有されている場合でも、お客様によるデータの制御を維持します。 Azure RMS は、お客様の基幹業務アプリケーションと ソフトウェア ベンダーの情報保護ソリューションと共に使用することもできます。これらのアプリケーションとソリューションはオンプレミスであってもクラウド内にあってもかまいません。

推奨事項は次のとおりです。

  • 組織に Azure Information Protection をデプロイする
  • ビジネス要件を反映しているラベルを適用する。 たとえば、機密性が高いデータを含むすべてのドキュメントと電子メールに "極秘" という名前のラベルを適用して、このデータを分類して保護します。 その後、承認されたユーザーのみが、指定された制限内でデータにアクセスできます。
  • Azure RMS の使用状況ログを構成して、組織が保護サービスをどのように使用しているかを監視できるようにします。

データ分類やファイル保護が不十分な組織は、データ漏洩やデータ誤用のリスクが高くなる可能性があります。 適切なファイル保護を使用すれば、データ フローを分析して、ビジネスの分析情報の取得、危険な行為の検出と是正措置の実行、ドキュメントへのアクセスの追跡などを行うことができます。

次のステップ

Azure を使用してクラウド ソリューションを設計、デプロイ、管理するときに使用するセキュリティのベスト プラクティスの詳細については、「Azure セキュリティのベスト プラクティスとパターン」を参照してください。

Azure のセキュリティとそれに関連する Microsoft サービスの一般情報については、以下のリソースを参照してください。