一.分配权限给用户,手动修改用户组

自1.5版本以后,用户可以通过页面Special:Userrights管理分配用户权限.即通过审请加入组的方式来赋给用户权限.如果要让组具有比sysop更高的权限那么就需要通过SQL来手工修改了.(通常不需要这样做)

手动操作的话,需要分二步聚来操作.
1.取得用户编号.(用户编号user_id通常来标识这个用户)
2.将用户加入到指定的用户组

#查看用户名称相对应的用户编号
mysql> select user_id from user where user_name = ‘Admin’;
+———+
| user_id |
+———+
|    1 |
+———+
1 row in set (0.00 sec)

#通过用户编号把用户加入到相应的组当中,组名为sysop
mysql> insert into user_groups (ug_user, ug_group) values (1, ’sysop’);
Query OK, 1 row affected (0.00 sec)

#其它相关操作
#查看指定用户拥用少用户组,假设用户编号为1
mysql> select * from user_groups where ug_user = 1;
+———+———-+
| ug_user | ug_group |
+———+———-+
|    1 | sysop |
+———+———-+
1 row in set (0.00 sec)

#查看现有拥有多少个用户组
mysql> select distinct ug_group from user_groups;
+————+
| ug_group |
+————+
| bureaucrat |
| proj    |
| projmgr |
| sysop    |
+————+
4 rows in set (0.02 sec)

#查看组只有多少用户,假设组名为sysop
mysql> select user_id,user_name from user_groups left join user on ug_user= user_id where ug_group = ’sysop’;
+———+———–+
| user_id | user_name |
+———+———–+
|    1 | Admin     |
|    24 | Test    |
+———+———–+
2 rows in set (0.00 sec)

*红字字体表示要替换成你自己的内容
*表名,必须加入前缀
*以上sql语句,可以在phpMyAdmin中执行

二.管理组权限

