0

我们正在尝试设置一个将我们的软件部署到 Azure 的 Github Action。我们的软件不支持多租户,因此我们将软件的副本部署到每个租户的新 Azure 资源组中。到目前为止,这没有问题。我们的 Github Action 有一个事件输入,我们可以在其中提供资源组名称,然后它可以从那里部署到该资源组。

但是,对于静态 Web 应用程序,Azure API 令牌是在黑盒后面生成的,部署过程也是如此。我不希望我们要部署到的每个租户都有一个 Github Action 工作流和存储库密码。

在我看来,自动生成的秘密可能以某种方式指定了要部署到哪个资源组,因为我认为“Azure/static-web-apps-deploy@v0.0.1-preview”Github Action 没有其他方法可以知道在哪里它要部署到。

Azure 门户会自动创建此秘密令牌并使用如下名称添加它:AZURE_STATIC_WEB_APPS_API_TOKEN_LEMON_WAVE_00AD12A10

显然有一种方法可以创建这个令牌,但有没有在任何地方讨论或概述过?

理想情况下,我能够根据需要创建该令牌并​​使用Azure 静态 Web 应用程序将Github 操作部署到我需要的任何资源组中执行手动部署,而无需复制工作流和 github 机密。

该服务本身看起来很棒,就像是对 Azure 存储静态 Web 应用程序的明显升级。但当前的部署选项很糟糕 - 为什么只从特定的 github 存储库和特定的 Azure 资源组?为什么不公开根据需要部署到任何地方的能力?

有任何想法吗?

4

1 回答 1

1

API 令牌不绑定到特定的存储库或分支,而是部署到特定静态 Web 应用程序的权限。同样,它与特定资源组没有联系,它与特定静态 Web 应用程序具有 1-1 关系。

听起来您想要一个可以部署到所有静态 Web 应用程序的 API 令牌?这不是一个好的安全模型,不推荐。您现在可以调用 API 来检索新的 API 令牌并使旧的令牌无效。

为了使社区受益,发布我们在Microsoft 问答线程上的讨论中的答案。

于 2020-12-16T19:26:47.967 回答