Сheck if user is authenticated in RBAC UserGroupRule.

This commit is contained in:
vova07
2014-05-02 11:11:36 +03:00
parent 0880656be3
commit 2098c6243f

View File

@@ -416,6 +416,7 @@ You can create set up the RBAC data as follows,
```php ```php
namespace app\rbac; namespace app\rbac;
use Yii;
use yii\rbac\Rule; use yii\rbac\Rule;
/** /**
@@ -427,15 +428,16 @@ class UserGroupRule extends Rule
public function execute($user, $item, $params) public function execute($user, $item, $params)
{ {
$group = \Yii::$app->user->identity->group; if (!Yii::$app->user->isGuest) {
$group = Yii::$app->user->identity->group;
if ($item->name === 'admin') { if ($item->name === 'admin') {
return $group == 1; return $group == 1;
} elseif ($item->name === 'author') { } elseif ($item->name === 'author') {
return $group == 1 || $group == 2; return $group == 1 || $group == 2;
} else {
return false;
} }
} }
return false;
}
} }
$rule = new \app\rbac\UserGroupRule; $rule = new \app\rbac\UserGroupRule;