可以通过为存储帐户设置“需要安全传输”属性,将存储帐户配置为仅接受来自安全连接的请求。 要求安全传输时,来自不安全连接的任何请求都会被拒绝。 建议对所有存储帐户进行安全传输,但在某些情况下,NFS Azure 文件共享用于网络级别安全性的情况除外。
要求安全传输时,必须通过 HTTPS 调用 Azure 存储 REST API 操作。 通过 HTTP 发出的任何请求都会被拒绝。 默认情况下,创建存储帐户时,会启用“需要安全传输”属性。
Azure Policy 提供内置策略,以确保存储帐户需要安全传输。 有关详细信息,请参阅 Azure Policy 内置策略定义中的“存储”部分。
如果存储帐户需要安全传输,则在不加密的情况下通过 SMB 连接到 Azure 文件共享会失败。 不安全连接的示例包括在不加密的情况下通过 SMB 2.1 或 SMB 3.x 建立的连接。
在 Azure 门户中创建存储帐户时,可启用“需要安全传输”属性。 也可以为现有存储帐户启用该设置。
在 Azure 门户中打开“创建存储帐户”窗格。
在“高级”页上,选中“启用安全传输”复选框 。
在 Azure 门户中选择现有存储帐户。
在存储帐户菜单窗格的“设置”下,选择“配置” 。
在“需要安全传输”下,选择“启用”。
若要以编程方式要求安全传输,请在存储帐户上设置“enableHttpsTrafficOnly”属性为“真” 。 可以使用存储资源提供程序 REST API、客户端库或工具来设置此属性:
注意
建议使用 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。 若要开始,请运行 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"
...
}