gpt4 book ai didi

azure - 如何授权多个客户端应用程序访问我的 Azure 存储资源?

转载 作者:行者123 更新时间:2023-12-03 01:41:42 25 4
gpt4 key购买 nike

我正在构建一个在不同客户端的本地硬件上运行的 Node JS 应用程序。我希望该应用程序将数据记录到我的 Azure 存储表中。(将来,应用程序可能需要使用其他Azure服务。)我应该如何授权应用程序的各个实例访问我的表?

我希望每个不同的客户端都限制在不同的表中,并且只有添加和读取访问权限 - 没有更新或删除权限。

如果需要,我希望能够立即撤销单个客户端的访问权限,而不影响其他客户端。

我考虑了 3 个选择:

  • 我考虑为每个客户端创建一个单独的存储帐户,并为客户端提供该帐户的访问 key 。但这将提供完全访问权限(包括更新和删除)。

  • 我考虑为每个客户端创建存储访问策略 (SAP),然后在该策略上创建共享访问签名 (SAS)。客户端可以使用共享访问签名 (as described here) 进行连接。我认为这样做的主要缺点是,如果我希望客户端的应用程序能够访问多个表,则每个表都需要单独的 SAP 和 SAS。这会增加管理开销。

  • 由于应用程序是另一种形式的身份,我考虑了 registering an app为我的软件的每个实例创建一个身份。但我不确定如何 (a) 让应用程序将凭据传递到 azure 存储或 (b) 授予应用程序读取/添加到表的权限。

在AWS中,我通过创建IAM用户解决了这个问题。 Node JS 代码可以通过环境变量访问这些键。

但在 Azure 中,我的组织有一个 Active Directory,而我不是该目录的管理员。我不知道如何创建 Azure 用户以便在没有管理员身份的情况下访问我的表。

有人有什么想法或建议吗?

最佳答案

正如您所提到的,每个表都没有 SAS token 。对于您的情况,我建议您为每个客户端提供单独的存储帐户,并使用 SAS token 而不是完全访问权限。

当前不支持对 Azure 表的访问进行身份验证。 Azure AD 集成预览版中适用于Blob队列 服务。

有关使用 Azure Active Directory(预览版)验证对 Azure blob 和队列的访问的详细信息,请参阅 Azure official document .

关于azure - 如何授权多个客户端应用程序访问我的 Azure 存储资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52712172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com