【问题标题】:Authenticating with azure storage account without using primary or secondary keys在不使用主键或辅助键的情况下使用 azure 存储帐户进行身份验证
【发布时间】:2020-07-17 23:20:12
【问题描述】:

据我了解,Azure 存储帐户有两种类型的 SAS 令牌。

  1. 帐户级 SAS 令牌
  2. Blob 容器/队列级 SAS 令牌

我观察到,如果我们不选择使用主/辅助密钥对存储帐户进行身份验证并使用帐户级别 SAS 令牌作为身份验证机制,那么我无法使用存储访问签名创建 Blob 容器级别 SAS 令牌.这是为什么?有没有办法让它工作?我不想提供对帐户级密钥的服务的访问权限,并且想创建 SAS 令牌以在运行时实现 RBAC,有什么办法吗?

【问题讨论】:

    标签: azure azure-storage azure-blob-storage


    【解决方案1】:

    我观察到,如果我们不选择使用主键/辅助键 使用存储帐户进行身份验证并使用帐户级别 SAS 令牌作为身份验证机制,然后我无法创建 Blob 使用存储访问签名的容器级 SAS 令牌。这是为什么呢?

    这是设计使然。容器级 SAS 仅允许您在容器级工作,您可以在该容器级对该容器内的 blob 执行操作。创建 Blob 容器是帐户级别的活动,因此您需要使用帐户 SAS。目前,Account SAS 没有共享访问策略的概念。

    我不想在帐户级别提供对我的服务的访问权限 密钥并希望创建 SAS 令牌以在 运行时,有什么办法吗?

    是的,有。 Azure Blob 存储支持基于 Azure AD 的身份验证/授权,并支持 Azure 订阅中提供的基于角色的访问控制 (RBAC)。你可以在 Azure AD 中为用户分配精细的 RBAC 角色,他们将只能执行其角色允许的操作。你可以在这里阅读更多信息:https://docs.microsoft.com/en-us/azure/storage/common/storage-auth-aad

    您可以在此处找到有关 Azure 存储中可用的各种授权选项的更多详细信息:https://docs.microsoft.com/en-us/rest/api/storageservices/authorize-requests-to-azure-storage

    【讨论】:

      猜你喜欢
      • 2019-12-17
      • 1970-01-01
      • 2016-12-15
      • 2021-11-30
      • 1970-01-01
      • 2017-09-05
      • 2016-06-04
      • 1970-01-01
      • 2018-08-29
      相关资源
      最近更新 更多