0

我正在尝试在我的 Azure Kubernetes 群集中将机密存储组件与 Azure Keyvault 一起使用。我完全按照“https://docs.dapr.io/reference/components-reference/supported-secret-stores/azure-keyvault/”进行设置,但我无法检索机密。当我将 secretstore 更改为本地文件或 kubernetes 机密时,一切正常。使用 Azure 密钥保管库时,我收到以下错误:

{
"errorCode": "ERR_SECRET_GET",
"message": "failed getting secret with key {keyName} from secret store {storename}: azure.BearerAuthorizer#WithAuthorization: Failed to refresh the Token for request to https://{vault url}/secrets/{secret key}/?api-version=2016-10-01: StatusCode=404 -- Original Error: adal: Refresh request failed. Status Code = '404'. Response body: getting assigned identities for pod {podname} in CREATED state failed after 16 attempts, retry duration [5]s. Error: <nil>\n"
}

我验证了我使用的客户端密码是正确的。谁能指出我正确的方向?

4

1 回答 1

0

该错误表明服务主体无权从密钥保管库获取机密

您可以为 AKS pod 使用系统分配的托管标识并添加访问策略以读取密钥保管库机密

此外,您可以使用具有访问策略的服务主体来读取密钥保管库机密或密钥保管库加密官员角色,以便您可以获取密钥保管库机密

参考Azure Key Vault 机密存储 | Dapr 文档

于 2021-12-29T11:09:41.367 回答