2012-12-06 132 views
2

我想在我的Asp.Net MVC应用程序上实现/启用SSO(单点登录)。在Asp.Net MVC应用程序中启用/创建单点登录(单点登录)

请考虑以下以下几点的善意的建议:

  • 我有3个Asp.Net MVC应用中,我想启用SSO他们。

  • 我知道我可以通过ADFS(活动目录联合服务),实现SSO,但我不希望使用它作为我希望我的外部用户(最终用户)在通过所有我的3个应用程序登录SSO。

  • (纠正我,如果我错了这里,因为据我所知,ADFS可用于Active Directory用户(指公司范围内用户)和外部终端用户不,如果我们可以用ADFS为外部用户,请不要让我知道我们应该如何实现它。

  • 我也不想用OpenID

  • 我想建立SSO自己的这3个应用程序,并要启用SSO在他们之间

  • 我想在这3个应用程序中构建可用于生产环境的SSO,用于 。

您能否就我关于如何通过考虑以上所有要点来实现SSO的问题向我提出您的建议?

在此先感谢,欢迎提出所有建议!

回答

1

您的应用程序是否位于同一个域中?如果是这样,你可以使用Forms Authentication Across Applications

+0

我可以在同一个域中部署/设置www.site1.com和www.site2.com吗? (我真的不深入网络的东西),但是有可能吗?如果可以在同一个域中部署2个不同的应用程序并且可以通过不同的域名访问(如www.site1.com和www.site2.com),那么它将解决我的问题..请在其上建议.. – nunu

+1

@nunu,要做到这一点,你需要一个共同的领域 - 例如www.site1.mydomain.com和www.site2.mydomain.com。然后,您必须将FormsAuthentication cookie的域设置为公共域(mydomain.com),以便可以在这些站点之间共享cookie。 – Joe

+0

我最后一个问题是,是否有可能以这种方式进行表单身份验证(活动目录用户)可以使用窗口身份验证和表单身份验证可以由外部用户使用!(最终用户)..是否有可能治疗一个应用程序使用两种身份验证机制?窗体和窗口认证。 – nunu

1

建议使用IdentityServer(http://thinktecture.github.com/Thinktecture.IdentityServer.v2/),ADFS的替代品,它使用相同的身份验证协议(WS-Federation),但允许您插入您的自定义会员供应商。

此外,IdentityServer支持ADFS缺乏的一些功能,并且具有很强的扩展性。

+0

我可以信任Thinktecture.IdentityServer.v2并用于企业应用程序吗? –

+0

当然,是的。 –