热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

YII框架下SRBAC的安装、配置、使用详解

YII框架下SRBAC的安装、配置、使用详解

YII框架下SRBAC的安装、配置、使用详解

 

安装篇:

下载Yii扩展插件Srbac提供下载地址:

http://www.yiiframework.com/extension/srbac/

http://code.google.com/p/srbac/downloads/list

下载完成之后直接将压缩包的文件srbac文件包拷贝到modules文件中,如果没有modules文件,可以创建该文件目录,然后拷贝进去。

配置config.php文件

导入Srbac的默认引导文件,下面红色部分

'import'=>array(

'application.models.*',

'application.components.*',

'application.modules.srbac.controllers.SBaseController',

),

在组件中配置好当前的数据库,已有的不用修改,首次安装需要开启相关的数据库,本人使用MySQL数据库

'db'=>array(

'connectionString'=> 'mysql:host=localhost;dbname=shareweb',

'emulatePrepare' =>true,

'username' => 'root',

'password' => '',

'charset' => 'utf8',

'tablePrefix' =>'share_',

),

加入Srbac所需要的表,进行自动管理(导入所需要的三个基本表)

'authManager'=>array(

'class'=>'application.modules.srbac.components.SDbAuthManager',

'connectionID'=>'db',

'itemTable'=>'share_items',

'assignmentTable'=>'share_assignments',

'itemChildTable'=>'share_itemchildren',

),

注意:(这三个基本表可以随意定义表明,没有特别的要求,建议使用原表命名,加上表前缀)

加载Srbac模块在modules中进行相关的配置

'srbac'=> array(

'userclass'=>'Users', ?????//用户model名字段

'userid'=>'id', ???????????//用户表user_id的标识字段

'username'=>'username', ???//用户表username的标识字段

'delimeter'=>'/', ?????????//控制器名和方法的分割线(在Srbac模块中的体现)

'debug'=>true, ????????????//debug模式为真,Srbac模块失效,debug模式为假,Srbac模块工作

'pageSize'=>10, ???????????//Srbac模块中的分页设置

'superUser' =>'Authority', // Srbac中最高权限管理者名称

'css'=>'srbac.css', ???????//Srbac加载的CSS样式

'layout'=>'application.views.layouts.main', ??//Srbac模块展现的主题模版

'notAuthorizedView'=>'srbac.views.authitem.unauthorized', ??//非自动验证视图

'alwaysAllowed'=>array( ???//默认不分权限管理的action动作

'SiteLogin','SiteLogout','SiteIndex','SiteAdmin',

'SiteError', 'SiteContact',

),

'userActions'=>array('Show','View','List'), ????//User?默认的动作

'listBoxNumberOfLines' => 15, ?????????????????//Srbac模块中的listbox分页

'imagesPath' => 'srbac.images', ???????????????//Srbac模块加载图文件夹

'imagesPack'=>'tango', ????????????????????????//Srbac模块主题的风格noia,tango两种

'iconText'=>true, ?????????????????????????????//图片上显示文本,为真有文本,为假只有图标

'header'=>'srbac.views.authitem.header', ??//Srbac模块视图的view头部

'footer'=>'srbac.views.authitem.footer', ??//Srbac模块视图的view页尾

'showHeader'=>true, ?????//显示视图头部

'showFooter'=>true, ?????//显示视图尾部

'alwaysAllowedPath'=>'srbac.components', ??//默认加载Srbac的核心文件地址

),

),

测试:

http://ahui.shareweb.com/index.php?r=srbac(设置debug为真)进入安装页面会有配置文件的选择,检查完之后勾选复选框,进行安装,安装成功之后会进入Srbac管理页面;

srbac操作界面

使用:

创建task任务组,该组可以管理组内的所有operate动作

srbac操作界面

创建Operation动作操作,创建用户角色Role组(与Task同样)

分配任务管理,将operation?纳入Task中

srbac操作界面

将Tasks纳入用户组中进行管理

srbac操作界面

将用户进行分组管理

srbac操作界面

