2012-12-04 30 views
3

我在我的web应用程序中实现了spring security。现在我所有的服务都是安全的,只能由授权用户调用。一切工作在网络上,但如果我通过JMX或石英弹簧引发方法抛出异常“访问被拒绝”。现在我创建了“假”用户,并在jmx方法开始时记录他,但我不认为它是一个好的解决方案。我应该怎么做?如何在春季安全中授权系统调用

回答

3

最简单的方法是将应用程序划分为一组“内部”的bean,它们只是实现这些方法,还有一个“外部”bean集合向Web呈现“内部”操作。安全注释可以放在“外部”bean上,JMX/Quartz驱动的访问可以直接在“内部”bean(或其他合适的代表)上执行。

+0

感谢您的回答,但是当我有共享方法时,我在“外部”和“内部”操作中使用什么? –

+0

@Konrad这些与概念上的基本工具有关吗?如果是这样,他们很容易分解出来,并且应该被分解出来。否则,它们表明你已经有了设计不一致的问题,需要花费一些时间重构来获得连贯性。有时候可能需要重新设计(如果确实如此,那么就这样吧;第一次设计就很难)。 –