需要安全传输以确保安全连接

可以通过为存储帐户设置“需要安全传输”属性,将存储帐户配置为仅接受来自安全连接的请求。 要求安全传输时,来自不安全连接的任何请求都会被拒绝。 建议对所有存储帐户进行安全传输。

要求安全传输时,必须通过 HTTPS 调用 Azure 存储 REST API 操作。 通过 HTTP 发出的任何请求都会被拒绝。 默认情况下,创建存储帐户时,会启用“需要安全传输”属性。

Azure Policy 提供内置策略,以确保您的存储帐户要求使用安全传输。 有关详细信息,请参阅 Azure Policy 内置策略定义中的“存储”部分。

对于Azure 文件存储,现在可以使用各自的每个协议安全设置独立控制 SMB 和 NFS 加密要求。 启用传输过程中要求加密时,“安全传输是必需的”属性仅适用于 Azure 文件共享的 REST/HTTPS 流量。 对于通过 Azure 门户创建的新存储帐户,要求传输中加密 对于 SMB 和 NFS,默认为启用。 使用 Azure PowerShell、Azure CLI 或 FileREST API 创建的存储帐户最初将这些值设置为未选择以确保向后兼容。

如果存储帐户需要安全传输,则在不加密的情况下通过 SMB 连接到 Azure 文件共享会失败。 不安全连接的示例包括在不加密的情况下通过 SMB 2.1 或 SMB 3.x 建立的连接。

需要在 Azure 门户中进行安全传输

在 Azure 门户中创建存储帐户时,可启用“需要安全传输”属性。 也可以为现有存储帐户启用该设置。

新的存储帐户需要安全传输

  1. 登录到 Azure 门户,转到 Storage 帐户。 选择 + 新建。

  2. 在“ 高级 ”选项卡上的“ 安全性”下,选中“ 需要安全传输 REST API 操作 ”复选框。

    “创建存储帐户高级”选项卡

要求对已存在的存储帐户进行安全传输

  1. 在 Azure 门户中选择现有存储帐户。
  2. 在服务菜单中的 “设置”下,选择“ 配置”。
  3. 在“需要安全传输”下,选择“启用”。
  4. 选择“保存”。

在代码中要求安全传输

若要以编程方式要求安全传输,请在存储帐户上设置“enableHttpsTrafficOnly”属性为“真” 。 可以使用存储资源提供程序 REST API、客户端库或工具来设置此属性:

要求通过 PowerShell 进行安全传输

注意

建议使用 Azure Az PowerShell 模块与 Azure 交互。 请参阅安装 Azure PowerShell 以开始使用。 若要了解如何迁移到 Az PowerShell 模块,请参阅 将 Azure PowerShell 从 AzureRM 迁移到 Az。

本示例需要 Azure PowerShell 模块 Az 0.7 或更高版本。 运行 Get-Module -ListAvailable Az 即可查找版本。 如果需要进行安装或升级,请参阅安装 Azure PowerShell 模块。

运行 Connect-AzAccount -Environment AzureChinaCloud,创建与 Azure 的连接。

使用以下命令行检查该设置:

Get-AzStorageAccount -Name "{StorageAccountName}" -ResourceGroupName "{ResourceGroupName}"
StorageAccountName     : {StorageAccountName}
Kind                   : Storage
EnableHttpsTrafficOnly : False
...

使用以下命令行启用该设置:

Set-AzStorageAccount -Name "{StorageAccountName}" -ResourceGroupName "{ResourceGroupName}" -EnableHttpsTrafficOnly $True
StorageAccountName     : {StorageAccountName}
Kind                   : Storage
EnableHttpsTrafficOnly : True
...

要求通过 Azure CLI 进行安全传输

若要运行此示例,请安装最新版本的 Azure CLI。 若要开始,请运行 az login 以创建与 Azure 的连接。

适用于 Azure CLI 的示例是针对 bash shell 编写的。 若要在 Windows PowerShell 或命令提示符中运行此示例,可能需要更改脚本的元素。

如果没有 Azure 试用版订阅,请在开始前创建一个试用版订阅。

使用以下命令检查该设置:

az storage account show -g {ResourceGroupName} -n {StorageAccountName}
{
  "name": "{StorageAccountName}",
  "enableHttpsTrafficOnly": false,
  "type": "Microsoft.Storage/storageAccounts"
  ...
}

使用以下命令启用该设置:

az storage account update -g {ResourceGroupName} -n {StorageAccountName} --https-only true
{
  "name": "{StorageAccountName}",
  "enableHttpsTrafficOnly": true,
  "type": "Microsoft.Storage/storageAccounts"
  ...
}

后续步骤

适用于 Blob 存储的安全建议