安装MediaWiki之后,用户的权限设置是完全开放的,需要做一些设置,对匿名用户的设置可以从修改LocalSettings.php入手,下载该文件,然后按照希望设置的用户权限,在文件中插入对应的设置语句,存储后再上传回去就可以了。
通过下面介绍的设置方法,可以阻止匿名用户注册,又或者阻止他们编辑,要求注册后才能够编辑,还可以设定注册前匿名用户可以查看那些页面。 而在设置新用户的注册之后,管理人员仍可通过特殊页面手动为其他人创建用户。而用户的权限,则可以通过特殊页面内的User rights management进行管理。
LocalSettings.php用户权选设置相关选项
$wgGroupPermissions['group']['right'] = true /* 或者 false */;
group代表用户组,right 是权限。如果是true ,就说明该用户组拥有该项权限,如果是false,就说明该用户组没有该项权限。
如果一个用户属于多个用户组,那么该用户拥有这些用户组中最高的权限。所有用户(包括未注册用户)包含在*用户组中,所有注册的用户包含在user用户组中。如果需要设置匿名用户不能编辑但是注册用户可以编辑,可以采取这样的方法,首先禁止所有用户编辑:
$wgGroupPermissions['*']['edit'] = false;
然后允许注册用户编辑:
$wgGroupPermissions['user']['edit'] = true;
// Implicit group for all visitors
$wgGroupPermissions['*']['createaccount'] = true;
$wgGroupPermissions['*']['read'] = true;
$wgGroupPermissions['*']['edit'] = true;
$wgGroupPermissions['*']['createpage'] = true;
$wgGroupPermissions['*']['createtalk'] = true;
$wgGroupPermissions['*']['writeapi'] = true;
//$wgGroupPermissions['*']['patrolmarks'] = false; // let anons see what was patrolled
// Implicit group for all logged-in accounts
$wgGroupPermissions['user']['move'] = true;
$wgGroupPermissions['user']['move-subpages'] = true;
$wgGroupPermissions['user']['move-rootuserpages'] = true; // can move root userpages
//$wgGroupPermissions['user']['movefile'] = true; // Disabled for now due to possible bugs and security concerns
$wgGroupPermissions['user']['read'] = true;
$wgGroupPermissions['user']['edit'] = true;
$wgGroupPermissions['user']['createpage'] = true;
$wgGroupPermissions['user']['createtalk'] = true;
$wgGroupPermissions['user']['writeapi'] = true;
$wgGroupPermissions['user']['upload'] = true;
$wgGroupPermissions['user']['reupload'] = true;
$wgGroupPermissions['user']['reupload-shared'] = true;
$wgGroupPermissions['user']['minoredit'] = true;
$wgGroupPermissions['user']['purge'] = true; // can use ?action=purge without clicking "ok"
$wgGroupPermissions['user']['sendemail'] = true;
// Implicit group for accounts that pass $wgAutoConfirmAge
$wgGroupPermissions['autoconfirmed']['autoconfirmed'] = true;
// Users with bot privilege can have their edits hidden
// from various log pages by default
$wgGroupPermissions['bot']['bot'] = true;
$wgGroupPermissions['bot']['autoconfirmed'] = true;
$wgGroupPermissions['bot']['nominornewtalk'] = true;
$wgGroupPermissions['bot']['autopatrol'] = true;
$wgGroupPermissions['bot']['suppressredirect'] = true;
$wgGroupPermissions['bot']['apihighlimits'] = true;
$wgGroupPermissions['bot']['writeapi'] = true;
#$wgGroupPermissions['bot']['editprotected'] = true; // can edit all protected pages without cascade protection enabled
// Most extra permission abilities go to this group
$wgGroupPermissions['sysop']['block'] = true;
$wgGroupPermissions['sysop']['createaccount'] = true;
$wgGroupPermissions['sysop']['delete'] = true;
$wgGroupPermissions['sysop']['bigdelete'] = true; // can be separately configured for pages with > $wgDeleteRevisionsLimit revs
$wgGroupPermissions['sysop']['deletedhistory'] = true; // can view deleted history entries, but not see or restore the text
$wgGroupPermissions['sysop']['deletedtext'] = true; // can view deleted revision text
$wgGroupPermissions['sysop']['undelete'] = true;
$wgGroupPermissions['sysop']['editinterface'] = true;
$wgGroupPermissions['sysop']['editusercss'] = true;
$wgGroupPermissions['sysop']['edituserjs'] = true;
$wgGroupPermissions['sysop']['import'] = true;
$wgGroupPermissions['sysop']['importupload'] = true;
$wgGroupPermissions['sysop']['move'] = true;
$wgGroupPermissions['sysop']['move-subpages'] = true;
$wgGroupPermissions['sysop']['move-rootuserpages'] = true;
$wgGroupPermissions['sysop']['patrol'] = true;
$wgGroupPermissions['sysop']['autopatrol'] = 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;
$wgGroupPermissions['sysop']['upload_by_url'] = true;
$wgGroupPermissions['sysop']['ipblock-exempt'] = true;
$wgGroupPermissions['sysop']['blockemail'] = true;
$wgGroupPermissions['sysop']['markbotedits'] = true;
$wgGroupPermissions['sysop']['apihighlimits'] = true;
$wgGroupPermissions['sysop']['browsearchive'] = true;
$wgGroupPermissions['sysop']['noratelimit'] = true;
$wgGroupPermissions['sysop']['versiondetail'] = true;
$wgGroupPermissions['sysop']['movefile'] = true;
#$wgGroupPermissions['sysop']['mergehistory'] = true;
// Permission to change users' group assignments
$wgGroupPermissions['bureaucrat']['userrights'] = true;
$wgGroupPermissions['bureaucrat']['noratelimit'] = true;
// Permission to change users' groups assignments across wikis
#$wgGroupPermissions['bureaucrat']['userrights-interwiki'] = true;
// Permission to export pages including linked pages regardless of $wgExportMaxLinkDepth
#$wgGroupPermissions['bureaucrat']['override-export-depth'] = true;
#$wgGroupPermissions['sysop']['deleterevision'] = true;
// To hide usernames from users and Sysops
#$wgGroupPermissions['suppress']['hideuser'] = true;
// To hide revisions/log items from users and Sysops
#$wgGroupPermissions['suppress']['suppressrevision'] = true;
// For private suppression log access
#$wgGroupPermissions['suppress']['suppressionlog'] = true;
* The developer group is deprecated, but can be activated if need be
* to use the 'lockdb' and 'unlockdb' special pages. Those require
* that a lock file be defined and creatable/removable by the web
* server.
# $wgGroupPermissions['developer']['siteadmin'] = true;
阻止新用户注册
• $wgGroupPermissions['*' ]['createaccount'] = false;
注意:阻止新用户注册,此时管理员可以到特殊页面上的用户登录页面(Special:UserLogin)里,输入希望为其建立帐户的某人的用户名 与电子邮件地址,然后点击通过eMail(by email)按钮递交,系统将创建帐号并将随机生成的密码发送到指定email里。
设定匿名用户可看的页面
$wgWhitelistRead = array (”Main Page”, “Special:Userlogin”, “Wikipedia:Help”);
匿名用户只能看到Main Page、登录页面以及帮助页面。
修改其他的例子:$wgWhitelistRead = array (”首页”, “Special:Userlogin”, “某某Wiki:Help”);
设置匿名用户权限
• $wgGroupPermissions['*' ]['createaccount'] = false;
• $wgGroupPermissions['*' ]['read'] = true;
• $wgGroupPermissions['*' ]['edit'] = false;
• $wgGroupPermissions['user' ]['createaccount'] = true;
• $wgGroupPermissions['user' ]['edit'] = true;
设置匿名用户可读内容
• $wgWhitelistRead = array( "Main Page", "Special:Userlogin" );
• $wgGroupPermissions['*' ]['read'] = false;
注意:具体需要对应自己的站点链接,而对于多字节语言的MediaWiki,例如中文首页链接index.php?title=%E9%A6%96%E9%A1%B5,这首页中文字符PHP可能无法正确解码。需要利用urldecode()函数转换一下,写为:
• $wgWhitelistRead = array( urldecode("%E9%A6%96%E9%A1%B5") ;
禁止匿名用户编辑
• #$wgGroupPermissions = array();
• $wgGroupPermissions['*createaccount'] = false;
• $wgGroupPermissions['*']['read'] = true;
• $wgGroupPermissions['*']['edit'] = false;
“编辑”标签仍会显示,但匿名用户点击时会被提示要求进行登录。
等式右侧的值决定各组成员的权限。左侧第一方括号内的’*'代表包括匿名用户在内的所有成员。登录用户控制存放在’user’组,这些将综合决定user_groups数据表中的成员权限。
这些设置取代了以前的wgWhitelistAccount和wgWhitelistEdit。
如此设定后,用户连首页和登录页面也看不到了。
本程序用于Ucenter和
mediawiki
的用户同步登录
本程序是
mediawiki
的extension,基于
mediawiki
1.24测试
本程序不仅仅是用户数据的同步,还实现了用户的同步登录和登出
新增
用户权限
的设计
本程序修改了官方扩展的代码,升级了uc_client为discuz3.2使用的1.6.0
本扩展
mediawiki
官方文档:
复制DiscuzXSSO文件夹到extensions目录
在LocalSetting中最后添加如下代码:
$wgGroupPermissions['*']['createaccount'] = false;//禁止注册
require_once "$IP/extensions/DiscuzXSSO/DiscuzXSSO.php";
$wgAuth = new Aut
MediaWiki
创建与使用指南一、搭建
MediaWiki
(可直接跳至第三点)(一)Wiki系统简介1. 什么是wiki系统?2. 如何选择wiki系统?(二) HDwiki系统——基于中文的维基引擎(三)[
MediaWiki
](https://www.
mediawiki
.org/wiki/Template:Main_page/zh)简介及搭建1. 安装环境2. 安装
MediaWiki
一、搭建
MediaWiki
(可直接跳至第三点)
最近又戳戳戳地跳到了自建wiki的摸索中了,没办法,先生实验室建设需要一个
一.分配权限给用户,手动修改用户组
自1.5版本以后,用户可以通过页面Special:Userrights管理分配
用户权限
.即通过审请加入组的方式来赋给
用户权限
.如果要让组具有比sysop更高的权限那么就需要通过SQL来手工修改了.(通常不需要这样做)
手动操作的话,需要分二步聚来操作.
1.取得用户编号.(用户编号user_id通常来标识这个用户)
2.将用户加入到指...
您可以使用maintenance/changePassword.php维护脚本来重置一名用户的密码。
您必须在命令行下运行该脚本。换句话说,请登录到安装wiki的服务器,然后进入命令行提示符。进入安装目录,然后进入maintenance子目录。运行下列命令:
php changePassword.php --user=someuser --password=somepass
这里可见的...
权限的设定 <br /> 在哪里设定? <br />权限的设定应该在localsettings.php中添加、修改代码。
<br />(
mediawiki
的初始权限设定保存在includes/defaultsettings.php中)<br />如何设定权限? <br /><br />
权限设定代码如下:
<br />$wgGroupPermissions['用户组']['权限名称'] = 取值;<br />
用户组:设定权限的目标范围,*代表所有用户组,user代表登录用户,sysop代
环境准备:Linux centos 7.9
MediaWiki
是一个开源的在线文档编辑分享系统,支持图片,
MediaWiki
是以PHP语言编写的,因此部署它是需要一个PHP运行环境的。根据官网对部署环境的要求,Linux上部署
MediaWiki
需要LAMP环境(即Linux+Apache+Mysql+PHP)。
一、目 的:为
Mediawiki
添加
用户权限
控制
二、实现途径:通过自定义名字空间(custom namespaces)实现
三、说 明:1. 本文仅对
mediawiki
-1.16.1进行测试过,其他版本是否适合,有待进一步测试
2. 如果要实现该权限控制,必须要求所有链接均要加上其对应所在的名字空间名称
原贴:http://www.kankanblog.com/read.php/125.htm
Mediawiki
页面权限
设置
:禁止游客编辑,禁止注册
Mediawiki
版本:1.5.8以下代码增加的位置:LocalSettins.php因为require_once( "includes/DefaultSettings.php" )中初始化过,所以下面语句必须放在此语句之后。禁止新用户注册在Local