【发布时间】:2016-07-25 02:15:31
【问题描述】:
我正在研究创建一个将在 Karaf 上运行的安全应用程序。作为一个从未使用过 JAAS(只与 Shiro 合作过)的人,我很难弄清楚如何在 JAAS 中实际实现任何东西。谷歌并没有多大帮助,因为它每次看到任何与 JAAS 相关的东西时都会偏爱 Spring、JavaEE 和 Struts :) 我想我已经弄清楚如何使用 Karaf 管理领域和登录模块,但我对剩下的任务有一些疑问:
我实际上如何为我的应用程序创建会话?应用程序的一部分将使用 CXF REST 服务进行通信,这看起来很简单,但我还将构建一个由 Wicket 支持的 Web 前端(我猜测是通过 pax-web)。在这种情况下,如何让 JAAS 使用会话以避免持续登录?
在 Karaf 中使用 JAAS 的基于权限的安全性。使用 Shiro,我已经习惯了基于权限(或基于操作)的授权,其中一个主题具有多个角色,并且这些角色具有您实际验证的权限。似乎 JAAS 不支持这个开箱即用。有没有办法实现这一点,再次在 Karaf 中使用 JAAS。我应该在哪里指定每个角色的权限?
这似乎是一个愚蠢的问题,但请尽量不要笑得太厉害,我真的觉得我现在正沉浸在 JAAS 中。执行身份验证检查的正确方法是什么?我看到 AccessController 和 Subject.doAsPriviledged 在不同的上下文中使用,我很难发现有什么区别(如果有的话)。
【问题讨论】:
标签: osgi wicket jaas apache-karaf