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 实现隐式授权流程。如果您在使用它时遇到任何问题,请告诉我们。
希望对您有所帮助。
一段时间以来,我有一个 .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 实现隐式授权流程。如果您在使用它时遇到任何问题,请告诉我们。
希望对您有所帮助。