如题所述
æéé
ç½®æ件:
//è¶ çº§ç®¡çå
'RBAC_SUPERADMIN' => 'admin', //è¶ çº§ç®¡çå称
'ADMIN_AUTH_KEY' => 'superadmin', //è¶ çº§ç®¡çè¯å«
'USER_AUTH_ON' => true, //å¼å¯éªè¯
'USER_AUTH_TYPE' => 1, //éªè¯ç±»å(1ç»å½éªè¯,2å®æ¶éªè¯)
'USER_AUTH_KEY' => 'uid', //ç¨æ·è®¤è¯è¯å«å·
'NOT_AUTH_MODULE' => 'User', //ä¸éªè¯çæ§å¶å¨
'NOT_AUTH_ACTION' => '',//ä¸éªè¯çaction
'RBAC_ROLE_TABLE' => 'lx_role', //è§è²è¡¨å称
'RBAC_USER_TABLE' => 'lx_role_user', //ç¨æ·å ³è表
'RBAC_ACCESS_TABLE' => 'lx_access', //æé表
'RBAC_NODE_TABLE' => 'lx_node', //èç¹è¡¨
å¤å¶ä»£ç
testç¨æ·ç»çæé:
Indexæ§å¶å¨çindexæ¹æ³å 许
Baojiæ§å¶å¨çæææ¹æ³å 许访é®
ä½å½æç»å½è¯¥ç¨æ·ç¹å»baojiæ§å¶å¨ä¸çremarkæ¶ æ¥æ æé æ±é«ææç¹æç¹....
import('ORG.Util.RBAC');
RBAC::saveAccessList();
p($_SESSION);
å¤å¶ä»£ç
ä¸é¢æ¯ç»æ
Array
(
[verify] => 20c1945eae4b9868cbbfd09675f7d76e
[uid] => 5
[username] => test
[last_login_time] => 1376992491
[last_login_ip] => 127.0.0.1
[_ACCESS_LIST] => Array
(
[DEFAULT] => Array
(
[INDEX] => Array
(
[INDEX] => 31
)
[BAOJI] => Array
(
[INDEX] => 40
[REMARK] => 41
[VIEW] => 42
[SUBMIT] => 43
)
)
)
)
å¤å¶ä»£ç
è¿æ¯æéå¤æç代ç
$notAuth=in_array(MODULE_NAME, explode(',', C('NOT_AUTH_MODULE'))) ||
in_array(ACTION_NAME, explode(',', C('NOT_AUTH_ACTION')));
if(C('USER_AUTH_ON') and !$notAuth){
import('ORG.Util.RBAC');
RBAC::AccessDecision()||$this->error('没ææé');
}
//è¶ çº§ç®¡çå
'RBAC_SUPERADMIN' => 'admin', //è¶ çº§ç®¡çå称
'ADMIN_AUTH_KEY' => 'superadmin', //è¶ çº§ç®¡çè¯å«
'USER_AUTH_ON' => true, //å¼å¯éªè¯
'USER_AUTH_TYPE' => 1, //éªè¯ç±»å(1ç»å½éªè¯,2å®æ¶éªè¯)
'USER_AUTH_KEY' => 'uid', //ç¨æ·è®¤è¯è¯å«å·
'NOT_AUTH_MODULE' => 'User', //ä¸éªè¯çæ§å¶å¨
'NOT_AUTH_ACTION' => '',//ä¸éªè¯çaction
'RBAC_ROLE_TABLE' => 'lx_role', //è§è²è¡¨å称
'RBAC_USER_TABLE' => 'lx_role_user', //ç¨æ·å ³è表
'RBAC_ACCESS_TABLE' => 'lx_access', //æé表
'RBAC_NODE_TABLE' => 'lx_node', //èç¹è¡¨
å¤å¶ä»£ç
testç¨æ·ç»çæé:
Indexæ§å¶å¨çindexæ¹æ³å 许
Baojiæ§å¶å¨çæææ¹æ³å 许访é®
ä½å½æç»å½è¯¥ç¨æ·ç¹å»baojiæ§å¶å¨ä¸çremarkæ¶ æ¥æ æé æ±é«ææç¹æç¹....
import('ORG.Util.RBAC');
RBAC::saveAccessList();
p($_SESSION);
å¤å¶ä»£ç
ä¸é¢æ¯ç»æ
Array
(
[verify] => 20c1945eae4b9868cbbfd09675f7d76e
[uid] => 5
[username] => test
[last_login_time] => 1376992491
[last_login_ip] => 127.0.0.1
[_ACCESS_LIST] => Array
(
[DEFAULT] => Array
(
[INDEX] => Array
(
[INDEX] => 31
)
[BAOJI] => Array
(
[INDEX] => 40
[REMARK] => 41
[VIEW] => 42
[SUBMIT] => 43
)
)
)
)
å¤å¶ä»£ç
è¿æ¯æéå¤æç代ç
$notAuth=in_array(MODULE_NAME, explode(',', C('NOT_AUTH_MODULE'))) ||
in_array(ACTION_NAME, explode(',', C('NOT_AUTH_ACTION')));
if(C('USER_AUTH_ON') and !$notAuth){
import('ORG.Util.RBAC');
RBAC::AccessDecision()||$this->error('没ææé');
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2016-02-22
详细的RBAC内容