Spring mvc Spring安全性:如何向各自的用户提供访问相同Restful Web服务的权限
Spring安全问题:-我正在为我的应用程序使用Spring安全性(最新版本3.2.7.RELEASE和Spring Framework版本4.0.9.RELEASE),我有一些情况,我不知道如何分别访问这两个版本。寻找最快可能的反应 场景:我有两种不同类型的用户,其中测试员的权限低于开发人员Spring mvc Spring安全性:如何向各自的用户提供访问相同Restful Web服务的权限,spring-mvc,spring-security,Spring Mvc,Spring Security,Spring安全问题:-我正在为我的应用程序使用Spring安全性(最新版本3.2.7.RELEASE和Spring Framework版本4.0.9.RELEASE),我有一些情况,我不知道如何分别访问这两个版本。寻找最快可能的反应 场景:我有两种不同类型的用户,其中测试员的权限低于开发人员 角色开发人员 角色测试仪 在我的应用程序中,通过用户界面,我拥有开发人员和测试人员通用的更新“分析”功能。我想让开发人员只更新他自己的“分析”(如果他使用DEVELOPER access登录),让TE
- 角色开发人员
- 角色测试仪
选项1:
如果您使用的是Spring 3.1及更新版本,则可以通过扩展RequestMappingHandlerMapping来创建自定义的“getCustomMethodCondition”方法。因此,通过实现方法重载,您可以让它指导用户使用正确的方法
请看以下类似问题的答案:
希望这有助于引导您朝正确的方向前进。谢谢-但是我们如何仅通过XML配置实现这一点?具体是哪一部分?它们都是不同的,做的事情也不同。我的意思是,以上所有功能都应该只通过XML配置来实现。不,所有这些都需要您进行java编码。选项1 XML配置只能指向定制的定制RequestMappingHandlerMapping作为示例。选项2仅在控制器本身的方法中完成。在XML中实现这一点的唯一方法是为不同的角色提供不同的URL,这是您不想要的。
<intercept-url method="PUT" pattern="/user/update/analysis/**"
access="hasRole('ROLE_TESTER')" />
<intercept-url method="PUT" pattern="/user/update/analysis/**"
access="hasRole('ROLE_DEVELOPER')" />
<intercept-url method="GET" pattern="/user/GET/analysis/**"
access="hasRole('ROLE_DEVELOPER')" />
<intercept-url method="GET" pattern="/user/GET/analysis/**"
access="hasRole('ROLE_TESTER')" />
userrole = user.getRole();
if(userrole = "ROLE_DEVELOPER) {
//do this stuff
}
else if(userrole = "ROLE_TESTER") {
// do this stuff
}