JBOSS 7.1,保护EJB3 Web服务

时间:2014-04-26 14:46:53

标签: java web-services java-ee jboss7.x ejb-3.1

我有一个EJB Web服务,该服务使用具有数据库登录配置的安全域进行保护,其中每个用户都映射到一组角色

我的问题是JBOSS拒绝任何没有第一个Web服务方法角色的用户访问!!!

示例:

@SecurityDomain("MyWS")
@Stateless
@WebService(serviceName = "MyService")
@WebContext(authMethod = "BASIC", urlPattern = "/*", secureWSDLAccess = false)
@RolesAllowed("CLIENT")
public class MyService {

      @RolesAllowed("R1")
      public void method1() { ... }

      @RolesAllowed("R2")          
      public void methdo2() { ... }

      @RolesAllowed("R3")
      public void methdo3() { ... }

}

现在如果我有一个角色为Client,R1和R2的用户,一切正常,但如果我的用户只有Client和R3,那么用户访问总是被JBOSS拒绝,我必须将用户分配到角色" R 1"太

奇怪的是,"强制性" role是第一种方法在类中的作用,我的意思是如果我切换了method1和method2的位置,那么" R2"将是所有用户都应分配到

的强制性角色

怎么样,我在这里缺少什么?

0 个答案:

没有答案