Azure ACR Auth 错误 - “带有 sp 的 aad 访问令牌失败,客户端 ID 必须是 guid”

Azure ACR Auth 错误 - “带有 sp 的 aad 访问令牌失败,客户端 ID 必须是 guid”

使用本指南:https://github.com/Azure/acr/tree/main/docs/preview/quarantine

生成Token的端点:

得到https://quarantinetest1.azurecr.io/oauth2/token?service=quarantinetest1.azurecr-test.io&scope=repository:helloworld:pull,push

我正在尝试使用 Azure ACR 进行身份验证,以便可以修补图像的元数据并将其从隔离区中删除,但出现以下身份验证错误:

“带有 sp 失败客户端 ID 的 aad 访问令牌必须是 guid”

我尝试在此端点上使用服务主体和客户端密钥进行身份验证,但 Azure AAD 凭据的 base64 编码也不起作用,并出现相同的错误

答案1

通过使用编码的 Base64 来授权客户端 ID 和密钥,此方法可行

$Auth_String =$client_id+":"+$client_secret
$Auth = [convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes($Auth_String))

相关内容