的最佳方式,在我看来,使用适当的构建和发布系统,如VSTS。
我在我的一个解决方案中完成的工作是创建我的Function App的ARM模板,并使用VSTS RM的发布管道部署此模板。
这样你就可以给template.json
添加一个值,就像下面的那个一样。
"appSettings": [
// other entries
{
"name": "MyValue",
"value": "[parameters('myValue')]"
}
您需要另一个文件,名为parameters.json
将持有的值。这个文件看起来像这样(目前)。
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {},
"storageName": {},
"location": {},
"subscriptionId": {}
}
}
回到VSTS中,您可以更改/覆盖入口中这些参数的值。
通过使用这样的工作流程,您将获得一个专业的CI/CD实施,无需人为自己的实际秘密而烦恼。他们只有系统管理员才知道。
谢谢!我已经做了一些进一步的阅读以寻找答案,并且似乎尽管使用ARM网络核心风格的appsettings在微软工作列表上是他们解决问题的答案。 看起来像一个很好的DevOps方法呢! –