Azure のデータ セキュリティと暗号化のベスト プラクティスAzure data security and encryption best practices

この記事では、データ セキュリティと暗号化のベスト プラクティスについて説明します。This article describes best practices for data security and encryption.

これらのベスト プラクティスは、集約された意見に基づくものであり、Azure プラットフォームの最新の機能に対応しています。The best practices are based on a consensus of opinion, and they work with current Azure platform capabilities and feature sets. 人の考えやテクノロジは時間の経過と共に変化するため、この記事は、それらの変化が反映されるように定期的に更新されます。Opinions and technologies change over time and this article is updated on a regular basis to reflect those changes.

データの保護Protect data

クラウド内のデータを保護するには、データが発生する可能性がある特定の状態と、その状態に対してどのような制御を利用できるのかを把握する必要があります。To help protect data in the cloud, you need to account for the possible states in which your data can occur, and what controls are available for that state. Azure のデータ セキュリティと暗号化のベスト プラクティスは、次のデータの状態に関連しています。Best practices for Azure data security and encryption relate to the following data states:

  • 保存時:ストレージ オブジェクト、コンテナー、データなど、物理メディア (磁気ディスクまたは光学ディスク) に静的な状態で存在しているすべての情報が含まれます。At rest: This includes all information storage objects, containers, and types that exist statically on physical media, whether magnetic or optical disk.
  • 転送中:コンポーネント、場所、またはプログラムの間でデータが転送されるとき、データは転送中になります。In transit: When data is being transferred between components, locations, or programs, it’s in transit. 例として、ネットワーク上の転送、サービス バス経由の転送 (オンプレミスからクラウドへ、クラウドからオンプレミスへ。ExpressRoute などのハイブリッド接続を含みます)、入力/出力プロセス中の転送があります。Examples are transfer over the network, across a service bus (from on-premises to cloud and vice-versa, including hybrid connections such as ExpressRoute), or during an input/output process.

キー管理ソリューションを選択するChoose a key management solution

キーの保護は、クラウドでのデータ保護に不可欠です。Protecting your keys is essential to protecting your data in the cloud.

Azure Key Vault は、クラウド アプリケーションやサービスで使われる暗号化キーとシークレットをセキュリティで保護するために役立ちます。Azure Key Vault helps safeguard cryptographic keys and secrets that cloud applications and services use. Key Vault は、キー管理プロセスを合理化し、データにアクセスして暗号化するキーの制御を維持できます。Key Vault streamlines the key management process and enables you to maintain control of keys that access and encrypt your data. 開発者は、開発やテスト用のキーを数分で作成し、それらを実稼働キーに移行できます。Developers can create keys for development and testing in minutes, and then migrate them to production keys. セキュリティ管理者は、必要に応じて、キーに権限を付与する (取り消す) ことができます。Security administrators can grant (and revoke) permission to keys, as needed.

Key Vault を使用して、コンテナーと呼ばれるセキュリティで保護されたコンテナーを複数作成できます。You can use Key Vault to create multiple secure containers, called vaults. これらのコンテナーは、HSM によってバックアップされます。These vaults are backed by HSMs. コンテナーでは、アプリケーション シークレットを一元的に保管することで、セキュリティ情報が過って失われる可能性は低くなります。Vaults help reduce the chances of accidental loss of security information by centralizing the storage of application secrets. さらに、キー コンテナーでは、その中に格納されているすべての情報へのアクセスの制御と記録を行います。Key vaults also control and log the access to anything stored in them. Azure Key Vault は、トランスポート層セキュリティ (TLS) 証明書の要求と更新を処理できます。Azure Key Vault can handle requesting and renewing Transport Layer Security (TLS) certificates. 堅牢なソリューションに対して証明書のライフ サイクルを管理するための機能を提供します。It provides features for a robust solution for certificate lifecycle management.

Azure Key Vault は、アプリケーション キーとシークレットをサポートするように設計されています。Azure Key Vault is designed to support application keys and secrets. Key Vault は、ユーザー パスワードの保管場所になることは意図されていません。Key Vault is not intended to be a store for user passwords.

Key Vault を使用するためのセキュリティのベスト プラクティスを次に示します。Following are security best practices for using Key Vault.

