热门标签 | 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?,进行生产模式工作。以上仅供参考,不足之处,还请不惜赐教。


推荐阅读
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的详细步骤
    本文详细介绍了搭建Windows Server 2012 R2 IIS8.5+PHP(FastCGI)+MySQL环境的步骤,包括环境说明、相关软件下载的地址以及所需的插件下载地址。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • PHP设置MySQL字符集的方法及使用mysqli_set_charset函数
    本文介绍了PHP设置MySQL字符集的方法,详细介绍了使用mysqli_set_charset函数来规定与数据库服务器进行数据传送时要使用的字符集。通过示例代码演示了如何设置默认客户端字符集。 ... [详细]
  • HDU 2372 El Dorado(DP)的最长上升子序列长度求解方法
    本文介绍了解决HDU 2372 El Dorado问题的一种动态规划方法,通过循环k的方式求解最长上升子序列的长度。具体实现过程包括初始化dp数组、读取数列、计算最长上升子序列长度等步骤。 ... [详细]
  • 本文讨论了Alink回归预测的不完善问题,指出目前主要针对Python做案例,对其他语言支持不足。同时介绍了pom.xml文件的基本结构和使用方法,以及Maven的相关知识。最后,对Alink回归预测的未来发展提出了期待。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
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社区 版权所有