在Azure应用服务中的node.js应用程序的Kudu部署期间,密钥保管库存在秘密

时间:2017-02-02 18:50:23

标签: node.js azure-web-sites azure-keyvault

我们有一个部署到Azure App Service的node.js应用程序。我们的一些npm软件包依赖项存储在私有npm存储库中,此repo的auth标记存储在Azure Key Vault中。

我们使用VSTS进行构建,VSTS可以轻松从Key Vault中获取令牌。对于我们的部署,我们使用Kudu来安装和安装。 npm开始我们的应用程序。但是npm安装失败,因为无法获取来自私人仓库的包。

我通过在App Service中添加auth令牌作为app设置并在Kudu运行npm install之前将其添加到.npmrc来解决这个问题。但我真的想要一种直接从Kudu访问Key Vault令牌的方法。这是Key Vault或App Service团队的雷达吗?

更新

推荐的方法是使用powershell SDK / REST API从KeyVault读取机密并更新应用服务。不理想,但它有效

1 个答案:

答案 0 :(得分:1)

在App Service中运行的代码(无论是作为Kudu的一部分还是您的实际网站)都无法直接从KeyVault读取。

建议的模式是将秘密放入应用程序设置中,如https://docs.microsoft.com/en-us/azure/key-vault/key-vault-use-from-web-application

中所述