ベスト プラクティス: 特定のスコープでユーザー、グループ、およびアプリケーションにアクセス権を付与する。Best practice: Grant access to users, groups, and applications at a specific scope.
詳細: Azure RBAC の定義済みロールを使用します。Detail: Use Azure RBAC predefined roles. たとえば、キー コンテナーを管理するためのアクセス権をユーザーに付与するには、定義済みのロールであ キー コンテナーの共同作成者を特定のスコープでそのユーザーに割り当てます。For example, to grant access to a user to manage key vaults, you would assign the predefined role Key Vault Contributor to this user at a specific scope. この場合のスコープは、サブスクリプション、リソース グループ、または特定のキー コンテナーになります。The scope in this case would be a subscription, a resource group, or just a specific key vault. 定義済みのロールがニーズに合わない場合は、独自のロールを定義できます。If the predefined roles don’t fit your needs, you can define your own roles.

ベスト プラクティス: ユーザーが所有するアクセス権を制御する。Best practice: Control what users have access to.
詳細: キー コンテナーへのアクセスは、2 つの独立したインターフェイス (管理プレーンとデータ プレーン) を使って制御します。Detail: Access to a key vault is controlled through two separate interfaces: management plane and data plane. 管理プレーンとデータ プレーンのアクセス制御は独立して動作します。The management plane and data plane access controls work independently.

Azure RBAC を使用して、ユーザーが所有するアクセス権を制御します。Use Azure RBAC to control what users have access to. たとえば、キー コンテナー内のキーを使用するためのアクセス権をアプリケーションに付与する場合は、キー コンテナー アクセス ポリシーを使用して、データ プレーンのアクセス許可のみを付与する必要があります。このアプリケーションには、管理プレーンへのアクセスは必要ありません。For example, if you want to grant an application access to use keys in a key vault, you only need to grant data plane access permissions by using key vault access policies, and no management plane access is needed for this application. 逆に、ユーザーがコンテナーのプロパティやタグを読み取ることができるが、キー、シークレット、証明書にはアクセスできないようにする場合は、Azure RBAC を使用してそのユーザーに読み取りアクセス権を付与します。データ プレーンへのアクセスは必要ありません。Conversely, if you want a user to be able to read vault properties and tags but not have any access to keys, secrets, or certificates, you can grant this user read access by using Azure RBAC, and no access to the data plane is required.

ベスト プラクティス: キー コンテナーに証明書を格納する。Best practice: Store certificates in your key vault. お客様の証明書には高い価値があります。Your certificates are of high value. 悪人の手に渡れば、お客様のアプリケーションのセキュリティやデータのセキュリティが侵害される可能性があります。In the wrong hands, your application's security or the security of your data can be compromised.
詳細: Azure Resource Manager では、Azure VM がデプロイされるときに、Azure Key Vault に格納されている証明書をその VM に安全にデプロイできます。Detail: Azure Resource Manager can securely deploy certificates stored in Azure Key Vault to Azure VMs when the VMs are deployed. キー コンテナー用の適切なアクセス ポリシーを設定することで、誰が証明書にアクセスできるかを制御することもできます。By setting appropriate access policies for the key vault, you also control who gets access to your certificate. 別のメリットは、すべての証明書を Azure Key Vault の 1 か所で管理できることです。Another benefit is that you manage all your certificates in one place in Azure Key Vault. 詳細については、「Deploy certificates to VMs from a customer-managed key vault」(ユーザーが管理する Key Vault から VM に証明書をデプロイする) を参照してください。See Deploy Certificates to VMs from customer-managed Key Vault for more information.

ベスト プラクティス: キー コンテナーまたはキー コンテナー オブジェクトが削除された場合に回復できることを確認する。Best practice: Ensure that you can recover a deletion of key vaults or key vault objects.
詳細: 不注意や悪意によってキー コンテナーまたはキー コンテナー オブジェクトが削除される可能性があります。Detail: Deletion of key vaults or key vault objects can be inadvertent or malicious. Key Vault のソフト削除と消去保護機能を有効にしてください。保存データを暗号化するために使用されるキーに対しては必ず有効にしてください。Enable the soft delete and purge protection features of Key Vault, particularly for keys that are used to encrypt data at rest. これらのキーの削除はデータ損失に相当するため、必要に応じて、削除されたコンテナーとコンテナー オブジェクトを回復できます。Deletion of these keys is equivalent to data loss, so you can recover deleted vaults and vault objects if needed. Key Vault の回復操作を定期的に実行してください。Practice Key Vault recovery operations on a regular basis.

注意

