Yii2 用户授权

一.权限控制过滤器ACF定义

1.定义

是一种通过yii\filters\AccessControl类来实现的简单授权方法,适用于仅需简单的存取控制的应用实现ACF的方法

2.实现方法

在控制器中 behaviors方法中设定存取规则。当用户请求一个动作的时候,ACF会检查存取规则,判断该用户是否被允许执行所请求的动作

3.两种角色

?:     未认证的访客用户

@:   已认证用户

4.实例

 

use yii\web\Controller;
use yii\filters\AccessControl;
class SiteController extends Controller
{
    public function behaviors()
    {
        return [
			//access
            'access' => [
                'class' => AccessControl::className(),
				
                'only' => ['login', 'logout', 'signup'], //仅用于'login', 'logout', 'signup',这三个动作
				//rules
                'rules' => [
                    [
						
                        'allow' => true,                    //规则为允许访问
						
                        'actions' => ['login', 'signup'],  //应用于两个动作'login', 'signup'
						
                        'roles' => ['?'],           //应用于所有的guest,以'?'表示
                    ],
                    [
						
                        'allow' => true,         //规则为允许访问
						
                        'actions' => ['logout'],  //应用于一个动作'logout'
						
                        'roles' => ['@'],           //应用于所有的已登录客户,以'@'表示
                    ],
                ],
            ],
        ];
    }
    // ...
}

 

赞(0)
未经允许不得转载:TaKaSa » Yii2 用户授权