Azure DevOps API身份验证

juud5qan  于 2023-03-31  发布在  其他
关注(0)|答案(3)|浏览(151)

我想使用Azure DevOps API为我的用户创建PAT。但我还无法进行身份验证。在Microsoft的this文档中,他们指出可以使用PAT进行身份验证,但这不是真的。我收到HTTP 203响应,其中包含登录页面。
PS:我正在使用Postman来测试API请求。

ewm0tg9j

ewm0tg9j1#

当我发送一个像这样的请求头时,这个方法很有效
'Authentication': 'Basic <Base-64 encoded PAT>'
在对PAT进行编码之前,您必须在PAT的开头包含':'(使用带填充的Base-64)。即使不包含username,也要使用冒号。
P.S我认为在 Postman 你不需要编码你的PAT。

yhxst69z

yhxst69z2#

我认为这个REST API的安全部分是误导性的。
事实上,这个REST API不能使用PAT进行身份验证,如another document中所述:
若要使用API,您必须使用Azure AD令牌进行身份验证。
与其他Azure DevOps Services API不同,用户必须提供Azure AD访问令牌才能使用此API,而不是PAT令牌。Azure AD令牌是比使用PAT更安全的身份验证机制。鉴于此API能够创建和撤销PAT,我们希望确保仅向允许的用户提供此强大功能。
本文档还详细介绍了如何使用此REST API,您可以参考。

jgzswidk

jgzswidk3#

是的,它确实工作,你只是没有设置它的权利。
看看这个文档的基本身份验证。你需要像这样对用户名密码进行64进制编码:username:PAT .用冒号把两个分开。

相关问题