如何将包含秘密 API 密钥的 public Github 项目部署到 Azure?

How do deploy a public Github project that contains secret API keys to Azure?

我有一个计划在某个时候开源的项目。目前,我将所有 API 密钥保存在未签入的 class 中 - 我刚刚将项目链接到 Azure,但 API 密钥 class 不存在导致部署失败。

How can I hide secret API keys in a public project and still have it deploy to Azure?

我已经阅读了很多帖子(例如this one)但是找不到一个解决方案可以让我做我想做的事 - 有人知道我应该在这里做什么吗?可能吗?

对于 Azure Web 应用程序,您可以在门户的“配置”选项卡上指定配置值(在 "app settings" 下)。这些将覆盖您的 Web.config 文件中指定的值。

这意味着您可以将这些设置保留在 public 存储库之外。

对于本地开发,您可以将设置放在单独的 XML 文件中。为此,请像这样更新 Web.config 中的 appSettings

<appSettings file="mysettings.xml" />

然后创建 mysettings.xml 并将您的实际设置放入新的 <appSettings> 元素中。

然后您可以将 mysettings.xml 添加到您的 .gitignore 文件,这样它就不会被签入您的 public 存储库。

Azure 不会介意您的 mysettings.xml 文件不存在,而是会选择您在门户中指定的设置。