Azure 错误响应异常:操作返回无效状态代码"禁止访问"(证书操作)



我们有一个应用服务需要访问Azure上的密钥库。我们有两个订阅,其中一个运行良好。另一个是新的,我们得到这个错误(c#代码在app服务):

Microsoft.Azure.Management.ApiManagement.Models.ErrorResponseException:
Operation returned an invalid status code 'Forbidden'
at Microsoft.Azure.Management.ApiManagement.CertificateOperations.DeleteWithHttpMessagesAsync
(String resourceGroupName,
String serviceName,
String certificateId,
String ifMatch,
Dictionary`2 customHeaders,
CancellationToken cancellationToken)
at Microsoft.Azure.Management.ApiManagement.CertificateOperationsExtensions.DeleteAsync
(ICertificateOperations operations,
String resourceGroupName,
String serviceName,
String certificateId,
String ifMatch,
CancellationToken cancellationToken)

我们已经比较了几乎所有的资源,设置,密钥,权限,访问策略,管理身份,所有我们认为可能导致这个问题,但它仍然不工作。代码是相同的,所以它不是来自那里。一定是一些明显的错误,但这个错误信息绝对没有告诉我们根本原因是什么。

谁能指出我们错过的场景?如果这与运行应用程序服务的帐户有关,我们如何/在哪里可以知道Azure上的帐户是什么?

在我们的案例中,问题是:

  1. 客户端证书实际存储在APIM中,而不是KV中。
  2. 服务需要API管理服务贡献者权限而不是贡献者权限才能对存储在APIM中的证书执行操作。

文档:https://learn.microsoft.com/en-us/azure/role-based-access-control/built-in-roles

贡献者→授予管理所有资源的完全访问权限

API管理服务贡献者→可以管理服务和api

相关内容

  • 没有找到相关文章

最新更新