我们正在尝试设置一个 Github Action,将我们的软件部署到 Azure。我们的软件不支持 Multi-Tenancy ,因此我们将软件的副本部署到每个租户的新 Azure 资源组中。到目前为止这还没有问题。我们的 Github Action 有一个事件输入,我们可以在其中提供资源组名称,然后可以将其部署到该资源组。
但是,对于静态 Web 应用程序,Azure API token 是在黑匣子后面生成的,部署过程也是如此。我不想为我们想要部署到的每个租户提供 Github Action 工作流程和存储库 secret 。
在我看来,自动生成的 secret 可能以某种方式指定要部署到哪个资源组,因为我看不到“Azure/[email protected]” Github Action 知道它要部署到哪里的其他方法。
Azure 门户会自动创建此 secret token ,并使用如下名称添加它:AZURE_STATIC_WEB_APPS_API_TOKEN_LEMON_WAVE_00AD12A10
显然有一种方法可以创建此 token ,但是是否已在任何地方讨论或概述过?
理想情况下,我能够根据需要创建该 token 并使用 Azure Static Web Apps Deploy 执行手动部署Github Action 进入我需要的任何资源组,无需重复工作流程和 github secret 。
该服务本身看起来很棒,就像是对 Azure 存储静态 Web 应用程序的明显升级。当前的部署选项很糟糕 - 为什么只能从特定的 github 存储库到特定的 Azure 资源组?为什么不公开根据需要部署到任何地方的能力?
有什么想法吗?
最佳答案
API token 不绑定(bind)到特定的存储库或分支,而是部署到特定静态 Web 应用程序的权限。同样,它与特定资源组没有联系,它与特定静态 Web 应用程序具有 1-1 关系。
听起来您想要拥有一个可以部署到所有静态 Web 应用程序的 API token ?这不是一个好的安全模型,不推荐。 您现在可以调用 API 来检索新的 API token 并使旧的 API token 失效。
为了让社区受益,请发布我们在 Microsoft Q&A thread. 上讨论的答案。
关于azure - 如何手动创建部署到 Azure 静态 Web 应用(预览版)所需的 Azure API token ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65261210/