使用Postman oAuth2.0无法获得Devops的授权代码

时间:2019-05-02 12:22:27

标签: oauth-2.0 postman azure-devops-rest-api

我正在尝试将Devops与另一个第三部分系统集成,但是我尝试使用oAuth2.0从邮递员访问Devops,但是它总是失败,并向我抛出错误 {“ Error”:“ invalid_client”,“ ErrorDescription“:“无效的客户端身份验证令牌。”}

Devops是否支持oAuth?如果是这样,我想念的是什么,我得到了这个错误?

2 个答案:

答案 0 :(得分:0)

Azure DevOps支持oAuth。如果您按照下面的链接中的步骤获取oAuth令牌,然后直接在Postman中键入该令牌,您将获得成功的响应:

https://github.com/Microsoft/azure-devops-auth-samples/tree/master/OAuthWebSample

enter image description here

答案 1 :(得分:0)

问题在于,出于某种原因,DevOps使用非标准标头。这导致内置的邮递员无法正常工作。我想解决此问题的方法是将Auth网址直接输入到浏览器中。然后,您可以从回调URL中提取身份验证代码。 然后使用该代码在postman中的令牌端点上发布 https://app.vssps.visualstudio.com/oauth2/token

使用x-www-form-urlencoded正文并填写以下键

                "client_assertion_type", "urn:ietf:params:oauth:client-assertion-type:jwt-bearer" 
                "client_assertion", your app secret
                "grant_type", "urn:ietf:params:oauth:grant-type:jwt-bearer" 
                "assertion", your auth code from previous step
                "redirect_uri", your callbackurl