无法使用 Ruby ADAL Gem 检索 Vault.azure.net 的 ADAL 令牌
Unable to Retrieve ADAL Token for Vault.azure.net Using Ruby ADAL Gem
我正在使用下面找到的 ADAL ruby gem 并遵循 samples
文件夹中的 user credentials
示例:
https://github.com/AzureAD/azure-activedirectory-library-for-ruby
我已经在 Azure AD 中设置了本机客户端。我能够成功获得 https://management.core.windows.net/ 的令牌并使用该令牌执行部署。同样使用相同的令牌,我可以通过 Postman 在 HTTPS 请求中使用它来检索我的 Azure 密钥保管库。
问题:
我需要从我的密钥库中检索一个秘密。使用上面的令牌,我得到了 401 unauthorized
。我尝试生成一个新令牌,这次将 RESOURCE
设置为 https://vault.azure.net
,但出现以下错误:
AADSTS65001: The user or administrator has not consented to use the application with ID {client-id}. Send an interactive authorization request for this user and resource.
我正在与 Azure 支持人员合作,我们一直遵循相同的步骤。他在使用 .NET 库,而我在使用 ruby gem。我的请求与 Azure 支持之间的显着差异:
Azure 支持获取令牌的请求发送 grant_type
header,值设置为 client_credentials
。我发送了相同的 header,但值是 password
。
我还尝试创建一个 Web 应用程序而不是本机应用程序来对此进行测试。我正在关注 ruby gem 存储库中给出的示例。这也无法检索 management.core
和 vault.azure.net
的令牌。它确实成功地获得了图表 API.
的标记
感谢任何帮助,了解为什么我无法使用此库获取 Azure Key Vault 的令牌。
Azure 支持人员已确认这是使用 password
授权类型(在对本机应用程序进行身份验证时应使用的授权类型)的本机应用程序的错误。
直到Azure在你注册的AD应用中添加key vault应用权限设置,你需要使用Powershell的客户端ID:
1950a258-227b-4e31-a9cf-717495945fc2
我正在使用下面找到的 ADAL ruby gem 并遵循 samples
文件夹中的 user credentials
示例:
https://github.com/AzureAD/azure-activedirectory-library-for-ruby
我已经在 Azure AD 中设置了本机客户端。我能够成功获得 https://management.core.windows.net/ 的令牌并使用该令牌执行部署。同样使用相同的令牌,我可以通过 Postman 在 HTTPS 请求中使用它来检索我的 Azure 密钥保管库。
问题:
我需要从我的密钥库中检索一个秘密。使用上面的令牌,我得到了 401 unauthorized
。我尝试生成一个新令牌,这次将 RESOURCE
设置为 https://vault.azure.net
,但出现以下错误:
AADSTS65001: The user or administrator has not consented to use the application with ID {client-id}. Send an interactive authorization request for this user and resource.
我正在与 Azure 支持人员合作,我们一直遵循相同的步骤。他在使用 .NET 库,而我在使用 ruby gem。我的请求与 Azure 支持之间的显着差异:
Azure 支持获取令牌的请求发送 grant_type
header,值设置为 client_credentials
。我发送了相同的 header,但值是 password
。
我还尝试创建一个 Web 应用程序而不是本机应用程序来对此进行测试。我正在关注 ruby gem 存储库中给出的示例。这也无法检索 management.core
和 vault.azure.net
的令牌。它确实成功地获得了图表 API.
感谢任何帮助,了解为什么我无法使用此库获取 Azure Key Vault 的令牌。
Azure 支持人员已确认这是使用 password
授权类型(在对本机应用程序进行身份验证时应使用的授权类型)的本机应用程序的错误。
直到Azure在你注册的AD应用中添加key vault应用权限设置,你需要使用Powershell的客户端ID:
1950a258-227b-4e31-a9cf-717495945fc2