码迷,mamicode.com
首页 > 其他好文 > 详细

访问权限控制

时间:2015-11-11 13:12:05      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:

对于一个网站来说,访问权限控制包含2部分,

1:控制是否要用户登录,才可以访问到网站。

(在YII框架里,使用UserIdentity类来用户名,密码方式登录,再通过Yii::app()->user->login(UserIdentity实例)/logout()方法来登录和退出)

 

2:控制登录后的用户,符合哪些条件才能访问某些控制器或者某些方法。

(简单的访问控制过滤可以重载CController::filters 方法,这种方式基于用户名,客户IP地址,和访问类型)

    public function filters()
    { return array(
            accessControl‘,//这里是给filter命名,取个自己认识的名字
        );
    }

//之后,设置的accessControl这个过滤器将作用于该controller类里的每个public function action****

过滤器的具体授权规则通过重载CController::accessRules方法来指定

public function accessRules()
    {
        return array(
            array(‘deny‘,
                ‘actions‘=>array(‘create‘, ‘edit‘),
                ‘users‘=>array(‘?‘),
            ),
            array(‘allow‘,
                ‘actions‘=>array(‘delete‘),
                ‘roles‘=>array(‘admin‘),//这里通过roles角色来控制用户是否可以访问actionDelete,使用到基于角色的权限管理技术
            ),
            array(‘deny‘,
                ‘actions‘=>array(‘delete‘),
                ‘users‘=>array(‘*‘),
            ),
        );
    }

 

访问权限控制

标签:

原文地址:http://www.cnblogs.com/gaoqin-web/p/4955670.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!