目前我正在实现我自己的 ACL 系统。为了限制数据库操作,我重写了类中的beforeSave
函数。ActiveRecord
我正在将我的函数实现为默认模型类。
class Event extends ACL
{
...
}
到目前为止,一切都很好。在我的数据库中,我有一个权限表,我在其中存储与特定表上的操作相关的用户、组、创建者或自我角色。我使用来自yii的标准RBAC进行基于用户级别的页面限制,因此我不必检查每个页面加载时的所有权限。ACL 行为仅用于与数据库相关的目的。就像用户想查看 post/someid/view 并且他无权获得该特定帖子的访问权限一样。
举例角色:Group Who:4 Action:insert Table:Event
现在 id 为 4 的组有权插入到事件表中。这部分工作正常,现在我希望能够限制某些用户在我的数据库中搜索表。如果“角色”是“用户”,则相同。在文档中我找不到像 beforeFind 之类的东西。
有人知道我可以在哪里侵入系统并控制让我们调用它beforeFind功能吗?