gpt4 book ai didi

rest - Azure KeyVault Get Secret API 响应 404 或 401 错误

转载 作者:行者123 更新时间:2023-12-02 07:46:58 26 4
gpt4 key购买 nike

我正在尝试从 Azure Key Vault 中获取 secret 。这是一个非常简单的 Restful API 调用。例如对于所有 key ,就这么简单:

GET {vaultBaseUrl}/secrets?api-version=7.0

其中,vaultBaseUrl 在 Azure 控制台中作为 Vault DNS 名称提供。我正在使用控制台模式进行测试 https://learn.microsoft.com/en-us/rest/api/keyvault/getsecrets/getsecrets#code-try-0但返回值总是404。当我在 Azure 控制台中尝试curl 时,它给出 401 - 未经授权。不过我可以使用命令行来泄露 secret 。进行 Restful 通话和 curl 工作以揭开 secret 是否有任何 secret ?所有这些情况都使用相同的凭据。一个附带问题是,在 microrosft api 测试页面上有一个“请求预览”部分,其中有一个绿色的运行按钮,几乎就像是在邀请您运行 api,但链接是 learn.microsoft.com 和盒子上的复制按钮被禁用。我从来没有在一个地方见过这么多问题,所以我想可能是我不明白这里的一些东西。

最佳答案

该文档似乎不正确。如果你想知道这个 secret ,你可以使用 Client credentials flow获取访问 token 并使用它来获取 secret 。

请按照以下步骤操作。

1.在Azure Active Directory中注册应用程序,请参阅此link 。获取应用id和key,看这个link 。使用正确的 secret 权限在 keystore 的访问策略中添加服务主体(只需搜索 AD 应用程序的名称,然后添加它)。

2.在postman中,向url发送请求

POST https://login.microsoftonline.com/{your tenant id}/oauth2/token?api-version=1.0

请求正文和完整示例(client_idclient_secret 是步骤 1 中的应用程序 ID 和 key ):

enter image description here

3.复制步骤2中的access_token,然后将其用作授权 token 来调用api:

GET https://yourkeyvault.vault.azure.net/secrets?api-version=7.0

enter image description here

此外,如果您想使用 CURL 来获取 secret ,请尝试如下所示。 TOKEN 与上面步骤 2 中的 access_token 相同。

curl -X GET -H "Authorization: Bearer [TOKEN]" https://yourkeyvault.vault.azure.net/secrets?api-version=7.0

有关通过curl获取access_token的更多详细信息以及完整步骤,可以引用此link 。不要忘记在请求访问 token 步骤中将资源更改为https://vault.azure.net

关于rest - Azure KeyVault Get Secret API 响应 404 或 401 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55860245/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com