问题:当我在Web服务方法中添加@Secured注释时,端点被禁用意味着在调用ws端点时我得到找不到端点映射错误。 < / p>
背景:我的Spring Web Service受到安全保护,可以使用UsernameToken和Timestamp对消费者进行身份验证,在我添加@Secured以强制执行基于角色的授权之前,该服务非常正常。使用&lt; sws:interceptors&gt;在spring-ws-servlet.xml中配置拦截器。 框架版本:
这是我正在尝试做的样本。
...
@Endpoint
public class XYZEndpoint implements XYZService{
@Override
@PayloadRoot(localPart = XYZ_REQUEST, namespace = NAMESPACE_XYZ)
//@Secured({"ROLE_XYZ"})
public XYZResponse produceXYZ(XYZRequest request) {
...
return new XYZResponse();
}
}
...
我正在使用global-method-security来启用@Secured注释,如spring docs所述。
...
<security:global-method-security secured-annotations="enabled" />
....
答案 0 :(得分:1)
我遇到了同样的问题并且能够用
修复它<security:global-method-security proxy-target-class="true" secured-annotations="enabled"/>