【发布时间】:2014-04-20 02:34:38
【问题描述】:
我正在创建一个在 Karaf 中作为 OSGi 容器运行的应用程序,并使用 OSGi HTTP 服务和 Jersey 来公开 REST API。我需要添加 SAML2 身份验证和基于权限的授权。我想在 Shiro 中使用基于注释的方法,因为 spring 似乎正在远离 OSGi。我的问题:
- 带有 SAML jar 的 Shiro 是否适合 OSGi 环境?
- 我想使用 WSO2 作为身份提供者。 Shiro 和 WSO2 一起工作有什么注意事项吗?
- 对于使用注释,Shiro 文档指出我需要放置 AspectJ/Spring/Guice jar - 这在 OSGi 环境中仍然有效吗?我更喜欢 Guice 来满足我所有的 DI 需求。
如果能从 Shiro 用户那里获得一些见解,那就太好了。
更新
我正在使用这个项目:osgi-jax-rs-connector。因此,我使用 Guice-Peaberry 向带有 @Path 或 @Provider 注释的接口注册 OSGi 服务,并且该工具负责将它们转换为 REST 资源。 (类似于 pax-whiteboard?)。我打算将我的过滤器类似地公开为 OSGi 服务,然后将它们与资源一起动态添加。
在之前的项目中,我对 OSGi 中的 AspectJ 感到头疼,我不得不从 Karaf 切换到 vanilla Equinox,因为 Equinox 编织钩子与 Karaf 不一致(看到了来自 Aries 的堆栈跟踪等)。那么,像shiro-jersey 这样的做法会更好吗?
【问题讨论】:
标签: jersey shiro saml-2.0 apache-karaf