无法在 Azure 政府云中导入 Key Vault 证书

Unable to Import Key Vault Certificate in Azure Government Cloud

我正在尝试将证书从 Key Vault 导入应用服务以在 Azure 政府云中配置 SSL。当我这样做时,我收到一条错误消息:

未能获取应用服务服务主体详细信息。

当我尝试通过 ARM 模板执行此操作时,我遇到了类似的错误,这导致我手动尝试此操作。我已尝试为我的应用服务提供托管身份并为该身份提供对密钥保管库的访问权限。我尝试了一种在常规 Azure 云中有效的技术,即授予 "Microsoft Azure App Service" 帐户对密钥保管库的权限,但在政府云中似乎不存在。

我原以为这会简单地工作并允许我在应用服务上正确配置我的 SSL,这样我就不需要在每个应用服务上单独管理证书。

您必须在可以通过 Azure 权限分配的应用服务的身份中启用,然后您必须转到 KeyVault 并授予应用服务权限。

https://docs.microsoft.com/en-us/azure/app-service/media/app-service-managed-service-identity/msi-blade-system.png

更多信息:

https://docs.microsoft.com/en-us/azure/app-service/overview-managed-identity

https://docs.microsoft.com/es-es/azure/key-vault/tutorial-net-create-vault-azure-web-app

https://azure.microsoft.com/en-us/resources/samples/app-service-msi-keyvault-dotnet/

我终于找到了问题的解决方案。

按照此处找到的说明进行操作: https://github.com/Azure/azure-quickstart-templates/tree/master/201-web-app-certificate-from-key-vault

我尝试按照 link 中的描述授权 'Microsoft.Azure.WebSites' 资源提供程序,但政府云中不存在该 GUID。

然而,这个 link 确实为您提供了政府云的等效 GUID: https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/azure-government/documentation-government-services-webandmobile.md#app-services

在使用第一个 link 的脚本和第二个 link 的 GUID 值后,我能够同时添加部署和手动 SSL。