adal.js 支持授权码授予流程吗?

does adal.js support Authorization Code Grant Flow?

一段时间以来,我有一个 .Net WPF 应用程序,它使用 Adal.Net 执行(我认为是)针对 azure 活动目录的授权代码授予流程以访问 Web API(它正在请求中寻找不记名令牌)。

为此,我使用了 2 个 AAD 应用程序:MyServer(代表服务器)和 MyClient(代表 WPF 客户端)。在 Azure 门户中,我为 Myclient 配置了访问 MyServer 的权限。

从我的 WPF 应用程序调用 AcquireToken 时,我提供了 MyClient.ClientId 作为客户端 ID 和 MyServer.ResourceUrl 作为资源 ID,一切都按预期工作。

现在我有一个网站(仅使用 IIS 提供静态页面 - 它没有 asp.net 或 node.js 作为网络服务器)。

我希望我的浏览器执行与 .Net 本机应用相同的流程。

我查看了 adal.js,但没找到简单的方法。

我必须手动实施 the entire flow 吗?

Rony,AAD 不支持令牌端点上的跨源调用 - 因此您将无法在 JS 中实现授权代码授权 OAuth 流程(使用代码的令牌请求将失败)。 AAD 支持您描述的场景的隐式授权 OAuth 流(单页应用程序调用 Web api)。

ADAL.js 实现隐式授权流程。如果您在使用它时遇到任何问题,请告诉我们。

希望对您有所帮助。