Azure 存储帐户包含所有 Azure 存储数据对象:Blob、文件、队列和表。 存储帐户为你的 Azure 存储数据提供了一个唯一的命名空间,可以从世界上的任何位置通过 HTTP 或 HTTPS 访问该命名空间。 有关 Azure 存储帐户的详细信息,请参阅存储帐户概述。
每个资源管理器资源(包括 Azure 存储帐户)都必须属于某个 Azure 资源组。 资源组是对 Azure 资源进行分组的逻辑容器。 在创建存储帐户时,可以选择创建新的资源组,也可以使用现有资源组。 此操作说明显示了如何创建新资源组。
若要通过 Azure 门户创建 Azure 存储帐户,请执行以下步骤:
在左侧门户菜单中,选择“存储帐户”以显示存储帐户的列表。 如果门户菜单不可见,请单击菜单按钮将其打开。
在“存储帐户”页上,选择“创建” 。
新存储帐户的选项都被组织到“创建存储帐户”页中的各个选项卡内。 以下各部分介绍了每个选项卡及其选项。
“基本信息”选项卡
“基本信息”选项卡上提供了存储帐户的基本信息。 完成“基本信息”选项卡后,可选择设置其他选项卡上的选项来进一步自定义你的新存储帐户,也可以选择“查看 + 创建”以接受默认选项,然后继续验证并创建帐户 。
下表描述了“基本信息”选项卡上的字段。
部分 |
字段 |
必需还是可选 |
说明 |
项目详细信息 |
订阅 |
必需 |
选择新存储帐户的订阅。 |
项目详细信息 |
资源组 |
必需 |
为此存储帐户创建新的资源组,或选择现有的资源组。 有关详细信息,请参阅资源组。 |
实例详细信息 |
存储帐户名称 |
必需 |
为存储帐户选择唯一的名称。 存储帐户名称必须为 3 到 24 个字符,并且只能包含数字和小写字母。 |
实例详细信息 |
区域 |
必需 |
为存储帐户选择正确的区域。 有关详细信息,请参阅 Azure 中的区域和可用性区域。
对于所有类型的存储帐户或冗余配置,并非所有区域都受支持。 有关详细信息,请参阅 Azure 存储冗余。
区域的选择可能会对计费产生影响。 有关详细信息,请参阅存储帐户计费。 |
实例详细信息 |
性能 |
必需 |
为常规用途 v2 存储帐户选择“标准”性能(默认值)。 在大多数情况下,Azure 建议使用此类型帐户。 有关详细信息,请参阅存储帐户的类型。
对于需要低延迟的情况,请选择“高级”。 选择“高级”后,选择要创建的高级存储帐户的类型。 可以使用以下类型的高级存储帐户:
Microsoft 建议为大多数方案创建常规用途 v2、高级块 Blob 或高级文件共享帐户。 若要选择旧帐户类型,请使用“实例详细信息”下方提供的链接。 有关旧版存储帐户类型的详细信息,请参阅旧版帐户类型。 |
实例详细信息 |
冗余 |
必需 |
选择所需的冗余配置。 并非所有冗余选项都适用于所有区域中的所有存储帐户类型。 有关冗余配置的详细信息,请参阅 Azure 存储冗余。
如果选择异地冗余配置(GRS 或 GZRS),则会将数据复制到不同区域中的数据中心。 对于次要区域中数据的读取访问权限,请选择“在区域不可用的情况下,提供对数据的读取访问”。 |
下图显示了新存储帐户的基本属性的标准配置。
高级选项卡
在“高级”选项卡上,可以为新的存储帐户配置其他选项并修改默认设置。 其中的某些选项也可在创建存储帐户后进行配置,而其他选项必须在创建时配置。
下表描述了“高级”选项卡上的字段。
部分 |
字段 |
必需还是可选 |
描述 |
安全性 |
需要安全传输才能进行 REST API 操作 |
可选 |
要求使用安全传输以确保仅通过 HTTPS(默认值)发出对此存储帐户的传入请求。 推荐此设置以获取最佳安全性。 有关详细信息,请参阅要求采用安全传输以确保安全连接。 |
安全性 |
启用 Blob 公共访问 |
可选 |
启用此设置后,具有相应权限的用户可以启用对存储帐户中容器的匿名公共访问(默认值)。 禁用此设置将阻止对存储帐户进行所有匿名公共访问。 有关详细信息,请参阅阻止对容器和 Blob 的匿名公共读取访问。 启用 blob 公共访问不会使 blob 数据可供公共访问,除非用户采取额外步骤显式配置了容器的公共访问设置。 |
安全性 |
启用存储帐户密钥访问权限 |
可选 |
启用此设置后,客户端可使用帐户访问密钥或 Azure Active Directory (Azure AD) 帐户(默认值)向存储帐户授予请求。 禁用此设置将阻止使用帐户访问密钥进行授权。 有关详细信息,请参阅阻止对 Azure 存储帐户进行共享密钥授权。 |
安全性 |
最低 TLS 版本 |
必需 |
对于存储帐户的传入请求,请选择最低版本的传输层安全性 (TLS)。 默认值为 TLS 版本 1.2。 当设置为默认值时,使用 TLS 1.0 或 TLS 1.1 发出的传入请求将被拒绝。 有关详细信息,请参阅针对发送到存储帐户的请求强制实施必需的最低版本的传输层安全性 (TLS)。 |
Data Lake Storage Gen2 |
启用分层命名空间 |
可选 |
若要将此存储帐户用于 Azure Data Lake Storage Gen2 工作负载,请配置分层命名空间。 有关详细信息,请参阅 Azure Data Lake Storage Gen2 简介。 |
Blob 存储 |
启用 SFTP |
可选 |
启用安全文件传输协议 (SFTP) 以通过 Internet 安全地传输数据。 有关详细信息,请参阅 Azure Blob 存储中的安全文件传输 (SFTP) 协议支持。 |
Blob 存储 |
启用网络文件共享 (NFS) v3 |
可选 |
NFS v3 在对象存储规模上提供 Linux 文件系统兼容性,使 Linux 客户端能够从 Azure 虚拟机 (VM) 或本地计算机将容器装载在 Blob 存储中。 有关详细信息,请参阅 Azure Blob 存储中的网络文件系统 (NFS) 3.0 协议支持。 |
Blob 存储 |
访问层 |
必需 |
使用 Blob 访问层可以根据使用情况以最经济高效的方式存储 blob 数据。 对经常访问的数据选择热层(默认值)。 对不常访问的数据选择冷层。 有关详细信息,请参阅 Blob 数据的热访问层、冷访问层和存档访问层。 |
Azure 文件 |
启用大型文件共享 |
可选 |
仅适用于使用 LRS 或 ZRS 冗余的标准文件共享。 |
“网络”选项卡
在“网络”选项卡上,可以为新的存储帐户配置网络连接和路由首选项设置。 也可在创建存储帐户后配置这些选项。
下表描述了“网络”选项卡上的字段。
部分 |
字段 |
必需还是可选 |
说明 |
网络连接 |
连接方法 |
必需 |
默认情况下,传入网络流量会路由到存储帐户的公共终结点。 可以指定必须通过 Azure 虚拟网络将流量路由到公共终结点。 你还可以为你的存储帐户配置专用终结点。 有关详细信息,请参阅对 Azure 存储使用专用终结点。 |
“数据保护”选项卡
在“数据保护”选项卡上,可以为新存储帐户中的 blob 数据配置数据保护选项。 也可在创建存储帐户后配置这些选项。 有关 Azure 存储中的数据保护选项的概述,请参阅数据保护概述。
下表描述了“数据保护”选项卡上的字段。
部分 |
字段 |
必需还是可选 |
说明 |
恢复 |
为容器启用时间点还原 |
可选 |
时间点还原支持将块 blob 数据还原到之前的状态,以防止意外删除或损坏。 有关详细信息,请参阅块 blob 的时间点还原。
启用时间点还原还会启用 blob 版本控制、blob 软删除和 blob 更改源。 这些必备功能可能会对成本产生影响。 有关详细信息,请参阅时间点还原的定价和计费。 |
恢复 |
为 blob 启用软删除 |
可选 |
Blob 软删除会于指定的保持期内在系统中保留已删除的数据,以保护单个 blob、快照或版本不被意外删除或覆盖。 在保持期内,可以将软删除的对象还原到删除时的状态。 有关详细信息,请参阅 blob 软删除。
Microsoft 建议为你的存储帐户启用 blob 软删除,并将最短保持期设置为七天。 |
恢复 |
为文件共享启用软删除 |
可选 |
文件共享软删除会于指定的保持期内在系统中保留已删除的数据,以保护文件共享及其内容不被意外删除。 在保持期内,可以将软删除的文件共享还原到删除时的状态。 有关详细信息,请参阅防止意外删除 Azure 文件共享。
Azure 建议对 Azure 文件存储工作负载启用文件共享软删除,并将最短保持期设置为七天。 |
跟踪 |
为 blob 启用版本控制 |
可选 |
当覆盖 blob 时,blob 版本控制会自动保存之前版本的 blob 的状态。 有关详细信息,请参阅 Blob 版本控制。
Azure 建议为存储帐户启用 blob 版本控制以实现最佳数据保护。 |
跟踪 |
为 blob 启用更改源 |
可选 |
Blob 更改源提供存储帐户中所有 blob 及其元数据的所有更改的事务日志。 有关详细信息,请参阅 Azure Blob 存储中的更改源支持。 |
“加密”选项卡
在“加密”选项卡上,可以配置与将数据保存到云时的加密方式相关的选项。 其中一些选项只能在创建存储帐户时配置。
字段 |
必需还是可选 |
说明 |
加密类型 |
必须 |
默认情况下,使用 Microsoft 托管密钥加密存储帐户中的数据。 可以依赖于使用 Microsoft 托管的密钥来加密数据,也可以使用你自己的密钥来管理加密。 有关详细信息,请参阅静态数据的 Azure 存储加密。 |
启用对客户管理的密钥的支持 |
必需 |
默认情况下,客户管理的密钥只能用于加密 blob 和文件。 将此选项设置为“所有服务类型(blob、文件、表和队列)”,这样就可以对所有服务使用客户管理的密钥。 如果选择此选项,则不需要使用客户管理的密钥。 有关详细信息,请参阅用于 Azure 存储加密的客户管理的密钥。 |
加密密钥 |
如果“加密类型”字段设置为“客户管理的密钥”,则此项是必需的。 |
如果你选择“选择密钥保管库和密钥”,系统会提供导航到你要使用的密钥保管库和密钥的选项。 如果选择“从 URI 输入密钥”,则会显示一个用于输入密钥 URI 和订阅的字段。 |
用户分配的标识 |
如果“加密类型”字段设置为“客户管理的密钥”,则此项是必需的。 |
如果在创建存储帐户时配置客户管理的密钥,则必须提供用户分配的标识,用于授权访问密钥保管库。 |
启用基础结构加密 |
可选 |
默认情况下,未启用基础结构加密。 启用基础结构加密,可在服务级别和基础结构级别对数据进行加密。 有关详细信息,请参阅创建启用了基础结构加密的存储帐户,以便对数据进行双重加密。 |
在“标记”选项卡上,可以指定资源管理器标记以帮助整理 Azure 资源。 有关详细信息,请参阅标记资源、资源组和订阅以合理进行整理。
“查看 + 创建”选项卡
导航到“查看 + 创建”选项卡时,Azure 会对你选择的存储帐户设置运行验证。 如果验证通过,则可以继续创建存储帐户。
如果验证失败,门户将指示需要修改哪些设置。
若要使用 PowerShell 创建常规用途 v2 存储帐户,请先调用 New-AzResourceGroup 命令创建新的资源组:
$resourceGroup = "<resource-group>"
$location = "<location>"
New-AzResourceGroup -Name $resourceGroup -Location $location
如果不确定为 -Location
参数指定哪个区域,可使用 Get-AzLocation 命令检索订阅支持的区域的列表:
Get-AzLocation | select Location
接下来,使用 New-AzStorageAccount 命令通过读取访问异地冗余存储 (RA-GRS) 创建标准常规用途 v2 存储帐户。 请记住,存储帐户的名称必须在 Azure 中唯一,因此请将括号中的占位符值替换为你自己的唯一值:
New-AzStorageAccount -ResourceGroupName $resourceGroup `
-Name <account-name> `
-Location $location `
-SkuName Standard_RAGRS `
-Kind StorageV2
若要为存储帐户启用分层命名空间以使用 Azure Data Lake Storage,请在调用 New-AzStorageAccount 命令时设置 EnableHierarchicalNamespace' parameter to
$True`。
下表显示了用于 SkuName
和 Kind
参数的值,以创建具有所需冗余配置的特定类型的存储帐户。
存储帐户的类型 |
受支持的冗余配置 |
Kind 参数支持的值 |
SkuName 参数支持的值 |
支持分层命名空间 |
标准常规用途 v2 |
LRS/GRS/RA-GRS/ZRS/GZRS/RA-GZRS |
StorageV2 |
Standard_LRS/Standard_GRS/Standard_RAGRS/Standard_ZRS/Standard_GZRS/Standard_RAGZRS |
是 |
高级块 blob |
LRS |
BlockBlobStorage |
Premium_LRS |
是 |
高级文件共享 |
LRS |
FileStorage |
Premium_LRS |
否 |
高级页 Blob |
LRS |
StorageV2 |
Premium_LRS |
否 |
旧的标准常规用途 v1 |
LRS/GRS/RA-GRS |
存储 |
Standard_LRS/Standard_GRS/Standard_RAGRS |
否 |
旧的 blob 存储 |
LRS/GRS/RA-GRS |
BlobStorage |
Standard_LRS/Standard_GRS/Standard_RAGRS |
否 |
若要使用 Azure CLI 创建常规用途 v2 存储帐户,请先调用 az group create 命令创建新的资源组。
az group create \
--name storage-resource-group \
--location chinaeast2
如果不确定为 --location
参数指定哪个区域,可使用 az account list-locations 命令检索订阅支持的区域的列表。
az account list-locations \
--query "[].{Region:name}" \
--out table
接下来,使用 az storage account create 命令通过读取访问异地冗余存储创建标准常规用途 v2 存储帐户。 请记住,存储帐户的名称必须在 Azure 中唯一,因此请将括号中的占位符值替换为你自己的唯一值:
az storage account create \
--name <account-name> \
--resource-group storage-resource-group \
--location chinaeast2 \
--sku Standard_RAGRS \
--kind StorageV2
若要为存储帐户启用分层命名空间以使用 Azure Data Lake Storage,请在调用 az storage account create 命令时将 enable-hierarchical-namespace
参数设置为 true
。 创建分层命名空间需要 Azure CLI 2.0.79 或更高版本。
下表显示了用于 sku
和 kind
参数的值,以创建具有所需冗余配置的特定类型的存储帐户。
存储帐户的类型 |
受支持的冗余配置 |
kind 参数支持的值 |
sku 参数支持的值 |
支持分层命名空间 |
标准常规用途 v2 |
LRS/GRS/RA-GRS/ZRS/GZRS/RA-GZRS |
StorageV2 |
Standard_LRS/Standard_GRS/Standard_RAGRS/Standard_ZRS/Standard_GZRS/Standard_RAGZRS |
是 |
高级块 blob |
LRS |
BlockBlobStorage |
Premium_LRS |
是 |
高级文件共享 |
LRS |
FileStorage |
Premium_LRS |
否 |
高级页 Blob |
LRS |
StorageV2 |
Premium_LRS |
否 |
旧的标准常规用途 v1 |
LRS/GRS/RA-GRS |
存储 |
Standard_LRS/Standard_GRS/Standard_RAGRS |
否 |
旧的 blob 存储 |
LRS/GRS/RA-GRS |
BlobStorage |
Standard_LRS/Standard_GRS/Standard_RAGRS |
否 |
可以使用 Azure PowerShell 或 Azure CLI 来部署 Bicep 文件以创建存储帐户。 本操作指南文章中使用的 Bicep 文件来自 Azure 资源管理器快速入门模板。 Bicep 目前不支持部署远程文件。 将 Bicep 文件下载并保存到本地计算机,然后运行脚本。
$resourceGroupName = Read-Host -Prompt "Enter the Resource Group name"
$location = Read-Host -Prompt "Enter the location (i.e. chinaeast2)"
New-AzResourceGroup -Name $resourceGroupName -Location "$location"
New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateFile "main.bicep"
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
echo "Enter the location (i.e. chinaeast2):" &&
read location &&
az group create --name $resourceGroupName --location "$location" &&
az deployment group create --resource-group $resourceGroupName --template-file "main.bicep"
注意
此 Bicep 文件仅用作示例。 有许多存储帐户设置未在此 Bicep 文件中进行配置。 例如,如果想要使用 Data Lake Storage,可将 StorageAccountPropertiesCreateParameters
对象的 isHnsEnabled
属性设为 true
来修改此 Bicep 文件。
若要了解如何修改此 Bicep 文件或创建新 Bicep 文件,请参阅:
可以使用 Azure PowerShell 或 Azure CLI 来部署资源管理器模板以创建存储帐户。 本操作指南文章中使用的模板来自 Azure 资源管理器快速入门模板。
$resourceGroupName = Read-Host -Prompt "Enter the Resource Group name"
$location = Read-Host -Prompt "Enter the location (i.e. chinaeast2)"
New-AzResourceGroup -Name $resourceGroupName -Location "$location"
New-AzResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateUri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json"
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
echo "Enter the location (i.e. chinaeast2):" &&
read location &&
az group create --name $resourceGroupName --location "$location" &&
az deployment group create --resource-group $resourceGroupName --template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/quickstarts/microsoft.storage/storage-account-create/azuredeploy.json"
注意
此模板仅用作示例。 有许多存储帐户设置未在此模板中进行配置。 例如,如果想要使用 Data Lake Storage,可将 StorageAccountPropertiesCreateParameters
对象的 isHnsEnabled
属性设为 true
来修改此模板。
若要了解如何修改此模板或创建新模板,请参阅:
若要删除存储帐户,请使用 Remove-AzStorageAccount 命令:
Remove-AzStorageAccount -Name <storage-account> -ResourceGroupName <resource-group>
若要删除存储帐户,请使用 az storage account delete 命令:
az storage account delete --name <storage-account> --resource-group <resource-group>
若要删除存储帐户,请使用 Azure PowerShell 或 Azure CLI。
$storageResourceGroupName = Read-Host -Prompt "Enter the resource group name"
$storageAccountName = Read-Host -Prompt "Enter the storage account name"
Remove-AzStorageAccount -Name $storageAccountName -ResourceGroupName $storageResourceGroupName
echo "Enter the resource group name:" &&
read resourceGroupName &&
echo "Enter the storage account name:" &&
read storageAccountName &&
az storage account delete --name storageAccountName --resource-group resourceGroupName
若要删除存储帐户,请使用 Azure PowerShell 或 Azure CLI。
$storageResourceGroupName = Read-Host -Prompt "Enter the resource group name"
$storageAccountName = Read-Host -Prompt "Enter the storage account name"
Remove-AzStorageAccount -Name $storageAccountName -ResourceGroupName $storageResourceGroupName
echo "Enter the resource group name:" &&
read resourceGroupName &&
echo "Enter the storage account name:" &&
read storageAccountName &&
az storage account delete --name storageAccountName --resource-group resourceGroupName