Azure blob 存储共享访问策略 apply/remove

Azure blob storage shared access policies apply/remove

我在 Azure blob 存储中有一个容器,其访问策略设置为 "Blob"。该容器具有我想使用共享访问策略保护的现有 blob。

我注意到如果我创建容器共享访问策略...

var sharedPolicy = new SharedAccessBlobPolicy()
{
    SharedAccessExpiryTime = DateTime.UtcNow.AddMinutes(120),
    Permissions = SharedAccessBlobPermissions.Read | SharedAccessBlobPermissions.Write
};
permissions.SharedAccessPolicies.Add(Guid.NewGuid().ToString(), sharedPolicy);
_blobContainer.SetPermissions(permissions);

我仍然能够读取现有的 blob。我预计现有的 blob 会被新创建的 SAP "protected"。

  1. 如何将 SAP 应用到现有的 blob?

  2. 是否可以从容器中删除所有 SAP 以再次公开公开所有 blob(假设您知道 url)?或者删除 SAP 是否会使 blob 无法访问?

  3. 如果我使用 SAP 来保护 blob,我可以将容器的访问策略设置为 "private" 并且它仍然有效吗?

谢谢!

我修改了一段时间。这是我观察到的...

访问策略 = Blob

任何知道 blob 的 URI 的人都可以读取该 blob(不管 SAP 的)。

访问策略=私有

要阅读你必须...

  1. 使用存储访问密钥连接
  2. 或拥有有效的共享访问签名
  3. 或者具有有效的存储访问策略(在容器上)