.Net和Java应用程序之间的单点登录

.Net和Java应用程序之间的单点登录,java,.net,iis,glassfish,single-sign-on,Java,.net,Iis,Glassfish,Single Sign On,我们在IIS上使用asp和asp.net编写的遗留应用程序使用基于表单的数据库身份验证(而不是AD)。我们正在glassfish上编写一个新的Java应用程序,我们需要一个单一的登录解决方案来验证用户,这样他们就可以在这两个应用程序之间无缝移动,而无需再次登录 这个问题有没有安全的解决方案 看看spring安全性(如果您不反对在java应用程序中使用spring的话)。它们支持几十种解决方案,可能是您在ASP应用程序中使用的任何解决方案 或者,您可以使用ApacheShiro,它也支持任何安全性

我们在IIS上使用asp和asp.net编写的遗留应用程序使用基于表单的数据库身份验证(而不是AD)。我们正在glassfish上编写一个新的Java应用程序,我们需要一个单一的登录解决方案来验证用户,这样他们就可以在这两个应用程序之间无缝移动,而无需再次登录


这个问题有没有安全的解决方案

看看spring安全性(如果您不反对在java应用程序中使用spring的话)。它们支持几十种解决方案,可能是您在ASP应用程序中使用的任何解决方案

或者,您可以使用ApacheShiro,它也支持任何安全性方面的东西


我建议您查看其中一个是否支持您在旧版应用程序上已经使用的功能,让java应用程序支持您现有的安全机制可能比尝试将新的安全层向后移植到ASP中更容易。

我认为从长远来看,最好的方法是确定SSO技术/实现,然后更改遗留应用程序以使用它。我知道更改旧版应用程序可能会很痛苦,但如果可行的话,你应该这样做


更新


你不必完全重写你的旧应用程序。如果您能识别出一种也支持传统语言的SSO技术,您可能只需重新编写登录页面和(可能)访问控制和/或本地帐户管理即可。

流程是什么?用户将首先访问新的Java web应用程序还是旧的ASP应用程序?这个链接有一个通用的想法:你的.NET应用程序在登录后如何跟踪用户身份?同意。实际上,我们已经决定将遗留应用程序重写为java,以防止出现这种情况和其他一些障碍。