在 Azure 存储中需要安全传输

“需要安全传输”选项通过仅允许来自安全连接的帐户请求,增强存储帐户安全性。 例如,在调用 REST API 访问存储帐户时,必须使用 HTTPS 进行连接。 “需要安全传输”拒绝使用 HTTP 的请求。

使用 Azure 文件服务时,如果启用了“需要安全传输”,任何未加密的连接都会失败。 这包括使用 SMB 2.1、未加密的 SMB 3.0 以及某些版本的 Linux SMB 客户端的方案。

默认情况下,将禁用“需要安全传输”选项。

Note

由于 Azure 存储对自定义域名不支持 HTTPS,因此使用自定义域名时不应用此选项。 不支持经典存储帐户。

在 Azure 门户中启用“需要安全传输”

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

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

  1. 在 Azure 门户中打开“创建存储帐户”窗格。
  2. 在“需要安全传输”下,选择“启用”。

    “创建存储帐户”边栏选项卡

对现有存储帐户需要安全传输

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

    “存储帐户”菜单窗格

以编程方式启用“需要安全传输”

若要以编程方式启用“需要安全传输”,请通过 REST API、工具或库使用存储帐户属性中的 supportsHttpsTrafficOnly 设置:

使用 PowerShell 启用“需要安全传输”设置

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

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

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

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

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

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

使用 CLI 启用“需要安全传输”设置

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

Note

在运行 az login 之前,请先运行 az cloud set -n AzureChinaCloud 以更改云环境。 如果要切换回全球 Azure,请再次运行 az cloud set -n AzureCloud

此示例在 Bash shell 中正常工作。 有关在 Windows 客户端上运行 Azure CLI 脚本的选项,请参阅在 Windows 上安装 Azure CLI

如果没有 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"
  ...
}

后续步骤

Azure 存储提供一整套安全功能,这些功能相辅相成,可让开发人员共同构建安全的应用程序。 有关详细信息,请转到存储安全指南