【发布时间】:2012-04-26 06:45:27
【问题描述】:
上下文: 我在 JBoss AS7 社区版本上运行我的应用程序。 我正在使用来自 jboss 的 JaxRS 的 Java API。 (不确定它是否与 RestEasy 相同?!)这是我的 maven 依赖项
<dependency>
<groupId>org.jboss.spec.javax.ws.rs</groupId>
<artifactId>jboss-jaxrs-api_1.1_spec</artifactId>
<scope>provided</scope>
</dependency>
我正在使用 JaxRSActivator 在应用程序中启用 JAX-RS,如下所示。据我了解,这取代了在 web.xml 中进行 servlet 映射的需要
@ApplicationPath("/rest")
public class JaxRsActivator extends Application {
/* class body intentionally left blank */
}
我创建了一个 EJB (SSB) 并将其公开为一个 Restful 服务,如下所示"
@Path("/Items")
@Stateless
@TransactionAttribute(TransactionAttributeType.REQUIRES_NEW)
public class ItemMgmtServiceBean {
@GET
@Path("/{id:[0-9][0-9]*}")
@Produces("text/xml")
public Item findItem(@PathParam("id")long itemId)
上面的 REST 服务在 JBoss AS7 上完美运行。请注意,到目前为止,我不必使用 web.xml。
现在我想保护这项服务。我想在此服务中使用编程安全性来查找主体名称(根据我的业务逻辑)。
RestEasy 文档说我不应该打开 EJB 的上下文参数。
<context-param>
<param-name>resteasy.role.based.security</param-name>
<param-value>true</param-value>
</context-param>
但是它没有解释我应该在 web.xml 中使用什么,或者我是否需要将 web.xml 用于基于 EJB 的 restful 服务。
问题:
我想使用摘要式身份验证。我需要采取哪些步骤才能启用此功能? .
我需要添加 web.xml 还是可以更改 JaxRSActivator 以启用安全性?
如果我需要 web.xml,我应该删除 JaxRSActivator 吗?
web.xml中应该配置什么?
感谢您的帮助。
【问题讨论】:
标签: security jax-rs resteasy jboss7.x ws-security