ASP中的身份验证.NET MVC 5与OWIN和第三方系统,无需存储凭证



当用户使用[Authorize]属性命中控制器或ApiController时,我想使用第三方系统对用户进行身份验证,但我真的不想创建OWIN需要的关联用户和登录,以便创建保持用户会话授权的cookie,因为我们的第三方系统已经跟踪了。

通常情况下,你会将自己的登录映射到外部登录,但我们的系统,就这样,与这个第三方系统紧密集成,有一堆原因(我不会深入),我们不想这样做。

是否有一个简单的方法来使用ASP。NET MVC5开箱即用,允许您对另一个系统进行身份验证,然后将会话标记为身份验证,而无需在OWIN中找到/注册它们?

抱歉,如果这不是很多继续下去。如果不实现我们自己的IAuthenticationManager,我没有看到任何方法可以做到这一点,但我甚至不确定从哪里开始。

感谢您提供的任何帮助

我相信OAuth是唯一的ASP。NET SSO支持您开箱即用。详细说明第三方身份验证系统的性质会有所帮助,因为为了提供SSO体验,您需要与它集成。

这里有几篇博客文章解释了如何创建自定义OWIN身份验证中间件,这似乎是您需要设置ASP。基于来自外部系统(报头,cookie,令牌等)的一些信息的。NET身份。我使用第二种方法与CA SiteMinder(商业web认证产品)集成。

  • Owin Auth 1
  • Owin Auth 2

我最终通过创建我自己的IUserStore实现及其包装第三方系统的相关类来解决这个问题。

相关内容

最新更新