سطح دسترسی RBAC در Yii2 (قسمت سوم)

سطح دسترسی RBAC در Yii2 (قسمت سوم)

 

مرحله ی آخر RBAC استفاده از آن در پروژه می باشد

برای بررسی سطوح دسترسی برای اکشن ها
در کنترلر به صورت مجوز ها را بررسی می کنیم

public function behaviors()
{
    return [
        'access' => [
            'class' => AccessControl::className(),
            'rules' => [
                [
                    'allow' => true,
                    'actions' => ['index'],
                    'roles' => ['managePost'],
                ],
                [
                    'allow' => true,
                    'actions' => ['view'],
                    'roles' => ['viewPost'],
                ],
                [
                    'allow' => true,
                    'actions' => ['create'],
                    'roles' => ['createPost'],
                ],
                [
                    'allow' => true,
                    'actions' => ['update'],
                    'roles' => ['updatePost'],
                ],
                [
                    'allow' => true,
                    'actions' => ['delete'],
                    'roles' => ['deletePost'],
                ],
            ],
        ],
    ];
}

 

سطح دسترسی RBAC در Yii2 (قسمت سوم)

 

می توانیم مشخص کنیم هر اکشن نیاز به چه مجوزی دارد .
مثلا برای اکشن view باید مجوز viewPost وجود داشته باشد .
همچنین می توانید با کد زیر داشتن مجوز کاری را برای کاربر بررسی کنید.

\Yii::$app->user->can('updateOwnPost')

برای کد بالا بررسی می شود که کاربر آیا توانایی ویرایش نوشته های خود را دارد یا نه.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *