允许所有人访问Yii2控制器

igetnqfo  于 2022-11-09  发布在  其他
关注(0)|答案(1)|浏览(105)

我有一个项目,我在上面实现了一个现有的Yii项目。问题是新的Yii项目有自己的用户登录和验证。我想允许任何人通过全局权限访问,或者干脆删除所有的验证,使用我自己的页面验证。
在我的站点控制器中,我已修改为:

public function behaviors()
{
    return [
       'access' => [
           'class' => AccessControl::className(),
           'rules' => [
               [
                   'allow' => true,
                   'roles' => ['?'],
               ],
               // ...
           ],
       ],
    ];
}

我已经从这个站点控制器中删除了actionLogin()actionLogout(),但仍然发送到登录页面。

  • *:任何用户,包括匿名用户和已验证用户。
  • ?:匿名用户。
  • @:已验证的用户。

这就是我所补充的:https://github.com/gugoan/economizzer

public function behaviors()
    {
      return [
        'access' => [
            'class' => AccessControl::classname(),
            'only'  => ['index','create','update','delete','view','target','accomplishment','overview','performance'],
            'rules' => [
                [
                    'allow' => true,
                    'roles' => ['*']
                ],
            ]
        ],
        'verbs' => [
            'class' => VerbFilter::className(),
            'actions' => [
                'delete' => ['post'],
            ],
        ],
    ];
   }
dpiehjr4

dpiehjr41#

没有角色*,您需要用途:

'roles' => ['?', '@']

相关问题