要编辑(修改)用户组(已存在的组或者添加的组)的访问级别(权限).只需要在LocalSetting.php中添加相应的PHP语句.来设定一个用户组是否持有还是没有某个用户权限.实例如下
1.禁止匿名用户注册账号
$wgGroupPermissions[’*'][’createaccount’] = false;
2.用户必须登入系统后才能编辑页面.即,没有登入的用户不能编辑页面
$wgGroupPermissions[’*'][’edit’] = false;
3.建立一个新的组,并设置这个组拥有删除页面的权限
$wgGroupPermissions[’webadmin’][’delete’] = true;

在这里,有必要解释一下用户,组,权限.以及他们是怎么相互起作用,相互关联的.

*用户和权限并没有直接的关系.用户与权限的关系是通过用户组间接赋给用户的.
*用户和用户组有直接关系.一个用户至少属于一个组,也可以同时属于多个组.用户随着时间和所属组的数量的不同来决定用户的访问级别.比如,用户在登入系 统前属与用户组*,而在登入系统之后属于用户组User.同时用户还可以加入到不同的组,比如加入到sysop组,那么用户就会拥用sysop所具备的所 有权限.
*一个用户组可以有多个用户.用户组和用户是多对多的关系,也就是一个用户可以有多个组,一个组也可以有多个用户.一个组可以开启多种权限.并且把开启的权限交给用户去使用.比如
下面二个用户组
webadmin {delete,new,edit,read,move}
commongroup {read,update}
三个用户:UserA , UserB, UserC
UserA加入了组webadmin
UserB加入了组commongroup
UserC加入了组webadmiin和组commongroup
那么UserA拥有权限delete,new,edit,read,move
那么UserB拥用权限read,update
那么UserC拥用权限delete,new,edit,read,move,update

结合上面的分析,可以知道下面语句的含意
$wgGroupPermissions[’webadmin’][’delete’] = true;
第一对中括号包含的webadmin表示组名
第二对中括号包含的delete表示权限名称
值true或者false,表示是否分配权限给组.如果分配则表示true,如果关闭则用false

三.MediaWiki默认开启的组权限

以MediaWiki1.8为参考.在include/DefaultSetting.php可以找到.
$wgGroupPermissions = array();

// 组*表示所有的访问用户,还没有Loginned的用户
$wgGroupPermissions[’*' ][’createaccount’] = true; //免费注册
$wgGroupPermissions[’*' ][’read’]          = true; //浏览页面
$wgGroupPermissions[’*' ][’edit’]          = true; //编辑页面
$wgGroupPermissions[’*' ][’createpage’]    = true; //新建词条
$wgGroupPermissions[’*' ][’createtalk’]    = true; //新建讨论页面
// 组user表示所有注册用户,并且液态为Loggined
$wgGroupPermissions[’user’ ][’move’]          = true; //移动页面
$wgGroupPermissions[’user’ ][’read’]          = true; //浏览页面
$wgGroupPermissions[’user’ ][’edit’]          = true; //编辑页面
$wgGroupPermissions[’user’ ][’createpage’]    = true; //新建词条
$wgGroupPermissions[’user’ ][’createtalk’]    = true; //新加讨论action=eidt&section=new
$wgGroupPermissions[’user’ ][’upload’]       = true; //上传文件
$wgGroupPermissions[’user’ ][’reupload’]        = true; //重复上传
$wgGroupPermissions[’user’ ][’reupload-shared’] = true;
$wgGroupPermissions[’user’ ][’minoredit’]    = true;
//sysop组,进入该用户的有着最大的管理Wiki站点的权限
$wgGroupPermissions[’sysop’][’block’]           = true; //封闭ip
$wgGroupPermissions[’sysop’][’createaccount’] = true; //创建用户
$wgGroupPermissions[’sysop’][’delete’]       = true; //删除页面
$wgGroupPermissions[’sysop’][’deletedhistory’]   = true; //删除历史
$wgGroupPermissions[’sysop’][’editinterface’] = true; //编辑系统界面Special:Allmessages
$wgGroupPermissions[’sysop’][’import’]       = true; //导入页面
$wgGroupPermissions[’sysop’][’importupload’] = true;
$wgGroupPermissions[’sysop’][’move’]          = true; //移动页面
$wgGroupPermissions[’sysop’][’patrol’]       = true;
$wgGroupPermissions[’sysop’][’protect’]       = true; //保护页面
$wgGroupPermissions[’sysop’][’proxyunbannable’] = true;
$wgGroupPermissions[’sysop’][’rollback’]        = true; //
$wgGroupPermissions[’sysop’][’trackback’]    = true;
$wgGroupPermissions[’sysop’][’upload’]       = true; //上传文件
$wgGroupPermissions[’sysop’][’reupload’]        = true;
$wgGroupPermissions[’sysop’][’reupload-shared’] = true;
$wgGroupPermissions[’sysop’][’unwatchedpages’] = true; //解除监视页面
$wgGroupPermissions[’sysop’][’autoconfirmed’] = true; //
//burreaucrat组,属于这个组的用户,有权限改变组的权限.
$wgGroupPermissions[’bureaucrat’][’userrights’] = true; //用户权限管理

*要关闭默认开启的权限只需要从在LocalSetting.php修改他的值为false比如
$wgGroupPermissions[’*' ][’edit’]          = false;
$wgGroupPermissions[’user’ ][’move’]          = false;

MediaWiki的权限管理相关推荐

  1. 合肥工业大学—SQL Server数据库实验十:用户及其权限管理

    用户及其权限管理 1. 创建登录名Mylog及密码 2. 创建用户user2关联登录名 3. 创建角色role1 4. 对用户user2及角色role1授权 5. 验证用户授权 6. 收回用户权限 1 ...

  2. mongodb权限管理

    说到mongodb就得先谈谈mongodb的用户组,和传统的关系型数据库不一样,mongodb并没有在创建应用时就要求创建权限管理组,所以类似于Robomongo这样的数据库可视化工具在创建conne ...

  3. 一步一步Asp.Net MVC系列_权限管理总结(附MVC权限管理系统源码)

    TZHSWEET:请大家多多反馈问题,我已经在修改中了,已更新版本...... 如果大家遇到数据库附加问题,EF连接字符串问题,请自行配置,如果有bug反馈可以私聊,我的qq:409180955. 项 ...

  4. [Linux] 010 权限管理命令 chmod

    1. 权限管理命令:chmod 命令名称:chmod 命令英文原意:change the permissions mode of a file 命令所在路径:/bin/chmod 执行权限:所有用户 ...

  5. 单一窗口关区备案_单一窗口税费支付权限管理

    企业需先使用法人卡登录"单一窗口"税费支付系统进行业务权限授权后,才可以使用操作员卡查询.支付.打印税单等. "业务权限授权"模块提供税费支付企业相关业务权限( ...

  6. SpringMVC权限管理

    2019独角兽企业重金招聘Python工程师标准>>> 1.DispatcherServlet SpringMVC具有统一的入口DispatcherServlet,所有的请求都通过D ...

  7. 通用权限管理系统组件 (GPM - General Permissions Manager) 权限管理以前我们都是自己开发,可是到下一个系统又不适用,又改,加上人员流动大,管理很混乱...

    为什么80%的码农都做不了架构师?>>>    权限管理以前我们都是自己开发,可是到下一个系统又不适用,又改,加上人员流动大,管理很混乱 Ψ吉日嘎拉 采用通用权限管理系统,这些烦恼就 ...

  8. RBAC新解 - 基于资源的权限管理

    1.什么是角色 当说到程序的权限管理时,人们往往想到角色这一概念.角色是代表一系列可执行的操作或责任的实体,用于限定你在软件系统中能做什么.不能做什么.用户帐号往往与角色相关联,因此,一个用户在软件系 ...

  9. Linux学习笔记—— 权限及权限管理

    权限及权限管理 权限管理: r: w: x: 三类用户: u:属主 g:属组 o:其他用户 chown:改变文件属主(只有管理员可以使用此命令) # chown USERNAME file,... - ...

最新文章

  1. iOS 9应用开发教程之iOS 9新特性
  2. python小项目推荐项目-推荐 10 个有趣的 Python 项目
  3. 洛谷1345 [Usaco5.4]奶牛的电信
  4. 位运算求整数中二进制1的个数
  5. nginx配置与常见错误解决方法
  6. 统信招5000人?难以置信
  7. 超市管理系统java代码_java实现简单超市管理系统
  8. HTML 颜色名:及16进制颜色值:建议收藏!!!
  9. 实用干货!因子分析超全步骤总结
  10. 使用Foxmail 登录qq邮箱使用第三发授权码登录失败
  11. grub引导项修复详解_Grub引导项修复详解
  12. 就是要弄懂你之—— 同步 异步 阻塞 非阻塞
  13. C++的函数声明、函数定义、函数调用
  14. 优维科技将参加微软加速器·上海一期Demo Day
  15. 什么是自动化测试框架?盘点非常好用的10款自动化测试框架。
  16. 08_android_打造通用svg地图自定义组件
  17. ubuntu14.04/16.04 下使用无线网卡fast150us 4.0
  18. 深度学习进阶之路(图像处理)
  19. ubuntu屏幕录制软件
  20. pfSense设置入网门户

热门文章

  1. 海塘里的鱼几乎唾手可得
  2. python语法认为条件x=y=z是合法的-python if条件判断语句
  3. 如何实现GridView分页功能?
  4. exew文件加密:利用破解版exe文件加密器对exe文件进行加密保护(图文教程)
  5. 变态而有趣的微软面试题及答案
  6. prim、迪杰斯特拉与卡鲁斯卡尔算法模板
  7. 变色龙嗅探卡功能_变色龙功能
  8. 解决SmartRF04DD驱动安装问题
  9. KAWA-STAR股票图形分析小工具
  10. NV GTX480对ATI HD5870:另一个视角