この記事では、Microsoft Azure の暗号化の概要について説明します。 保存データの暗号化、転送中のデータの暗号化、Azure Key Vault を使用したキー管理など、暗号化の主な項目について説明します。
保存データの暗号化
保存データには、物理メディア上の永続的ストレージに存在する、あらゆるデジタル形式の情報が含まれます。 Microsoft Azure では、さまざまなニーズに応えるために、ファイル、ディスク、BLOB、テーブル ストレージなど、多様なデータ ストレージ ソリューションをご用意しています。 Microsoft は、Azure SQL Database、Azure Cosmos DB、Azure Data Lake を保護する暗号化の機能も提供しています。
AES 256 暗号化を使用すると、サービスとしてのソフトウェア (SaaS)、サービスとしてのプラットフォーム (PaaS)、サービスとしてのインフラストラクチャ (IaaS) クラウド モデル全体のサービスの保存データを保護できます。
Azure が保存データを暗号化する方法の詳細については、「保存時の Azure Data Encryption」を参照してください。
Azure の暗号化モデル
Azure では、サービスが管理するキー、Key Vault でユーザーが管理するキー、またはユーザーが制御するハードウェア上でユーザーが管理するキーを使用したサーバー側暗号化など、さまざまな暗号化モデルがサポートされています。 クライアント側の暗号化を使用すると、キーをオンプレミスまたは別の安全な場所で管理および格納できます。
クライアント側暗号化
Azure の外部でクライアント側の暗号化を実行します。 次の情報が含まれます。
- データセンターで実行されているアプリケーションまたはサービス アプリケーションによって暗号化されたデータ
- Azure が受信したときに既に暗号化されているデータ
クライアント側の暗号化を使用すると、クラウド サービス プロバイダーは暗号化キーにアクセスできないため、このデータの暗号化を解除できません。 ユーザーがキーを完全に制御して保持します。
サーバー側暗号化
3 つのサーバー側暗号化モデルでは、異なるキー管理特性が提供されます。
- サービスが管理するキー: オーバーヘッドを軽減しながら、利便性を損なわずに制御できます。
- ユーザーが管理するキー: Bring Your Own Key (BYOK) などでキーを制御したり、新しいキーを生成したりできます。
- 顧客が管理するハードウェアのサービス管理キー: Microsoft の管理の外部 (Host Your Own Key または HYOK とも呼ばれます) の外部で、独自のリポジトリ内のキーを管理できます。
Azure Disk Encryption
Important
Azure Disk Encryption は、 2028 年 9 月 15 日に廃止される予定です。 その日まで、中断することなく Azure Disk Encryption を引き続き使用できます。 2028 年 9 月 15 日に、ADE 対応ワークロードは引き続き実行されますが、暗号化されたディスクは VM の再起動後にロック解除に失敗し、サービスが中断されます。
新しい VM の ホストで暗号化 を使用します。 サービスの中断を回避するために、すべての ADE 対応 VM (バックアップを含む) を提供終了日より前にホストで暗号化に移行する必要があります。 詳細については、「 Azure Disk Encryption からホストでの暗号化への移行 」を参照してください。
すべてのマネージド ディスク、スナップショット、イメージは、サービスマネージド キーを使用して Storage Service Encryption を使用して既定で暗号化されます。 仮想マシンの場合、ホストでの暗号化では、一時ディスクや OS/データ ディスク キャッシュなど、VM データのエンドツーエンドの暗号化が提供されます。 Azure には、Azure Key Vault でキーを管理するためのオプションも用意されています。 詳細については、「マネージド ディスク暗号化オプションの概要」を参照してください。
Azure Storage サービス暗号化
サーバー側とクライアント側の両方のシナリオで、Azure Blob Storage と Azure ファイル共有の保存データを暗号化できます。
Azure Storage Service Encryption (SSE) は、格納される前にデータを自動的に暗号化し、データを取得するときに自動的に暗号化を解除します。 Storage Service Encryption では、使用可能な最も強力なブロック暗号の 1 つである 256 ビット AES 暗号化が使用されます。
Azure SQL Database の暗号化
Azure SQL Database は、リレーショナル データ、JSON、空間、XML などの構造をサポートする汎用リレーショナル データベース サービスです。 SQL Database では、Transparent Data Encryption (TDE) 機能によるサーバー側の暗号化と、Always Encrypted 機能を使用したクライアント側の暗号化の両方がサポートされています。
Transparent Data Encryption
TDE は、データベース暗号化キー (DEK) を使用して、 SQL Server、 Azure SQL Database、 Azure Synapse Analytics のデータ ファイルをリアルタイムで暗号化します。 TDE は、新しく作成された Azure SQL データベースで既定で有効になっています。
常に暗号化されています
Azure SQL の Always Encrypted 機能を使用すると、Azure SQL Database に格納する前にクライアント アプリケーション内のデータを暗号化できます。 データを所有し、表示できるユーザーとデータを管理できるユーザーの間で分離を維持しながら、オンプレミスのデータベース管理をサード パーティに委任できます。
セル レベルまたは列レベルの暗号化
Azure SQL Database では、Transact-SQL を使用してデータの列に対称暗号化を適用できます。 この方法は 、セル レベルの暗号化または列レベルの暗号化 (CLE) と呼ばれます。これは、異なる暗号化キーを持つ特定の列またはセルを暗号化するために使用できるためです。 この方法では、TDE よりも詳細な暗号化機能が提供されます。
Azure Cosmos DB データベースの暗号化
Azure Cosmos DB は、Microsoft のグローバル分散型マルチモデル データベースです。 非揮発性ストレージ (ソリッド ステート ドライブ) 内の Azure Cosmos DB に格納されているユーザー データは、サービスマネージド キーを使用して既定で暗号化されます。 カスタマー マネージド キー (CMK) 機能を使用して、独自のキーを使用して 2 つ目の暗号化レイヤーを追加できます。
Azure Data Lake における保存データの暗号化
Azure Data Lake は、要件やスキーマが正式に定義される前に 1 か所に収集されたあらゆる種類のデータの、エンタープライズ規模のリポジトリです。 Data Lake Store では、保存時の透過的な暗号化がサポートされており、これはアカウントの作成時に設定され、デフォルトで有効になっています。 既定では、Azure Data Lake Store によってキーが管理されますが、自分で管理することもできます。
マスター暗号化キー (MEK)、データ暗号化キー (DEK)、ブロック暗号化キー (BEK) という 3 種類のキーが、データの暗号化と暗号化の解除に使用されます。 MEK は永続的メディアに格納される DEK を暗号化し、BEK は DEK とデータ ブロックから派生します。 独自のキーを管理する場合は、MEK をローテーションできます。
転送中のデータの暗号化
Azure には、ある場所から別の場所に移動する際にデータをプライベートに保つための多くのメカニズムが用意されています。
データ リンクレイヤーの暗号化
Azure のお客様のトラフィックがデータセンター間 (Microsoft によって制御されていない物理的な境界外) 間を移動するたびに、 IEEE 802.1AE MAC セキュリティ標準 (MACsec とも呼ばれます) を使用したデータ リンク層暗号化方法が、基になるネットワーク ハードウェア全体のポイントツーポイントから適用されます。 デバイスは、パケットを送信する前に暗号化します。これにより、物理的な "man-in-the-middle" 攻撃やスヌーピング/盗聴攻撃を防ぐことができます。 この MACsec 暗号化は、リージョン内またはリージョン間を移動するすべての Azure トラフィックに対して、既定でオンになっています。
TLS 暗号化
Microsoft では、クラウド サービスとお客様の間を移動するときに 、トランスポート層セキュリティ (TLS) プロトコルを使用してデータを保護する機能を提供しています。 Microsoft のデータ センターは、Azure サービスに接続するクライアント システムとの TLS 接続をネゴシエートします。 TLS により、強力な認証、メッセージのプライバシー、整合性が提供されます。
Important
Azure は、Azure サービスへのすべての接続に TLS 1.2 以降を要求するように移行しています。 ほとんどの Azure サービスは、2025 年 8 月 31 日までにこの移行を完了しました。 アプリケーションで TLS 1.2 以降が使用されていることを確認します。
Perfect Forward Secrecy (PFS) は、顧客のクライアント システムと Microsoft クラウド サービス間の接続を一意のキーで保護します。 接続では、RSA ベースの 2,048 ビット キー長、ECC 256 ビット キーの長さ、SHA-384 メッセージ認証、および AES-256 データ暗号化がサポートされます。
Azure Storage トランザクション
Azure Portal で Azure Storage を操作する際は、すべてのトランザクションが HTTPS 経由で行われます。 HTTPS 経由で Storage REST API を使用して Azure Storage を操作することもできます。 ストレージ アカウントの安全な転送要件を有効にすることで、REST API を呼び出すときに HTTPS の使用を強制できます。
Azure Storage オブジェクトへのアクセスの委任に使用できる Shared Access Signature (SAS) には、HTTPS プロトコルのみを使用できるように指定するオプションが含まれています。
SMB 暗号化
Azure Files 共有へのアクセスに使用される SMB 3.0 は暗号化をサポートしており、Windows Server 2012 R2、Windows 8、Windows 8.1、および Windows 10 で使用できます。 デスクトップでのリージョン間アクセスとアクセスをサポートします。
VPN 暗号化
ネットワーク経由で送信されるデータのプライバシーを保護するためのセキュリティで保護されたトンネルを作成する仮想プライベート ネットワークを介して Azure に接続できます。
Azure VPN Gateway
Azure VPN ゲートウェイ は、パブリック接続を介して、または仮想ネットワーク間で、仮想ネットワークとオンプレミスの場所の間で暗号化されたトラフィックを送信します。 サイト間 VPN は、転送の暗号化に IPsec を使用します。
ポイント対サイト VPN
ポイント対サイト VPN は、個々のクライアント コンピューターが Azure 仮想ネットワークにアクセスできるようにします。 Secure Socket Tunneling Protocol (SSTP) によって VPN トンネルが作成されます。 詳細については、「 仮想ネットワークへのポイント対サイト接続を構成する」を参照してください。
サイト間 VPN
サイト間 VPN ゲートウェイ接続は、IPsec/IKE VPN トンネル経由でオンプレミス ネットワークを Azure 仮想ネットワークに接続します。 詳細については、「 サイト間接続の作成」を参照してください。
Key Vault のキー管理
キーの適切な保護と管理がなければ、暗号化は役に立ちません。 Azure には、Azure Key Vault、Azure Key Vault Managed HSM、Azure Cloud HSM、Azure Payment HSM など、いくつかのキー管理ソリューションが用意されています。
Key Vault を使用すると、ハードウェア セキュリティ モジュール (HSM) とキー管理ソフトウェアの構成、修正プログラムの適用、保守を行う必要がなくなります。 Key Vault を使用すると、制御を維持できます。Microsoft はキーを見ることはなく、アプリケーションはキーに直接アクセスできません。 キーを HSM にインポートしたり生成したりすることもできます。
Azure でのキー管理の詳細については、「Azure でのキー管理」を参照してください。