如何获取Azure AD身份验证的访问令牌

时间:2020-07-14 09:44:15

标签: node.js azure oauth-2.0 azure-active-directory

我正在使用Azure AD,必须调用API来获取访问令牌才能启动管道。

我正在使用OAuth2进行授权,但不知道正确的方法。

我使用Postman进行了尝试,并能够成功获得回复。

但是当我使用Angular n Node尝试相同的操作时。

在Angular中,我收到了CORS错误, 在Node中,消息中的状态代码为401

我有终结点URL,我正在使用该URL从Azure AD获取令牌,我已经在Postman上进行了类似的测试。

https://login.microsoftonline.com/ {SomeID} / oauth2 / token

请求标头:

Content-Type:应用程序/ x-www-form-urlencoded

请求正文:

grant_type:client_credentials

client_id:{Client_ID}

client_secret:{秘密}

资源:https://management.azure.com

对于节点,我使用了第三方程序包名称 AXIOS

我觉得从Angular本身传递请求是不正确的,因此仅从后端发送请求才有意义。

请帮助我,我在阅读文档的两个星期内就陷入了困境,但是却一无所获。

代码会很有帮助。

1 个答案:

答案 0 :(得分:0)

对于Angular应用,您应该使用授权码流(PKCE)并使用安全性库来完成繁重的工作

矿山资源

我有一个带有SPA和API的Azure AD代码示例,可以用来建立连接:

希望该博客文章至少为您提供技术上解决方案的一些想法,然后您可以根据需要对其进行调整。