Azure 托管应用程序 : How to allow resources in the application access each other with system assigned identities

标签 azure azure-managed-identity azure-marketplace azure-managed-app

我们使用 Azure 托管应用程序的方式是为客户提供端到端解决方案。我们必须能够隐藏知识产权,同时为客户提供良好的解决方案。

托管应用程序资源组内的资源使用拒绝分配进行保护。除了托管应用程序身份本身以及我们在托管应用程序设置过程中包含的原则之外,所有原则都拒绝读取以外的任何内容。

在托管应用程序中,我们有例如:

  • 使用系统分配的身份配置的应用服务或 Azure 功能,这些应用服务应访问包含在同一应用中的存储帐户,具有写入权限并使用系统分配的身份
  • 存储帐户

现在,由于拒绝分配,应用服务无法获得任何写入权限,因为新创建的系统分配标识不在排除的原则列表中。

我发现的唯一方法是使用客户允许的操作来启用存储帐户的写入权限。

但是,这超出了向客户提供“黑匣子”的意义,因为他现在可以直接访问存储帐户,而不是使用我们提供的 API 等。

目前我们可以解决这个问题的唯一方法是在托管应用程序中使用存储 key 而不是系统分配的身份,但这不是我们想要的解决方法。

在托管应用程序设置期间创建的原则是否也可以自动包含在拒绝分配的排除列表中?这样做的话,黑匣子原理还有效吗?

还有其他可以帮助我们的解决方案吗?

谢谢!

最佳答案

我只能确认此案例已通过 Azure 支持开放,但到目前为止问题尚未解决。托管资源组中的“拒绝”分配明确指出,仅允许管理员主体进行写入操作 - 其余的均被硬阻止。

目前,我将托管应用程序中的 RBAC 视为不受支持的场景。在我们的项目中,我们使用了连接字符串等。

关于Azure 托管应用程序 : How to allow resources in the application access each other with system assigned identities,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71494046/

相关文章:

entity-framework - 不是使用 Azure 上的 Entity Framework 创建的表

azure - 使用站点查询字符串将 Teamcity Web 部署到 Web 管理服务

azure - 如何将 Microsoft Identity Platform 与 Delphi VCL 程序结合使用?

azure - 如何在Visual Studio Code中使用MSI进行开发?

.net - 使用 Azure 托管服务标识连接到 Cosmos DB 帐户

azure - Azure Marketplace 中不存在 Redis Cloud

c# - 使用 Azure Service Fabric 与自定义 Azure 云的优缺点?

powershell - 如何通过powershell获取azure vm的cpu使用率

Azure 市场应用程序 : Is it secure to putting password to ARM file?

azure - 将 WebApp 发布到 Azure MarketPlace