【发布时间】:2018-01-02 14:55:05
【问题描述】:
我有一个使用WsFederation 进行身份验证的 .NET MVC 和 WebAPI 应用程序。当用户点击主页索引路由(它是一个内部网络应用程序)时,身份验证过程会立即启动。这工作正常。然而,索引页面本身并不是一个 SPA,它只是一系列指向解决方案中其他应用程序的链接,因此每个链接都由其自己的 MVC 控制器表示,该控制器引导自己的 SPA。
现在,我想获取当前用户访问 WebAPI 端点的ClaimsIdentity,因此我希望能够随请求一起传递不记名令牌。我的问题是 UseWsFederationAuthentication 中间件不产生不记名令牌,只产生一个 cookie。理想情况下,我想生成一个不记名令牌并将其存储为声明,然后将令牌从 MVC 控制器传递给 SPA。
有没有一种方法可以同时创建 cookie 和不记名令牌(分别用于 MVC 和 API)?当用户从主视图中选择特定应用程序时,我想将持有者令牌从相应的 MVC 控制器传递给 SPA。
抱歉,如果之前已经讨论过这个问题,但我发现的任何结果要么没有得到回答,要么有点不清楚。
【问题讨论】:
标签: .net asp.net-mvc asp.net-web-api azure-active-directory ws-federation