ユーザーがキー コンテナーの管理プレーンに対する共同作成者権限 (Azure RBAC) を持っている場合は、キー コンテナー アクセス ポリシーを設定することで、データ プレーンへのアクセス権を自分自身に付与できます。If a user has contributor permissions (Azure RBAC) to a key vault management plane, they can grant themselves access to the data plane by setting a key vault access policy. キー コンテナーに対する共同作成者アクセス権を持つユーザーを厳重に管理して、承認されたユーザーのみがキー コンテナー、キー、シークレット、および証明書にアクセスして管理できるようにすることをお勧めします。We recommend that you tightly control who has contributor access to your key vaults, to ensure that only authorized persons can access and manage your key vaults, keys, secrets, and certificates.

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

注意

サブスクリプション管理者または所有者は、セキュリティで保護されたアクセスを実行できるワークステーションまたは特権アクセスを提供するワークステーションを使用する必要があります。The subscription administrator or owner should use a secure access workstation or a privileged access workstation.

ほとんどの攻撃はエンド ユーザーを標的としているため、エンドポイントが主要な攻撃目標の 1 つとなっています。Because the vast majority of attacks target the end user, the endpoint becomes one of the primary points of attack. エンドポイントをセキュリティ侵害する攻撃者は、ユーザーの資格情報を悪用して組織のデータにアクセスする可能性があります。An attacker who compromises the endpoint can use the user’s credentials to gain access to the organization’s data. ほとんどのエンドポイント攻撃は、ユーザーがローカル ワークステーションの管理者であるという事実を悪用しています。Most endpoint attacks take advantage of the fact that users are administrators in their local workstations.

ベスト プラクティス: セキュリティで保護された管理ワークステーションを使用して、機微なアカウント、タスク、およびデータを保護する。Best practice: Use a secure management workstation to protect sensitive accounts, tasks, and data.
詳細: ワークステーションの攻撃対象領域を減らすために、特権アクセスを提供するワークステーションを使用します。Detail: Use a privileged access workstation to reduce the attack surface in workstations. このようなセキュリティで保護された管理ワークステーションを使用することで、攻撃を受ける可能性を減らし、データの安全性を高めることができます。These secure management workstations can help you mitigate some of these attacks and ensure that your data is safer.

ベスト プラクティス: エンドポイントが保護されていることを保証する。Best practice: Ensure endpoint protection.
詳細: データの保存先 (クラウドまたはオンプレミス) に関わらず、データを利用するすべてのデバイスにセキュリティ ポリシーを必ず適用します。Detail: Enforce security policies across all devices that are used to consume data, regardless of the data location (cloud or on-premises).

保存データの保護Protect data at rest

データ プライバシー、コンプライアンス、データ主権を確保するうえで、保存データの暗号化は欠かせません。Data encryption at rest is a mandatory step toward data privacy, compliance, and data sovereignty.

ベスト プラクティス: データを保護するためにディスク暗号化を適用する。Best practice: Apply disk encryption to help safeguard your data.
詳細: Azure Disk Encryption を使用します。Detail: Use Azure Disk Encryption. IT 管理者は、それを使用して、Windows と Linux の IaaS VM のディスクを暗号化できます。It enables IT administrators to encrypt Windows and Linux IaaS VM disks. Disk Encryption は、業界標準である Windows の BitLocker 機能と Linux の dm-crypt 機能を組み合わせて、OS ディスクとデータ ディスクのボリューム暗号化を行う機能です。Disk Encryption combines the industry-standard Windows BitLocker feature and the Linux dm-crypt feature to provide volume encryption for the OS and the data disks.

Azure Storage と Azure SQL Database では、保存データは既定で暗号化され、多くのサービス プランでは、暗号化はオプションとして提供されます。Azure Storage and Azure SQL Database encrypt data at rest by default, and many services offer encryption as an option. Azure Key Vault を使用して、データへのアクセスと暗号化を行うキーの制御を維持できます。You can use Azure Key Vault to maintain control of keys that access and encrypt your data. 詳細については、「Azure リソース プロバイダー暗号化モデルのサポート」を参照してください。See Azure resource providers encryption model support to learn more.

ベスト プラクティス:不正なデータ アクセスに関連するリスクを減らすために暗号化を使用する。Best practices: Use encryption to help mitigate risks related to unauthorized data access.
詳細: ドライブに機微なデータを書き込む前に、ドライブを暗号化します。Detail: Encrypt your drives before you write sensitive data to them.

