behaviors 示例

当访问控制过滤(ACF)进行授权检查时,它会从上到下地一个接着一个地测试那些规则直至找到一个相符的。
相符的允许值将立即用于判断用户是否被授权。如果没有一个规则符合,
这就意味着这个用户“没有”被授权,访问控制过滤(ACF)将阻止它进一步的动作请求。
public function behaviors() {
  return [
      'access' => [
          'class' => AccessControl::className(),
          'except' => ['index'], //不做验证的action
          'rules' => [ //具体规则
              [    
                 //action为空,则适用与所有action(except中的除外)
                 
'allow' => true,
                 'roles' => ['@'],
              ],
          ],
      ],
   ];
}


public function behaviors() {
  return [
      'access' => [
          'class' => AccessControl::className(),
          'only' => ['login','logout'], //需验证的action
           'rules' => [ //具体规则
              [    // login,signup游客状态可访问
                  'actions' => ['login','signup'],
                  'allow' => true,
                  'roles' => ['?'],
              ],
              [   //update,delete登录状态可访问
                  'actions' => ['update','delete'],
                  'allow' => true,
                  'roles' => ['@'],
              ],
          ],
      ],
   ];
}


你可能感兴趣的:(behaviors)