gpt4 book ai didi

authentication - 使用 Spring Web 服务添加 Spring Security @Secured 注释会禁用 Web 服务端点

转载 作者:行者123 更新时间:2023-12-04 04:30:09 25 4
gpt4 key购买 nike

问题:当我在 Web 服务方法中添加 @Secured 注释时,端点被禁用意味着我在调用 ws 端点时遇到未找到端点映射错误。

背景:我的 Spring Web 服务是安全的,可以使用 UsernameToken 和 Timestamp 对消费者进行身份验证,在我添加 @Secured 以强制执行基于角色的授权之前,这绝对可以正常工作。拦截器使用 在 spring-ws-servlet.xml 中配置。框架版本:

  • spring ws: 2.0.5.RELEASE
  • spring ws 安全:2.0.5.RELEASE
  • Spring 安全:3.0.7.RELEASE
  • wss4j: 1.5.12

这是我正在尝试做的示例。

端点:


...

@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 文档所述。

spring-ws-servlet.xml


...

<security:global-method-security secured-annotations="enabled" />

....

最佳答案

我遇到了同样的问题并且能够用

修复它
<security:global-method-security proxy-target-class="true" secured-annotations="enabled"/> 

关于authentication - 使用 Spring Web 服务添加 Spring Security @Secured 注释会禁用 Web 服务端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14948007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com