针对ADFS的身份验证,针对sql server

时间:2016-02-13 17:45:20

标签: c# asp.net authentication authorization adfs

经过几天的搜索,阅读和反复试验,我肯定需要一些帮助。

情况: 我需要使用MVC创建Web应用程序,其中用户使用ADFS对AD进行身份验证。但他们不希望将角色和进一步的信息存储到AD中。所以我需要在其他地方阅读和存储这些信息。我的第一个想法是使用VS创建新Web应用程序时设置的相同基础架构,并选择"个人用户帐户"。

到目前为止我做了什么

我的问题: 是否可以使用ADFS对用户进行身份验证,并通过使用/扩展ASP.NET Identity Framework来检索有关登录用户的更多信息(如角色,其他属性(例如,部门))?有人有一个很好的链接吗?

我很乐意提供任何帮助。

2 个答案:

答案 0 :(得分:2)

无需在您的网络应用中完成工作......

您可以让ADFS从SQL数据库中获取声明信息。

添加属性存储..
属性存储类型设置为 SQL
输入显示名称连接字符串

然后,在向依赖方添加声明时,请选择声明类型 “...自定义规则”并让您输入的查询从您的数据库中获取属性。

TechNet

中有更多细节,有一个非常好的walkthru

答案 1 :(得分:0)

您遇到的问题是您必须通过某种主键将AD声明映射到ASP.NET标识。

这里的好链接:Code! MVC 5 App with Facebook, Twitter, LinkedIn and Google OAuth2 Sign-on (C#)

(使用ADFS 4.0(Server 2016),您将能够使用SQL DB进行身份验证和授权。)