bedezign\yii2\audit\components\Access::getAccessControlFilter PHP Method

getAccessControlFilter() public static method

public static getAccessControlFilter ( ) : array
return array
    public static function getAccessControlFilter()
    {
        return ['class' => AccessControl::className(), 'rules' => [['allow' => self::checkAccess()]]];
        /*
        $audit = Audit::getInstance();
        if ($audit->accessUsers === null && $audit->accessRoles === null && $audit->accessIps === null) {
            // No user authentication active, skip adding the filter
            return [
                'class' => \yii\filters\AccessControl::className(),
                'rules' => [['allow' => true]]
            ];
        }
        
        $rule = ['allow' => 'allow'];
        
        if (!empty($audit->accessIps)) {
            // Add allowed ips
            $rule['ips'] = $audit->accessIps;
        }
        
        if (!empty($audit->accessRoles)) {
            // Add allowed roles
            $rule['roles'] = $audit->accessRoles;
        }
        
        if (!empty($audit->accessUsers)) {
            $users = $audit->accessUsers;
            // Specific users only? Use callback
            $rule['matchCallback'] = function () use ($users) {
                return in_array(Yii::$app->user->id, $users);
            };
        }
        
        return ['class' => \yii\filters\AccessControl::className(), 'rules' => [$rule]];
        */
    }

Usage Example

Ejemplo n.º 1
0
 /**
  * @return array
  */
 public function behaviors()
 {
     return ['access' => Access::getAccessControlFilter()];
 }