来自ASP.net/MVC中第三方的自定义身份验证

时间:2010-10-25 13:11:38

标签: asp.net asp.net-mvc authentication forms-authentication

我正在尝试为我正在MVC中工作的项目包装一个自定义身份验证系统供内部使用。

我们目前有一个合作伙伴,通过表单身份验证来托管外部网站。此站点的某些部分重定向到我们内部站点上的某个部分。与此重定向一起传递的是id和会话ID。他们提供了一个Web服务,然后我们可以验证该用户是否在原始站点上进行了身份验证。

有没有办法将其包装到ASP.net中的某种自定义提供程序或身份验证属性中?我更愿意创建可重用的东西,与在同一环境中工作的其他人分享。

谢谢!

修改的 认证方法不是我想要改变的。我只是在寻找最好的方法来包装它,以便它可以在内部重复使用。我最初在想一个自定义成员资格提供程序,但它实际上并不是用户名/密码类型。

2 个答案:

答案 0 :(得分:1)

即使没有用户名和密码,您也可以使用自定义成员资格提供程序。您只需要实现MembershipProvider。我只会将代码放入ValidateUser(字符串用户名,字符串密码)。使用uaername字符串传递用户ID,使用密码字符串传递会话ID ...进行验证,然后传回true或false。您可以根据需要添加更多功能。

答案 1 :(得分:0)

您可以查看专为此设计的单点登录(SSO)解决方案,尤其是SAML绑定,例如Shibboleth。