从 api 管理获取 Azure Key Vault 中的机密?

rou*_*ud9 1 azure azure-active-directory azure-api-management azure-keyvault

我在 Azure 中创建了一个保管库,并授予其访问 API 管理(在 AAD 中注册的应用程序)的权限。我尝试在进行 API 调用时不在标头中存储任何密码,而是从 keyvault 获取它们。有没有办法做到这一点?如果是的话怎么办?

找了好几天了,没找到东西

谢谢

Eag*_*Dev 5

您需要使用 API 管理策略来完成工作(https://learn.microsoft.com/en-us/azure/api-management/api-management-policies)。

需要构建策略以将 HTTP 请求发布到 Azure AD OAuth 端点以接收访问令牌(https://learn.microsoft.com/en-us/azure/api-management/api-management-transformation-policies#TransformationPolicies) 。使用访问令牌,您只需调用 Key Vault API 并检索密钥 ( https://learn.microsoft.com/en-us/azure/api-management/api-management-advanced-policies#SendRequest )。该秘密将在您的标头中传递 ( set-header)

获取访问令牌的示例:https://learn.microsoft.com/en-us/azure/api-management/policies/use-oauth2-for-authorization ?toc=api-management/toc.json