控制过滤器ACF
yii2 2017-11-12 03:18:02

 

1、 actionIndex不使用权限过滤,其他action均使用,排除法

PHP Code复制内容到剪贴板
  1. use yii\filters\AccessControl;  
  2.   
  3.  
  4. public function behaviors()  
  5. {  
  6.     return [  
  7.         'access' => [  
  8.             'class' => AccessControl::className(),  
  9.             'except' => ['index'],  
  10.             'rules' => [  
  11.                 [  
  12.                     'allow' => true,  
  13.                     'roles' => ['@'],  
  14.                 ],  
  15.             ],  
  16.         ],  
  17.     ];  
  18. }  

 

 

2、指定action

PHP Code复制内容到剪贴板
  1. 'access' => [  
  2.     'class' => AccessControl::className(),  
  3.     'rules' => [  
  4.         [  
  5.             // 当前rule将会针对这里设置的actions起作用,如果actions不设置,默认就是当前控制器的所有操作  
  6.             'actions' => ['index''view''create''update''delete''signup'],  
  7.             // 设置actions的操作是允许访问还是拒绝访问  
  8.             'allow' => true,  
  9.             // @ 当前规则针对认证过的用户; ? 所有方可均可访问  
  10.             'roles' => ['@'],  
  11.         ],  
  12.     ],  
  13. ],  

 

3、假设index操作只允许post请求才可以访问

PHP Code复制内容到剪贴板
  1. 'access' => [  
  2.     'class' => AccessControl::className(),  
  3.     'rules' => [  
  4.         [  
  5.             // 当前rule将会针对这里设置的actions起作用,如果actions不设置,默认就是当前控制器的所有操作  
  6.             'actions' => ['view''create''update''delete''signup'],  
  7.             // 设置actions的操作是允许访问还是拒绝访问  
  8.             'allow' => true,  
  9.             // @ 当前规则针对认证过的用户; ? 所有方可均可访问  
  10.             'roles' => ['@'],  
  11.         ],  
  12.         [  
  13.             'actions' => ['index'],  
  14.         'allow' => true,  
  15.             // 设置只允许操作的action  
  16.             'verbs' => ['POST'],  
  17.         ],  
  18.     ],  
  19. ],  

 

 

 

 

 

 

 

 

本文来自于:http://www.yoyo88.cn/study/yii2/199.html

Powered by yoyo苏ICP备15045725号