データの暗号化を行っていない組織は、データの機密性に関する問題にさらされる可能性が高くなります。Organizations that don’t enforce data encryption are more exposed to data-confidentiality issues. たとえば侵害されたアカウントのデータが許可のないユーザーや悪意のあるユーザーによって盗まれたり、平文のデータが不正アクセスを受けたりするおそれがあります。For example, unauthorized or rogue users might steal data in compromised accounts or gain unauthorized access to data coded in Clear Format. さらに、業界の規制を遵守する必要がある企業は、適切なセキュリティ制御を使用してデータのセキュリティ強化に努めていることを証明する必要があります。Companies also must prove that they are diligent and using correct security controls to enhance their data security in order to comply with industry regulations.

転送中のデータを保護するProtect data in transit

転送中のデータの保護は、データ保護戦略に欠かせない要素です。Protecting data in transit should be an essential part of your data protection strategy. データはさまざまな場所を経由して転送されるため、一般的には常時 SSL/TLS プロトコルを使用してデータをやり取りすることが推奨されています。Because data is moving back and forth from many locations, we generally recommend that you always use SSL/TLS protocols to exchange data across different locations. 状況によっては、オンプレミスとクラウド インフラストラクチャ間の通信チャネル全体を、VPN を使用して隔離する必要があります。In some circumstances, you might want to isolate the entire communication channel between your on-premises and cloud infrastructures by using a VPN.

オンプレミス インフラストラクチャと Azure 間のデータ移動に対して、HTTPS や VPN などの適切なセキュリティ対策を検討してください。For data moving between your on-premises infrastructure and Azure, consider appropriate safeguards such as HTTPS or VPN. 暗号化されたトラフィックを Azure 仮想ネットワークとオンプレミスの場所の間でパブリック インターネット上で送信する場合は、Azure VPN Gateway を使用してください。When sending encrypted traffic between an Azure virtual network and an on-premises location over the public internet, use Azure VPN Gateway.

Azure VPN Gateway、SSL/TLS、および HTTPS の使用に固有のベスト プラクティスを次に示します。Following are best practices specific to using Azure VPN Gateway, SSL/TLS, and HTTPS.

ベスト プラクティス: オンプレミスの複数のワークステーションから Azure 仮想ネットワークへのアクセスをセキュリティで保護する。Best practice: Secure access from multiple workstations located on-premises to an Azure virtual network.
詳細: サイト間 VPN を使用します。Detail: Use site-to-site VPN.

ベスト プラクティス: オンプレミスの個々のワークステーションから Azure 仮想ネットワークへのアクセスをセキュリティで保護する。Best practice: Secure access from an individual workstation located on-premises to an Azure virtual network.
詳細: ポイント対サイト VPN を使用します。Detail: Use point-to-site VPN.

ベスト プラクティス: 大規模なデータ セットは、専用の高速 WAN リンク経由で移動する。Best practice: Move larger data sets over a dedicated high-speed WAN link.
詳細: ExpressRoute を使用します。Detail: Use ExpressRoute. ExpressRoute を使用する場合、SSL/TLS などのプロトコルを使用してアプリケーション レベルでデータを暗号化することで、さらに保護を強化できます。If you choose to use ExpressRoute, you can also encrypt the data at the application level by using SSL/TLS or other protocols for added protection.

ベスト プラクティス: Azure portal を通して Azure Storage を操作する。Best practice: Interact with Azure Storage through the Azure portal.
詳細: すべてのトランザクションは HTTPS 経由で行われます。Detail: All transactions occur via HTTPS. また、HTTPS 経由で Storage REST API を使用して Azure Storage を操作することもできます。You can also use Storage REST API over HTTPS to interact with Azure Storage.

転送中のデータを保護しない組織は、中間者攻撃盗聴、およびセッション ハイジャックを受ける可能性が高くなります。Organizations that fail to protect data in transit are more susceptible to man-in-the-middle attacks, eavesdropping, and session hijacking. このような攻撃は、機密データへのアクセスを取得するための最初の手順として実行される場合があります。These attacks can be the first step in gaining access to confidential data.

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

