WS-FED身份验证(ADFS)和ASP.NET身份UserManager

Jas*_*son 5 asp.net-mvc adfs claims-based-identity ws-federation asp.net-identity

如果我使用一些错误或模糊的术语,我会道歉.如果我这样做,纠正我.

我有一个相当新的ASP.NET 4.6 MVC 5应用程序,它通过WsFederationMicrosoft ADFS服务器使用声明身份验证.这意味着我公开LogIn操作控制器,也不管理webapp中的用户和密码.当用户导航到我的站点时,如果他们未经过身份验证,则会将他们重定向到他们登录的ADFS服务器,然后重定向回来.

我需要存储一些提交的离线使用声明 - 他们的显示名称和电子邮件地址.我的想法是利用创建该集合os AspNet*表的ASP.NET Identity包.据我了解,它旨在支持本地用户(使用密码)和外部用户(使用外部密码管理)来自Facebook,Google,Github等提供商.我是否认为ADFS属于该类别?

成功验证后重定向回我的网站,我究竟在哪里放置检查用户是否在AspNet*表中输入的逻辑?cookie验证和WsFederation的配置和连线目前在该Startup.ConfigureAuth(IAppBuilder app)方法中发生.我想我应该使用从继承的类IdentityUserIdentityDbContext<ApplicationUser>然后调用方法UserManagerUserStore.

我花了几个小时搜索如何将外部登录与应用程序"配置文件"表关联起来的示例无济于事.我可能刚刚使用了错误的术语.到目前为止,我发现的每个示例都涉及模拟或修改登录和注册操作方法附带的默认VS模板,或者只是连接FB和Google.没有任何东西可以处理ADFS 和/或从外部源绑定到配置文件表.

任何代码示例或至少链接到文章/资源将不胜感激.

nzp*_*mad 0

是的,ADFS 是外部提供商,但请注意,它使用 WS-Fed,而社交登录都是 OAuth。

看看代码!MVC 5 应用程序与 Facebook、Twitter、LinkedIn 和 Google OAuth2 登录 (C#)

您会看到它有一个链接机制。

另外OWIN:具有多个身份验证选项的 ASP.NET MVC 应用程序,其中包含添加 ADFS 的示例。