2

我是天蓝色的新手,正在尝试学习天蓝色存储。假设我创建了一个存储帐户,存储了几个文档,并且希望每个人都可以访问 mt 文档。如果我提供我的 URL,每个人都可以访问它,但我希望很少有用户访问我的存储帐户,并且还可以上传他们想要的文档。

请参考我如何实现这一点,如果可能的话,请参考和链接这对我有用。提前致谢。

4

3 回答 3

1

有几种方法可以做到这一点:

生成和分发具有读/写权限的 SAS 令牌。这将给出一个在给定时间点过期的 Url。您可以通过门户、代码或使用Azure 存储资源管理器中的上下文菜单来完成所有这些操作。下面是如何使用代码进行操作的示例

您还可以将 AAD 用户分配给有权操作存储帐户中的资源的角色这是当前角色的列表,因此您可以根据自己的用例选择合适的角色。有些预览角色似乎不起作用

编辑:MS 刚刚宣布将 AAD 支持预览到容器或队列的范围。这可能是您正在寻找的粒度。

编辑 2:现在可以使用对存储的完整 RBAC 支持

于 2018-05-14T16:38:18.797 回答
0

您可以生成 SAS 令牌 这样您就可以在不共享帐户密钥的情况下授予其他人访问权限。

您可以在特定服务(Blob、队列、文件)或帐户 SAS 上创建 SAS 令牌,它允许您向存储帐户中的多个服务授予权限。(例如队列和表。)

SAS 令牌让您可以精细控制访问类型,包括:

  • SAS 有效的时间间隔,包括开始时间和到期时间。
  • SAS 授予的权限。例如,一个 Blob 的 SAS 可能会授予对该 Blob 的读取和写入权限,但不会授予删除权限。
  • Azure 存储将接受 SAS 的可选 IP 地址或 IP 地址范围。例如,您可以指定属于您的组织的 IP 地址范围。
  • Azure 存储接受 SAS 的协议。您可以使用此可选参数来限制对使用 HTTPS 的客户端的访问。
于 2018-05-14T18:15:14.937 回答
0

Azure 存储提供以下选项来授权访问安全资源:

  • 适用于 blob 和队列的 Azure Active Directory (Azure AD) 集成(预览版)。Azure AD 提供基于角色的访问控制 (RBAC),以对客户端对存储帐户中资源的访问进行细粒度控制。有关详细信息,请参阅 使用 Azure Active Directory 验证对 Azure 存储的请求(预览版)。

  • Blob、文件、队列和表的共享密钥授权。使用共享密钥的客户端会在每个使用存储帐户访问密钥签名的请求中传递一个标头。有关详细信息,请参阅 使用共享密钥授权。

  • Blob、文件、队列和表的共享访问签名。共享访问签名 (SAS) 提供对存储帐户中资源的有限委派访问。对签名有效的时间间隔或对其授予的权限添加约束可提供管理访问的灵活性。有关详细信息,请参阅 使用共享访问签名 (SAS)。

  • 容器和 blob 的匿名公共读取访问权限。不需要授权。有关详细信息,请参阅 管理对容器和 Blob 的匿名读取访问。

    默认情况下,Azure 存储中的所有资源都是安全的,并且仅供帐户所有者使用。尽管您可以使用上述任何授权策略来授予客户端访问您的存储帐户中的资源的权限,但 Microsoft 建议尽可能使用 Azure AD,以获得最大的安全性和易用性。

于 2018-09-28T19:11:04.803 回答