问题标签 [azure-managed-app]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - 能否在托管应用 .zip 文件中包含要作为 azure 函数运行的脚本?
我想通过 azure 函数与我的托管应用程序一起包含一些功能,并希望我可以将它包含在您指定的 .zip 文件中,其中包含您的 mainTemplate.json 和 createUiDefinition.json 文件。
如果是这样,你把它们放在哪里,然后它们是如何配置运行的?他们以什么身份运行,他们的 URL 是什么等?它们可以只是“消耗”模型(即根据需要分配 CPU 而不是专用服务器池)吗?这些都是我想提供的低频、高延迟类型的操作。
我发现文档说您可以在 .zip 文件中添加额外的资源,但没有任何地方谈论实际这样做或如何使用它们。
如果我完全不在基地,如何向客户提供特定行为以及托管应用程序?我真的不想自己托管这些功能,但如果你必须这样做......
谢谢你。
azure - 如何使用在托管资源组中具有权限的身份部署托管应用程序?
将市场托管应用程序产品/服务部署到客户订阅时,您可以在与托管应用程序关联的托管资源组中创建一个身份。但是,为了使该身份具有任何权限,必须为其分配一个角色。
当发布者和客户在同一个租户中时,可以按预期创建角色分配,并且身份在托管资源组内具有权限。
但是,当客户在不同的租户(和活动目录)中时,我会收到以下错误:
在租户“[PUBLISHER TENANT ID]”中找不到委托人。如果您尝试将此角色分配放在租户“[客户租户 ID]”中,则必须指定 delegatedManagedIdentityResourceId 属性
看看上面提到的delegatedManagedIdentityResourceId
,它很快就会变得很毛茸茸,我不确定这是我想要走的路,或者它是否能让我到达我需要的地方,即在托管资源组中拥有一个身份有权在托管资源组中执行读/写操作。
谢谢你。
azure - Azure 多租户 SAAS/PAAS?
我是 Azure 的新手,我的任务是确定将我们的本地 asp.net 核心 Web 应用程序带到 Azure 的正确方法,以便它成为向客户提供的多租户产品。
到目前为止,根据我的研究,我似乎有以下选择
- 使我的 Web 应用程序成为具有每个租户数据分区的多租户 SAAS 应用程序
- 使我的 Web 应用程序成为受 Azure AD 保护的 PAAS 产品,可以使用Azure 托管应用程序部署到客户订阅。
- 将我的解决方案容器化(ACI/Dockers 等)。
Q1:有什么叫多租户 PAAS 应用的吗?我遇到的所有参考资料都是多租户 SAAS 应用程序。
Q2:我想知道我的方向是否正确,是否有任何书籍/参考资料/文档可以在这方面帮助我巩固我的理解。
非常感谢您对此事的任何帮助。
谢谢,
azure-managed-app - 带有设置的 Azure 托管应用程序 Web 应用
我需要在Azure Marketplace中部署一个 Asp.Net Core Web 应用程序。
有没有办法让用户在门户上创建/编辑一些应用程序设置字段并在 de VM 内托管的 Web 应用程序中读取这些应用程序设置?
谢谢!
azure - Azure 服务目录应用程序访问不同的资源组
我有一个通过 ARM 模板定义的服务目录托管应用程序。在模板中,我创建了一个 linux VM 并运行了一个自定义脚本,该脚本从现有的 Azure Blob 存储下载所需的文件并启动我的应用程序。
我想使用 RBAC 来授予对现有 blob 存储的访问权限,以便在模板内不指定任何访问密钥或令牌,并且部署托管应用程序的用户不需要输入任何密钥或令牌。
因此,我在我的虚拟机上分配了以下角色来访问不同的资源组,从这个答案中获得灵感
这在我使用以 azure 门户全局管理员身份登录的 CLI 部署托管应用程序时有效。
当我创建托管应用程序定义并以 Azure AD 用户身份从服务目录部署应用程序时,我收到错误 -
它说客户端 ID 无权执行操作“Microsoft.Authorization/roleAssignments/write”。我在这里找不到客户端 ID 代表什么。
为了对此进行分类,我为我的用户分配了“所有者”角色,以便它可以“编写”角色分配,但这并没有帮助。收到相同的错误。
Azure AD 用户不能在不同的资源组中编写角色分配是有道理的。在那种情况下,这里的正确解决方案是什么?
总之,如何使用 arm 模板授予对由服务目录应用程序创建的 VM 的访问权限,以便它可以从现有的 blob 存储(使用 RBAC)下载文件?
- 编辑 -
我之前使用的是“系统分配”身份,但我需要一个用户分配的身份。按照本指南,我创建了一个用户分配的身份(在门户中),并授予它访问我的 blob 存储的权限。然后我更新createUiDefinition
了在部署我的托管应用程序时选择身份。上面提到的错误消失了,但是标识没有分配给新创建的虚拟机。
我尝试通过以下方式将身份分配给VM mainTemplate
-
但这会产生与以前类似的错误-
我创建了授权为“所有者”和“托管身份提供者”的托管应用程序,还使用具有“所有者”角色的用户登录,但仍然没有运气。
azure - Azure 托管应用程序 - 带有应用程序链接的 ViewDefinition.json 操作
我们希望在 Azure 服务目录/市场应用程序的概览仪表板上提供一个链接,以跳转到我们的自定义 Web 应用程序(作为应用程序的一部分部署)。 带有示例链接的概览仪表板屏幕截图
根据文档commands
可以在之overview
类中定义viewDefinition.json
:
由于我们想要提供一个(动态)链接到作为托管应用程序的一部分部署的 WebApp,我们要么需要来自部署的一些信息(例如来自 的输出CreateUiDefinition.json
),要么需要在 中检索此类数据viewDefinition.json
以构建 URL 的选项。
然而,即使只是提供一个静态链接,path
在我们的测试中也不起作用:
根据文档path
,command
可以触发对自定义资源提供程序的操作。资源提供者可以将请求代理到自定义服务。如果您想提供启动/停止服务的操作,这可能会很好用,但由于代理需要来自服务的 JSON 响应,我们不能简单地显示或重定向到我们的页面。我们也不知道如何使用 JSON 响应来设置path
.
我们只想提供一个命令,在新选项卡中打开指向我们自定义 WebApp 的链接或重定向到它。有谁知道我们如何实现这样的链接?
我们已经看到像 SendGrid 这样的 Azure 托管应用程序提供了这样的选项,因此必须有一个(未记录的)方式。 带有链接的 SendGrid 应用程序概览仪表板的屏幕截图
类似问题:Open a web app page using View Definition
更新(2020-11-24):
我们联系了 MS 支持并得到以下回复:
我们得到了产品团队的确认,很遗憾,无法在摘要页面添加动态链接。这是因为自定义操作仅用于执行自定义提供程序操作,而不应该打开硬编码链接等。
azure-managed-app - 如何将 Asp.Net Core Web 应用程序部署到 Azure 托管应用程序
我想创建一个带有应用服务的 Azure 托管应用程序,该应用服务托管我创建的 Asp.Net Core Web 应用程序。
当客户部署到其 Azure 订阅时,是否可以将 Asp.Net 核心 Web 应用程序部署到 Azure 托管应用程序?
我只找到了有关创建 Azure 资源的信息,但没有向它们发布任何内容或操作它们的任何信息。
谢谢!
azure-managed-app - 如何使用新的包版本更新现有的 Azure 托管应用程序?
我为我的 Azure 托管应用程序创建了一个新包。如何让托管应用程序的现有实例升级到该软件包版本 ( mainTemplate.json
+ viewDefinition.json
)?
azure - 在托管应用程序部署中使用“Microsoft.Insights/scheduledQueryRules”失败
我开发了一个包含多个组件的托管应用程序。现在,当我从服务目录部署应用程序时,所有组件都已成功部署,但Azure Monitor 部署除外。它在 403 上很糟糕,并以错误的网关代码结束。
当我将它部署为非托管应用程序时,所有组件都成功部署,没有任何错误。所以我知道模板是正确的。
当我删除失败的天蓝色警报并使用提供程序“Microsoft.Insights/metricAlert”向托管应用程序添加新的指标警报时,部署成功。
因此,我怀疑提供程序“Microsoft.Insights/scheduledQueryRules”未启用托管应用程序。(?)
任何人的想法?
这是我使用的模板:
错误代码的一部分:
谢谢,米歇尔