【发布时间】:2012-05-10 13:56:05
【问题描述】:
我尝试在我的 MediaWiki 上创建一些权限。我关注了这个tutorial,但是没有用...
我尝试创建一个 Staff 组,该组有权在 Staff 命名空间中读取、编辑、创建和删除页面。 经典用户不应看到此命名空间中的所有页面。
这是 LocalSettings.php 文件:
# Namespaces
define('NS_STAFF', 103);
$wgExtraNamespaces[NS_STAFF] = 'Staff';
# Groups
define('G_STAFF', 'Staff');
# Default Group Rights
# Anonyms
$wgGroupPermissions['*']['read'] = true;
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['create'] = false;
# User
$wgGroupPermissions['user']['read'] = true;
$wgGroupPermissions['user']['edit'] = false;
$wgGroupPermissions['user']['create'] = false;
# Staff
$wgGroupPermissions[G_STAFF]['read'] = true;
$wgGroupPermissions[G_STAFF]['edit'] = true;
$wgGroupPermissions[G_STAFF]['create'] = true;
# Groups Rights
$wgNamespaceProtection[NS_STAFF] = array(G_STAFF);
能解释一下我做错了什么吗?
更新
我将我的 Mediawiki 升级到版本 1.19.0。 进入命名空间“Staff”的页面对于用户组仍然可见,但不可编辑。
如何阻止对特定命名空间的页面的访问?
这是 LocalSettings.php 文件:
#Groups
define('G_PROGRAMMER', 'Programmer');
define('G_ADMIN_SYSTEM', 'AdminSystem');
define('G_DESIGNER', 'Designer');
define('G_STAFF', 'Staff');
# Default Group Rights
# Anonyms
$wgGroupPermissions['*']['read'] = true;
$wgGroupPermissions['*']['edit'] = false;
$wgGroupPermissions['*']['create'] = false;
# User
$wgGroupPermissions['user']['read'] = true;
$wgGroupPermissions['user']['edit'] = false;
$wgGroupPermissions['user']['create'] = false;
# Staff
$wgGroupPermissions[G_STAFF]['read'] = true;
$wgGroupPermissions[G_STAFF]['edit'] = true;
$wgGroupPermissions[G_STAFF]['create'] = true;
# Groups Rights
$wgNamespaceProtection[NS_STAFF] = array('staff-edit');
$wgGroupPermissions[G_STAFF]['staff-edit'] = true;
【问题讨论】:
-
你能解释一下你想要发生什么以及实际发生了什么吗?
-
实际上,进入命名空间“Staff”的页面对每个人都是可见的,但只能由 Staff 组编辑。是否可以阻止简单用户访问员工页面?还是需要我扩展?
-
我认为这应该迁移到ServerFault。
标签: permissions namespaces mediawiki