Azure Storage 系列(八)存储类型细化分类说明

发布时间 2023-08-30 11:05:13作者: Grant_Allen

一,引言

  Azure 存储账户功能经过官方改进迭代后,在创建的时候,存储账户的类型被分为两大类:

  1)general-purpose v2 account(标准常规用途v2)

    Blob 存储,队列存储,表存储,Azure File存储

  2)Premium

    1,Blob 存储:包含 块存储 & 追加存储,用于事务率较高的方案

    2,Azure File 存储:仅适用于文件共享的高级存储帐户类型。

    3,Page Blob:正如名字所示,仅用于 页Blob 的高级存储

接下来,就让我们详细的学习一下其中的差异

二,正文

1,存储账户类型(所有的存储账户类型都通过使用存储服务加密服务(SSE)对静态数据加密)

存储帐户支持的服务建议用途
标准常规用途v2 Blob 存储(包括 Data Lake Storage)、队列存储、表存储和 Azure 文件存储 大多数方案的标准存储帐户,包括 blob、文件共享、队列、表和磁盘(页 blob)。
高级块blob Blob 存储(包括 Data Lake Storage) 块 blob 和追加 blob 的高级存储帐户。 建议用于事务速率较高的应用程序。 如果处理较小的对象或需要持续较低的存储延迟,请使用高级块 blob。 此存储可根据应用程序的需求缩放。
高级文件共享 Azure 文件 仅适用于文件存储的高级存储帐户。 建议用于企业级应用程序或高性能级应用程序。 如果需要支持服务器消息块 (SMB) 和 NFS 文件共享,请使用高级文件共享。
高级页blob 仅页 Blob          

高级高性能存储帐户仅

用于页 blob。 页 blob 非常适合用于存储基于索引的结构和稀疏数据结构,例如操作系统、虚拟机和数据库的数据磁盘。

注意:

  1,创建存储帐户后,该帐户类型不能进行修改。 

  2,常规用途类型的  Azure File 存储只支持服务器消息块 SMB 类型的文件共享,如果想要在 Azure File 存储中支持网络文件系统 (NFS),还请选择 高级文件共享。

  3,Page Blob 只能使用 “热”访问层,不能使用 “冷” 或者 “存档层”

  4,将 Blob 的层从“热”访问层更改为“冷”层是即时的,从 “冷” 层或 “寒” 层更改为 ”热“ 层也是即时的。 将 Blob 从存档层解除冻结到联机层(如热层、冷层或寒层)可能需要长达 15 个小时。

2,Azure Storage Account 的安全存储策略

  1,加密:写入 Azure 存储的所有数据都使用 Azure 存储加密自动加密。

  2,身份验证:Azure 存储支持使用 Azure Active Directory (Azure AD) 和基于角色的访问控制 (RBAC) 进行资源管理操作和数据操作。

    •   将作用域为 Azure 存储帐户的 RBAC 角色分配给安全主体,并使用 Azure AD 为密钥管理之类的资源管理操作授权。
    •   支持通过 Azure AD 集成在 Azure Blob 存储和 Azure 队列存储上执行数据操作。

  3,传输中的数据:在应用程序和 Azure 之间传输数据时,可以使用客户端加密、HTTPS 或 SMB 3.0 来保护数据。

  4,磁盘加密:可以使用 Azure 磁盘加密对 Azure 虚拟机使用的操作系统磁盘和数据磁盘进行加密。

  5,共享访问签名:共享访问签名 (SAS) 是一种统一资源标识符 (URI),可授予对 Azure 存储资源的受限访问权限。 SAS 可安全地共享存储                      资源,而不会危及帐户密钥。可向不该有权访问你的存储帐户密钥的客户端提供 SAS。 通过向这些客户端分发 SAS URI,可授予它们在          一段指定时间内访问资源的权限。

使用授权安全性时的注意事项

