0

几年前我在没有任何框架的情况下使用 servlet 进行过 Web 开发,所以我对 Web 服务很熟悉。现在我的工作需要我修改 3 个现有的 Spring MVC 应用程序以将 3 个登录屏幕合二为一。一个应用程序在 Tomcat 5 上运行,两个在不同版本的 Tomcat 6 上运行。

并且公司决定用.net来代替Java,所以聘请了.net公司写了一个界面[frame],有一个单一的登录界面,但是frame里面的内容还是由3个老的Java spring app生产的。这是他们替换 Java 应用程序的第一步。

因此更改后,用户将从 .net 中的首页登录,并使用用户 ID/密码从数据库中获取角色和其他信息,不同的角色 [客户、员工、代理] 将显示不同的菜单和内容,然后.net应用程序将调用Java传递它具有的信息[用户名,角色,uid,GUID ..],Java程序将调用不同的现有Spring应用程序来显示内容。

所以我的问题是:如何使用我从.net 应用程序获得的信息 [用户名、角色、uid、GUID ..] 存储到 Spring 应用程序中,因此当他们检查用户角色时,他们可以找到它. 换句话说,在旧的 Spring 应用程序中,每个应用程序都会检查数据库以获取此信息并将其存储在某个对象中,现在 .net 将为它们执行此步骤,所以我应该生成哪些对象来模拟 Spring 安全步骤?

详情见图表:

在此处输入图像描述

我检查了以下问题,但没有一个回答我的问题:

Spring Security 2.0.6 调用 UserDetailService 的 loadUserByName 方法

Spring Security:绕过登录表单

但有一个词脱颖而出:UserDetailsS​​ervice!

那是我应该生成的对象吗?如果是这样,我应该将它存储在哪里以便 Spring 应用程序可以找到它?

4

1 回答 1

1

如果我错了,请纠正我,但我在这里扣除的是:

3 Spring Applications 使用 Spring Security 对用户进行身份验证

调用需要绕过 Spring Security 模块的 Spring 应用程序的新 .NET 接口。

如果是这种情况,您所要做的就是修改每个应用程序的 Spring Security 模块以删除身份验证,因为这将由 .NET 接口完成。

以下是如何在 Spring Security 中设置身份验证的示例:

http://spring.io/guides/gs/securering-web/

这里是参考文档,它将帮助您在 spring 上实现删除身份验证并以您需要的方式实现它。

http://docs.spring.io/spring-security/site/docs/3.2.4.RELEASE/reference/htmlsingle/

希望有帮助。

于 2014-07-17T03:03:16.723 回答