社外で共有する電子メール、ドキュメント、おおび機微なデータを管理してセキュリティで保護できます。You want to control and secure email, documents, and sensitive data that you share outside your company. Azure Information Protection は、組織がドキュメントと電子メールを分類、ラベル付け、保護するのに役立つクラウドベースのソリューションです。Azure Information Protection is a cloud-based solution that helps an organization to classify, label, and protect its documents and emails. ルールおよび条件を定義する管理者は自動で、ユーザーまたはユーザーが推奨設定を取得する組み合わせの下では手動で、これを実行できます。This can be done automatically by administrators who define rules and conditions, manually by users, or a combination where users get recommendations.

データを保存する場所や共有する相手に関係なく、分類は常に識別可能です。Classification is identifiable at all times, regardless of where the data is stored or with whom it’s shared. ラベルには、ヘッダー、フッター、透かしなどの視覚的なマーキングが含まれます。The labels include visual markings such as a header, footer, or watermark. ファイルと電子メールのヘッダーには、クリア テキストでメタデータが追加されます。Metadata is added to files and email headers in clear text. クリア テキストは、データ損失を防ぐソリューションなどの他のサービスが分類を識別し、適切なアクションを実行できることを保証します。The clear text ensures that other services, such as solutions to prevent data loss, can identify the classification and take appropriate action.

保護テクノロジは、Azure Rights Management (Azure RMS) を使用しています。The protection technology uses Azure Rights Management (Azure RMS). このテクノロジは、他の Microsoft クラウド サービスと、Microsoft 365 や Azure Active Directory などのアプリケーションと統合されています。This technology is integrated with other Microsoft cloud services and applications, such as Microsoft 365 and Azure Active Directory. この保護テクノロジでは、暗号化、ID、および承認ポリシーが使用されます。This protection technology uses encryption, identity, and authorization policies. Azure RMS を使って適用された保護は、場所 (組織、ネットワーク、ファイル サーバー、およびアプリケーションの内外) に関係なくドキュメントや電子メールで保持されます。Protection that is applied through Azure RMS stays with the documents and emails, independently of the location—inside or outside your organization, networks, file servers, and applications.

この情報保護ソリューションは、データが他のユーザーと共有されている場合でも、お客様によるデータの制御を維持します。This information protection solution keeps you in control of your data, even when it’s shared with other people. Azure RMS は、お客様の基幹業務アプリケーションと ソフトウェア ベンダーの情報保護ソリューションと共に使用することもできます。これらのアプリケーションとソリューションはオンプレミスであってもクラウド内にあってもかまいません。You can also use Azure RMS with your own line-of-business applications and information protection solutions from software vendors, whether these applications and solutions are on-premises or in the cloud.

推奨事項は次のとおりです。We recommend that you:

  • 組織に Azure Information Protection をデプロイするDeploy Azure Information Protection for your organization.
  • ビジネス要件を反映しているラベルを適用する。Apply labels that reflect your business requirements. 次に例を示します。機密性が高いデータを含むすべてのドキュメントと電子メールに "極秘" という名前のラベルを適用して、このデータを分類して保護します。For example: Apply a label named “highly confidential” to all documents and emails that contain top-secret data, to classify and protect this data. その後、承認されたユーザーのみが、指定された制限内でデータにアクセスできます。Then, only authorized users can access this data, with any restrictions that you specify.
  • Azure RMS の使用状況ログを構成して、組織が保護サービスをどのように使用しているかを監視できるようにします。Configure usage logging for Azure RMS so that you can monitor how your organization is using the protection service.

データ分類やファイル保護が不十分な組織は、データ漏洩やデータ誤用のリスクが高くなる可能性があります。Organizations that are weak on data classification and file protection might be more susceptible to data leakage or data misuse. 適切なファイル保護を使用すれば、データ フローを分析して、ビジネスの分析情報の取得、危険な行為の検出と是正措置の実行、ドキュメントへのアクセスの追跡などを行うことができます。With proper file protection, you can analyze data flows to gain insight into your business, detect risky behaviors and take corrective measures, track access to documents, and so on.

次のステップNext steps

Azure を使用してクラウド ソリューションを設計、デプロイ、管理するときに使用するセキュリティのベスト プラクティスの詳細については、「Azure セキュリティのベスト プラクティスとパターン」を参照してください。See Azure security best practices and patterns for more security best practices to use when you’re designing, deploying, and managing your cloud solutions by using Azure.

Azure のセキュリティとそれに関連する Microsoft サービスの一般情報については、以下のリソースを参照してください。The following resources are available to provide more general information about Azure security and related Microsoft services: