当前位置: 首页 > 知识库问答 >
问题:

Azure App Service中node.js应用程序的Kudu部署期间的密钥保管库机密

羊舌承
2023-03-14

我们有一个节点.js部署到 Azure 应用服务的应用。我们的某些 npm 包依赖项存储在专用 npm 存储库中,此存储库的身份验证令牌存储在 Azure 密钥保管库中。

我们在构建中使用VSTS,VSTS使从Key Vault获取令牌变得容易。对于我们的部署,我们使用Kudu进行npm安装

我已经解决了这个问题,在Kudu运行npm安装之前,将auth令牌添加为应用程序服务中的应用程序设置,并将其添加到.npmrc。但我真的希望有一种直接从Kudu访问密钥库令牌的方法。这是钥匙库或应用程序服务团队的雷达上的东西吗?

更新

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

共有1个答案

弘和同
2023-03-14

在应用服务中运行的代码(无论是作为 Kudu 的一部分还是作为实际站点的一部分)都无法直接从 KeyVault 读取。

建议的模式是将密钥放在应用设置中,如 https://docs.microsoft.com/en-us/azure/key-vault/key-vault-use-from-web-application 中所述。

 类似资料:
  • 我在大多数文章中读到,需要在Azure中部署应用程序,这样应用程序才能以编程方式访问存储在Azure密钥库中的秘密。 有没有一种方法可以不在azure中部署应用程序,并且仍然能够通过使用客户端id和客户端机密或证书来访问azure密钥库以获取机密?

  • 这个Python脚本被部署为从Azure函数应用程序运行在Linux消费计划上,这个脚本被期望从Azure密钥库中读取机密。 除了代码部署之外,还进行了以下配置 null 此错误说明应用程序没有密钥库上的机密获取权限,但如上所述,将角色分配给在密钥库上具有阅读器角色的功能应用程序。 配置中可能出现的问题是什么?如何缓解?

  • 我在过去为Azure函数使用了很多秘密,现在我试图使用一个密钥,RSA加密,4096位。这是一个私有的PuTTy.ppk键,我已经将其导出为。pem类型以满足Azure的要求。我有一个Python 3.7应用程序,我已经在其中部署了所需的功能,并尝试在应用程序设置中引用所需的键,下面的语句是: @microsoft.keyvault(secreturi=https://{thevault-addr

  • 我正在尝试将一个带有SSL绑定的定制域添加到带有ARM模板的web应用程序中。我可以在Azure门户中手动完成,但我希望它能与ARM模板一起工作。 证书位于与web应用程序不在同一资源组中的密钥库中。从我的发布管道中的密钥库访问普通机密(如DatabaseConnectionStrings)是没有问题的。问题是当我尝试访问证书时。我有keyvault证书的GET权限。 这是我尝试用发布管道部署AR

  • 因此,我们已经开始使用Azure Key Vault作为机密,但看起来像是以Azure应用服务运行的应用程序必须在门户中对应用程序设置值进行硬编码。有没有办法让应用服务中的应用程序设置从Key Vault中提取?