説明
supportsHttpsTrafficOnly が無効な Storage Account では、HTTP によるストレージ REST 要求が許可される場合があります。クライアントが実際に HTTP を使うと、通信中のデータや SAS トークンなどが露出するおそれがあります。HTTPS、保存時の暗号化、アクセス権限は別の制御です。
想定される影響
- 平文で送信したファイル、要求情報、トークンが通信経路で閲覧・改ざんされるおそれがあります。
- 安全な転送を必須にした後、古い HTTP クライアントを更新していないと処理が失敗する場合があります。
対処方法
supportsHttpsTrafficOnly を true にし、アプリケーション、バックアップツール、スクリプトが最初から HTTPS を使うよう変更してください。TLS 証明書の検証を維持し、HTTP の拒否と HTTPS の成功をテストしてください。SMB・NFS などを使う場合は、そのサービスの暗号化と互換性の要件も別途確認してください。
例
同じストレージアカウントの転送設定を比較する抜粋です。実際の一意な名前、場所、SKU、アカウントの種類など、その他の必要な入力は別途構成してください。
変更前
bicep
resource storageaccount1 'Microsoft.Storage/storageAccounts@2021-02-01' = {
name: 'storageaccount1'
properties: {
supportsHttpsTrafficOnly: false
}
}
HTTPS を必須にする設定を無効にします。すべてのクライアントが平文を使うという意味ではありませんが、この制御では HTTP 要求を防げません。
変更後
bicep
resource storageaccount1Negative1 'Microsoft.Storage/storageAccounts@2021-02-01' = {
name: 'storageaccount1'
properties: {
supportsHttpsTrafficOnly: true
}
}
ストレージ REST 要求に HTTPS を必須とします。クライアントが既に平文で送った要求を、後から暗号化するものではありません。