【问题标题】:Securing JAX-RS in a bundle在捆绑包中保护 JAX-RS
【发布时间】:2014-03-14 05:05:32
【问题描述】:

我正在 glassfish 中创建一个 REST 服务(它使用 Jersey 作为 JAX-RS 实现)。我想将我的服务部署为运行良好的 OSGI 包,我在清单中添加“Web-ContextPath:”,然后使用带注释的 @javax.ws.rs.ApplicationPath 应用程序对象。这一切都使服务可用,但是,我想使用基于容器的安全性。我发现我可以在 web.xml 中使用安全约束,然后在 sun-web.xml 中进行用户到角色的映射。也就是说,OSGI 包也没有。

清单中是否有一组注释和/或参数,我可以在其中指定应用程序角色、安全约束和角色-用户映射(我认为后者可以全局配置)?

谢谢!

【问题讨论】:

标签: glassfish-3 jax-rs


【解决方案1】:

我会这样尝试:

  1. 使用可自动检测带有特定注释的 OSGi 服务并将它们转换为 REST 资源的库。对于泽西岛,你可以试试这个:https://github.com/hstaudacher/osgi-jax-rs-connector

  2. 使用 OSGi 嵌入式应用服务器,例如提供 OSGi HTTP 服务实现的 jetty(或 tomcat)。

  3. 配置 Jetty/Tomcat。现在这应该很容易了,因为 Jetty/Tomcat 包可以从配置区域获取配置。

使用 Karaf 还可以节省大量时间,它会为您完成所有与打包相关的工作,包括提供具有外部配置的嵌入式 Jetty 等功能。但这完全取决于您。

【讨论】:

    猜你喜欢
    • 2013-01-18
    • 1970-01-01
    • 2014-03-10
    • 1970-01-01
    • 1970-01-01
    • 2010-12-20
    • 2012-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多