你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

授权请求Azure 存储

对 Blob、文件、队列或表服务中安全资源提出的每个请求都必须获得授权。 授权可确保存储帐户中的资源仅在你想要访问时可访问,并且仅可供你授予访问权限的用户或应用程序访问。

下表介绍了多个选项,Azure 存储提供这些选项,用于授权对资源的访问:

Azure 项目 共享密钥(存储帐户密钥) 共享访问签名 (SAS) Azure Active Directory (Azure AD) 本地 Active Directory 域服务 匿名公共读取访问权限
Azure Blob 支持 支持 支持 不支持 支持
Azure 文件存储 (SMB) 支持 不支持 仅支持 AAD 域服务 支持,凭据必须同步到 Azure AD 不支持
Azure 文件存储 (REST) 支持 支持 不支持 不支持 不支持
Azure 队列 支持 支持 支持 不支持 不支持
Azure 表 支持 支持 支持 不支持 不支持

下面简要介绍每个授权选项:

  • Azure Active Directory (Azure AD) :Azure AD Microsoft 基于云的标识和访问管理服务。 Azure AD Blob、队列和表服务提供集成。 使用 Azure AD,可以通过基于角色的访问控制和 RBAC 管理,为用户、组或应用程序分配 (访问权限) 。 有关与 Azure AD 集成Azure 存储,请参阅使用 Azure Active Directory 授权

  • Azure Active Directory域服务 (Azure AD DS) 域服务 Azure 文件存储。 Azure 文件存储支持通过 Azure AD DS 使用服务器消息块 (SMB) 进行基于标识的授权。 可以使用 RBAC 精细控制客户端对存储帐户中Azure 文件存储资源的访问权限。 有关使用域服务Azure 文件存储身份验证的信息,请参阅Azure 文件存储 标识的授权

  • Active Directory (AD) 授权 Azure 文件存储。 Azure 文件存储通过 AD 通过 SMB 支持基于标识的授权。 AD 域服务可以托管在本地计算机或 Azure VM 中。 支持在本地或 Azure 中通过已加入域的计算机使用 AD 凭据对文件进行 SMB 访问。 可以使用 RBAC 进行共享级别访问控制,使用 NTFS DACL 强制执行目录和文件级别权限。 有关使用域服务Azure 文件存储身份验证的信息,请参阅Azure 文件存储 标识的授权

  • 共享密钥: 共享密钥授权依赖于帐户访问密钥和其他参数来生成在 Authorization 标头中的请求上传递的加密 签名 字符串。 有关共享密钥授权的信息,请参阅 使用共享密钥 进行授权

  • 共享访问签名: 共享访问签名 (SAS) 以指定的权限和指定的时间间隔委托对帐户中特定资源的访问权限。 有关 SAS 详细信息,请参阅 使用共享访问签名 委托访问权限

  • 匿名访问容器和 Blob: 可以选择在容器或 Blob 级别公开 Blob 资源。 任何用户都可以访问公共容器或 blob 进行匿名读取访问。 对公共容器和 Blob 的读取请求不需要授权。 有关详细信息,请参阅为 Azure Blob 存储中的容器和 Blob 启用公共读取访问

提示

与其他授权选项Azure AD身份验证和授权访问 blob、队列和表数据。 例如,通过使用 Azure AD,可以避免将帐户访问密钥与代码一起存储,就像使用共享密钥授权一样。 虽然你可以继续将共享密钥授权用于 Blob 和队列应用程序,但 Microsoft 建议尽可能Azure AD共享密钥授权。

同样,你可以继续使用共享访问签名 (SAS) 授予对存储帐户中的资源的精细访问权限,但 Azure AD 提供了类似的功能,并且不需要管理 SAS 令牌,也不需要担心吊销已泄露的 SAS。

有关 azure 中Azure AD集成Azure 存储,请参阅使用 Azure Active Directory 授予对Azure blob 和队列Azure Active Directory。