【发布时间】:2019-01-02 13:58:11
【问题描述】:
我正在尝试利用 Azure Key Vault REST API。我写了一小段代码来尝试获取密钥:
private static async Task<object> GetKey(string uri, string token)
{
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer " + token);
HttpResponseMessage resp = await client.GetAsync(uri);
return resp.Content.ReadAsStringAsync().Result;
}
我用
来称呼它var test = GetKey(
@"https://<myVault>.vault.azure.net/keys/Test/1?api-version=2016-10-01",
token
);
其中“Test”是 .我相信我的访问令牌是正确的,因为我能够获得 Azure 中的 Vault 列表。我不确定出了什么问题。
我在 Azure 中的 API 注册拥有对 Key Vault 的完全访问权限,并且在 AAD 中被列为所有者。密钥库在所有网络上都列出,甚至是公共网络。有趣的是,如果我在 azure 文档中使用具有相同参数的 "try it" feature,我会收到 404 响应,我认为这可能是问题的一部分?
由于这不是管理 API,我是否可能需要对其他资源进行身份验证?
【问题讨论】:
标签: api azure azure-api-management azure-keyvault