Zend Framework-阻止模型运行


Zend Framework - Prevent a model from running

我希望每次运行模型时都能进行安全检查。如果检查失败,那么我希望阻止查询执行。我已经创建了一个扩展Zend_Db_Table_Abstract的MyWork_Model_Base,然后我的模型扩展了MyWork_Model_Base。我认为我应该在init()中执行此检查;但是,如果模型失败,我该如何阻止它运行?

感谢

已经有了这样的类-Zend_Acl

您可以创建资源(guest、授权用户、管理员)、角色(guest,授权用户、管理)和创建"acl表"。

<?php
  $acl = new Zend_Acl();
?>

在创建了所有必要的规则后,您可以检查是否允许用户使用以下代码运行模型:

<?php
   if ($acl->isAllowed('admin','admin-news','create')
?>

正在检查是否允许角色为"admin"的用户在资源"admin news"中"create"。作为资源,您可以加入模块和控制器,操作将是最后一个参数。

应该在Controller_Plugin中提供检查,您可以在其中更改运行操作。