如何在Spring安全单元测试中运行具有不同角色的每一行代码?使用@WithMockUser
时,只能使用所选权限运行整个方法,但我想运行具有不同权限的每行代码,因此我需要一个无注释解决方案。
答案 0 :(得分:1)
基于该问题:How to perform RunAs using method security with Spring MVC 3.2 and Spring Security 3.1
这似乎有效:
SecurityContextHolder.getContext().setAuthentication(new PreAuthenticatedAuthenticationToken(null, null, Arrays.asList(new SimpleGrantedAuthority("ROLE_XYZ"))));