如何解决在没有客户端机密的情况下使用 Azure KeyVault Rest API 进行身份验证?
如何在不传递客户端密钥的情况下通过其余 api 对 azure keyvault 进行身份验证?我的应用程序是本地的。我发现的示例使用客户端密钥进行身份验证,如果我必须在本地存储客户端密钥,这似乎首先违背了 keyvault 的目的。我确实有我的证书的租户 ID、应用程序 ID 和 Subjectdistinguishedname。有没有办法使用 Rest api 或其他不涉及使用客户端机密或其他一些敏感数据的方式来验证这种方式?
解决方法
当然可以,我假设您使用客户端凭据流来获取令牌,您可以使用 client_assertion
而不是 client_secret
来获取访问令牌。
POST https://login.microsoftonline.com/<tenant-id>/oauth2/v2.0/token
client_id=<client_id>
&scope=https://vault.azure.net/.default
&client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer
&client_assertion=eyJhbGciOiJSUzI1NiIsIng1dCI6Imd4OHRHeXN5amNScUtqRlBuZDdSRnd2dxxx
&grant_type=client_credentials
请参阅 Access token request with a certificate 并阅读 certificate credentials 以了解如何注册您的证书和断言的格式。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。