授权策略说明
Azure Active Directory Azure AD 是 Microsoft 基于云的标识和访问管理服务。 借助 Azure AD,你可以使用基于角色的访问控制向用户、组或应用程序分配细粒度访问权限。
共享密钥 共享密钥授权依赖于 Azure 存储帐户访问密钥和其他参数来生成加密的签名字符串。 该字符串在授权标头中的请求上传递。
共享访问签名 SAS 以指定的权限在指定的时间间隔内委托对 Azure 存储帐户中特定资源的访问权限。
对容器和 blob 的匿名访问 可选择在容器或 Blob 级别公开 Blob 资源。 任何用户都可访问公共容器或 Blob 来实现匿名读取访问。 针对公共容器和 blob 的读取请求不需要授权。

3,Azure 存储加密特征

Azure Storage Account 的存储加密主要用于静态数据的 Azure 存储加密可提供数据保护,确保满足组织的安全性和合规性承诺。 加密和解密过程会自动执行。 数据默认受保护,因此无需修改代码或应用程序。

  • 在将数据永久性保存到 Azure 托管磁盘、Azure Blob 存储、Azure 队列存储、Azure Cosmos DB、Azure 表存储或 Azure 文件存储之前,数据会自动加密。

  • 检索数据之前,会自动对其进行解密。

  • Azure 存储加密、静态加密、解密和密钥管理对用户来说都是透明的。

  • 写入 Azure 存储的所有数据均通过 256 位高级加密标准 (AES) 加密进行加密。 AES 是可用的最强分组加密技术之一。

  • Azure 存储加密会针对所有新的和现有的存储帐户启用,并且不能禁用。

4,Azure Storage Accunt 存储类型的选择

Azure 文件存储(文件共享)Azure Blob 存储 (blob)Azure 磁盘(页 blob)
Azure 文件存储提供 SMB 和 NFS 协议、客户端库和 REST 接口,允许从任何位置访问存储的文件。 Azure Blob 存储提供客户端库和 REST 接口,以便在块 blob 中大规模存储和访问非结构化数据。 Azure 磁盘类似于 Azure Blob 存储。 Azure 磁盘提供 REST 接口,用于在页 blob 中存储和访问基于索引或结构化的数据。
- Azure 文件存储共享中的文件是真正的 Directory 对象。
- 通过跨多个虚拟机的文件共享访问 Azure 文件存储中的数据。
- Azure Blob 存储中的 blob 是平面命名空间。
- 通过容器访问 Azure Blob 存储中的 blob 数据。
- Azure 磁盘中的页 blob 被存储为 512 字节页。
- 页 blob 数据仅限于单个虚拟机。
Azure 文件存储非常适合将应用程序直接迁移到已使用本机文件系统 API 的云。 在 Azure 中运行的应用和其他应用程序之间共享数据。

如果要存储需要从许多虚拟机访问的开发和调试工具,Azure 文件存储是一个不错的选择。
Azure Blob 存储非常适合需要支持流式处理和随机访问方案的应用程序。

如果要从任意位置访问应用程序数据,Azure Blob 存储是一个不错的选择。
当应用程序运行频繁的随机读/写操作时,Azure 磁盘解决方案将是理想之选。

如果要在 Azure 虚拟机和数据库中存储操作系统和数据磁盘的关系数据,Azure 磁盘是一个不错的选择。

重点:Azure 文件存储共享时的注意事项

  1)打开端口 445。 Azure 文件使用 SMB 协议。 SMB 通过 TCP 端口 445 通信。 确保端口 445 处于打开状态。

  2)启用安全传输。 使用 REST API 访问存储帐户的情况。 如果连接,并且启用了所需的安全传输,则必须使用 HTTPS 进行连接。

Azure Blob 中的 Conatiner 下是创建文件夹

1,可以通过可视化工具 “Azure Storage Explorer ” 进行操作

2,可以通过代码集成 SDK 进行操作

下载链接:使用 Azure 存储资源管理器创建 blob

三,结尾

  大家需要注意的是,Azure 存储帐户包含所有 Azure 存储数据对象:Blob、文件、队列和表。 存储帐户为 Azure 存储数据提供一个唯一的命名空间,可通过 HTTP 或 HTTPS 从世界上的任何位置访问该数据。 Azure 存储帐户中的数据持久,高度可用、安全且可大规模缩放。而Azure Blob 存储是 Microsoft 提供的适用于云的对象存储解决方案。 Blob 存储最适合存储巨量的非结构化数据。

作者:Allen 

版权:转载请在文章明显位置注明作者及出处。如发现错误,欢迎批评指正。