Azure Resource Manager の TLS 1.2 への移行
トランスポート層セキュリティ (TLS) は、コンピューター ネットワーク経由で暗号化チャネルを確立するセキュリティ プロトコルです。 TLS 1.2 は現在の業界標準であり、Azure Resource Manager でサポートされています。 下位互換性のために、Azure Resource Manager では TLS 1.0 や 1.1 などの以前のバージョンもサポートされていますが、そのサポートは終了される予定です。
Azure で規制要件に準拠し、お客様にセキュリティの向上を提供するために、Azure Resource Manager では 2025 年 3 月1 日までに TLS 1.2 より古いプロトコルのサポートを停止します。
この記事では、古いセキュリティ プロトコルへの依存関係を削除するためのガイダンスを提供します。
TLS 1.2 に移行する理由
TLS は、悪意のあるユーザーが機密情報にアクセスできないように、インターネット経由で送信されるデータを暗号化します。 クライアントとサーバーの間では、TLS ハンドシェイクによって互いの身元の確認が行われ、これによって通信方法が決まります。 ハンドシェイク中に、各パーティで使用される TLS バージョンが識別されます。 クライアントとサーバーの両方で共通のバージョンがサポートされている場合、これらは通信できます。
TLS 1.2 は、以前のバージョンよりも安全性と速度が向上しています。
Azure Resource Manager は、Azure のデプロイおよび管理サービスです。 Azure アカウント内で Azure Resource Manager を使用して、リソースを作成、更新、削除することができます。 セキュリティを強化し、将来的なプロトコル ダウングレード攻撃を軽減するために、Azure Resource Manager では TLS 1.1 以前はサポートされなくなります。 引き続き Azure Resource Manager を使用するには、Azure を呼び出すすべてのクライアントで TLS 1.2 以降が使用されていることを確認します。
TLS 1.2 への移行を準備する
クライアントを TLS 1.2 に移行する準備をする際には、次の手順をお勧めします。
オペレーティング システムを最新バージョンに更新します。
開発ライブラリとフレームワークを最新バージョンに更新します。 たとえば、Python 3.8 では TLS 1.2 がサポートされています。
TLS 1.2 より古いセキュリティ プロトコルのハードコーディングされたインスタンスを修正します。
あなたの製品やサービスが TLS 1.2 に移行したことを、顧客やパートナーに通知します。
より詳細なガイダンスについては、お使いの環境用の古いバージョンの TLS を廃止するためのチェックリストを参照してください。
ポップ ヒント
Windows 8+ では、既定で TLS 1.2 が有効になっています。
Windows Server 2016+ では、既定で TLS 1.2 が有効になっています。
できる限り、プロトコル のバージョンをハードコーディングすることは避けてください。 代わりに、アプリケーションが常にオペレーティング システムの既定の TLS バージョンに従うように設定します。
たとえば、.NET Framework アプリケーションで
SystemDefaultTLSVersion
フラグを有効にすることで、オペレーティング システムの既定のバージョンに従うようになります。 この方法を使用することによって、アプリケーションで将来の TLS バージョンが利用できるようになります。ハードコーディングが避けられない場合は、TLS 1.2 を指定してください。
.NET Framework 4.5 以前を対象とするアプリケーションをアップグレードします。 .NET Framework 4.7 以降のバージョンでは TLS 1.2 がサポートされているため、代わりにこれらを使用するようにしてください。
たとえば、Visual Studio 2013 は TLS 1.2 をサポートしていません。 代わりに、少なくとも Visual Studio 2017 の最新リリースを使用してください。
Qualys SSL Labs を使用して、アプリケーションに接続するクライアントによって要求される TLS バージョンを特定できます。
Fiddler を使用して、HTTPS 要求を送信した際にクライアントで使用される TLS バージョンを特定できます。
次のステップ
- TLS 1.0 の問題の解決、第 2 版 – TLS 1.2 への移行についてより詳しくみていきます。
- クライアントで TLS 1.2 を有効にする方法 – Microsoft Configuration Manager 向け。
- クライアント アプリケーションのトランスポート層セキュリティ (TLS) を構成する – PowerShell で TLS バージョンを更新する手順が記載されています。
- Microsoft Entra TLS 1.1 と 1.0 の非推奨に備えてお使いの環境で TLS 1.2 のサポートを有効にする – WinHTTP の TLS バージョンをアップデートするための情報が記載されています。
- .NET Framework でのトランスポート層セキュリティ (TLS) のベスト プラクティス – .NET Framework を対象とするアプリケーションのセキュリティ プロトコルを構成する場合のベスト プラクティス。
- .NET Framework における TLS のベスト プラクティス – .NET Framework のベスト プラクティスに関する質問を投稿できる GitHub ページ。
- TLS 1.2 の PowerShell との互換性のトラブルシューティング – TLS 1.2 の互換性を確認し、PowerShell と互換性がない場合に問題を特定するためのプローブ。