一切就绪之后,可以开启?debug?为?false?,进行生产模式工作。以上仅供参考,不足之处,还请不惜赐教。


推荐阅读
  • CGroups: 资源管理和控制
    CGroups(Control Groups)是Linux内核提供的一个功能,旨在限制、记录和隔离进程组使用的物理资源,如CPU、内存和I/O等。它通过精细的资源管理,支持现代容器技术如Docker的资源限制需求。 ... [详细]
  • Django框架的使用教程mysql数据库[三]
    Django的数据库1.在Django_test下的view.py里面model定义模型fromdjango.dbimportmodels#Createyourmodelshere ... [详细]
  • SQL注入实验:SqliLabs第38至45关解析
    本文深入探讨了SqliLabs项目中的第38至45关,重点讲解了堆叠注入(Stacked Queries)的应用技巧及防御策略。通过实际案例分析,帮助读者理解如何利用和防范此类SQL注入攻击。 ... [详细]
  • KKCMS代码审计初探
    本文主要介绍了KKCMS的安装过程及其基本功能,重点分析了该系统中存在的验证码重用、SQL注入及XSS等安全问题。适合初学者作为入门指南。 ... [详细]
  • 使用Adobe Illustrator打造独特的家族徽章:牡鹿图腾设计教程
    本文详细介绍了一种基于《权力的游戏》灵感,运用Adobe Illustrator创作独特家族图腾——牡鹿徽章的方法。本教程不仅展示了具体的步骤,还提供了多种技巧,帮助读者创作出既具个人特色又符合设计原则的作品。 ... [详细]
  • 一、数据更新操作DML语法中主要包括两个内容:查询与更新,更新主要包括:增加数据、修改数据、删除数据。其中这些操作是离不开查询的。1、增加数据语法:INSERTINTO表名称[(字 ... [详细]
  • 本文详细介绍了如何通过Percona插件监控MySQL 5.7数据库,包括环境准备、插件安装、配置调整及数据测试等步骤,旨在为用户提供一个高效且稳定的监控解决方案。 ... [详细]
  • 本文介绍了如何通过安装 VirtualBox 和 Vagrant 来快速搭建和管理虚拟机环境。我们将详细探讨如何选择合适的 Box 镜像,以及如何高效地下载、添加和管理这些镜像。 ... [详细]
  • HTML中用于创建表单的标签是什么
    本文将详细介绍HTML中用于创建表单的标签及其基本用法,包括表单的主要特性和常用的属性设置。如果您正在学习HTML或需要了解如何在网页中添加表单,这将是一个很好的起点。 ... [详细]
  • 解决fetch上传图片至微信公众号H5页面的问题
    在近期的一个项目需求中,需要在微信公众号内嵌入H5页面,并实现用户通过该页面上传图片的功能,包括拍摄新照片或从已有相册中选择。前端开发中采用了fetch API进行接口调用,但遇到了上传图片时数据无法正确传递的问题。 ... [详细]
  • 如何将Redis配置为后台服务
    本文介绍了在安装Redis后,如何通过修改配置文件使其以守护进程模式在后台运行,避免因控制台被占用而无法进行其他操作的问题。 ... [详细]
  • Linux 文件系统结构详解
    本文详细介绍了Linux操作系统的文件系统结构,包括其独特的树状目录体系、根目录的作用、目录与磁盘分区的关系等,并对各主要目录的功能进行了深入解析。 ... [详细]
  • 本文详细记录了《PHP与MySQL Web开发》第一章的学习心得,特别关注了PHP的基本构成元素、标记风格、编程注意事项及表单处理技巧等内容。 ... [详细]
  • 本文提供了中国三大主要通信运营商(中国联通、中国电信和中国移动)的官方邮箱服务网站链接,帮助用户快速访问并管理个人邮件,同时介绍了如何设置短信提醒功能。 ... [详细]
  • 本文详细探讨了在不同服务器上运行的PHP程序如何成功连接MySQL数据库的方法,包括常见的连接失败原因及解决方案。 ... [详细]
author-avatar
惬听风吟jyy_802
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有