1. 下载srbac
下载地址:http://www.yiiframework.com/extension/srbac/
下载完成之后解压,将srbac文件夹放到protected\modules目录中
看文档这步容易忘,直接上去配置main.php会出现《别名 "srbac.SrbacModule" 无效。请确认它指向一个存在的PHP文件》的错误。
2. 修改配置文件main.php
主要有4处: 这里只列出了要配置的项,其他项略过,不要把自己有用的删了!!!!
2.1 配置数据库
如果你这步已经做完,可略过
1
2
3
4
5
6
7
8
9
10
11
12
|
'components' => array (
// uncomment the following to use a MySQL database
'db' => array (
'connectionString' => 'mysql:host=localhost;dbname=mydb' ,
'emulatePrepare' => true,
'username' => 'root' ,
'password' => 'admin' ,
'charset' => 'utf8' ,
),
),
|
如果是其他数据库,看文档进行配置。
2. 2 配置components
1
2
3
4
5
6
7
8
9
|
'components' => array (
'authManager' => array (
'class' => 'CDbAuthManager' , // Manager 的类型
'connectionID' => 'db' , //使用的数据库组件
'itemTable' => 'items' , // 授权项目表 (默认:authitem)
'assignmentTable' => 'assignments' , // 授权分配表 (默认:authassignment)
'itemChildTable' => 'itemchildren' , // 授权子项目表 (默认:authitemchild)
),
),
|
其中后面三项必须填,不要看有默认值,不填可以安装成功rbac,但是进入之后会报错
2.3 配置modules
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
'modules' => array (
'srbac' => array (
'userclass' => 'User' , //default: User 这里对应你的用户表,如果你的表名不是User,要修改
'userid' => 'user_ID' , //default: userid 这里对应你的用户表中的用户id,如果不对应,要修改
'username' => 'username' , //default:username 这里对应你的用户表中的用户名,如果不对应要修改
'delimeter' => '@' , //default:-
'debug' =>true, //default :false
'pageSize' =>10, // default : 15
'superUser' => 'Authority' , //default: Authorizer
'css' => 'srbac.css' , //default: srbac.css
'layout' => 'application.views.layouts.main' , //default: application.views.layouts.main,
//must be an existing alias
'notAuthorizedView' => 'srbac.views.authitem.unauthorized' , // default:
//srbac.views.authitem.unauthorized, must be an existing alias
'alwaysAllowed' => array ( //default: array()
'SiteLogin' ,
'SiteLogout' ,
'SiteIndex' ,
'SiteAdmin' ,
'SiteError' ,
'SiteContact'
),
'userActions' => array ( 'Show' , 'View' , 'List' ), //default: array()
'listBoxNumberOfLines' => 15, //default : 10
'imagesPath' => 'srbac.images' , // default: srbac.images
'imagesPack' => 'noia' , //default: noia
'iconText' =>true, // default : false
'header' => 'srbac.views.authitem.header' , //default : srbac.views.authitem.header,
//must be an existing alias
'footer' => 'srbac.views.authitem.footer' , //default: srbac.views.authitem.footer,
//must be an existing alias
'showHeader' =>true, // default: false
'showFooter' =>true, // default: false
'alwaysAllowedPath' => 'srbac.components' , // default: srbac.components
// must be an existing alias
),
),
|
2.4 配置import
1
2
3
|
'import' => array (
'application.modules.srbac.controllers.SBaseController' ,
),
|
3. 安装
path/to/application/index.php?r=srbac
安装成功之后如何使用,请看Yii-srbac使用指南(成功安装之后)