我有函数A()和函数B()。 A()仅被授权给ROLE_A,而B()可以被任何人运行。
但是,B()本身需要运行A()。但是当作为非ROLE_A用户运行时,这给了我一个访问被拒绝的异常。
这是让这个开始工作的好方法吗?我想在B()中调用A()调用来调用添加和删除ROLE_A但是我不想污染该方法,而且我不知道这是否是犹太洁食。
我正在修改的另一个想法是使用某种建议来注释B(),这些建议可以自动添加角色而不会污染函数。再说一遍,我不知道这是否是犹太洁食。
那些遇到过相同设计的人的建议是什么?
答案 0 :(得分:1)
这个用例非常奇怪。在我看来,你应该不尝试在运行中添加/删除角色。
您可以做的是创建C
私有方法,其中包含A
和B
所需的代码,然后从{{1}调用C
方法}}和A
将根据需要进行保护!