PmWiki/PmWiki的权限
来自站长百科
权限设置的过程[ ]
[[pmwiki]]-2.2.0-beta68.tgz.tar 解压缩放到[[web]]目录下 把i18n-all.zip 解压缩覆盖原文件夹里面的文件就行了! 注意xlpage-utf-8.php比较下那个新用那个 pmwiki.php文件 官方说明不建议改名 新建一个index.php
内容如下
<?php include('pmwiki.php'); 在local 文件夹下新建一个 config.php 可以参考docs 目录下的sample-config.php <?php if (!defined('PmWiki')) exit(); XLPage('ZhCn','PmWikiZhCn.XLPage'); $WikiTitle = "我的维科"; //$PageLogoUrl = "http://www.example.com/mylogo.gif"; //图片logo的链接 //Admin([[超级用户]])密码在config.php 中设置 $DefaultPasswords['admin'] = crypt('admin'); //[[网站]][[管理员]]密码 //Site(全站通用)密码在config.php 中设置 $DefaultPasswords['edit'] = crypt('edit'); //编辑页面密码 $DefaultPasswords['read'] = array(crypt('dell')); //浏览页面密码 $DefaultPasswords['attr'] = crypt('attr'); //属性更改密码 $EnableUpload = 1; //是否允许上传附件 $DefaultPasswords['upload'] = crypt('upload'); //上传附件密码
提示:其中的密码如果用明文方式不安全.
在任何pmwiki路径后面加上?action=crypt //添加用户和密码 include_once('scripts/authuser.php'); //_添加一个用户 //注意这里不像[[baidu]]搜索出来的那样添加了已经变了 $AuthUser['User_Name'] = crypt('User_Password'); //这样没用了 进入http://www.example.com/index.php?n=SiteAdmin.AuthUser //首先你要有admin权限进入这页 编辑这个篇[[wiki]] # Examples: # alice: (:encrypt password:) # bob: (:encrypt passoword:) //就这样就添加用户了保存后,就变成这样了 # alice: $1$0gcdAN1a$HTdEAXyYYo8Hc9/Xv30Yz1 # bob: $1$wSP2R80i$sJ593ERCmTtjm3Fk26HCV1 然后再编辑config.php //这里只付给权限 $DefaultPasswords['read'] = 'id:*'; //给所有注册用户赋予读取的权限 $DefaultPasswords['edit'] = 'id:aya'; //只给id为aya的用户赋予edit 权限 $DefaultPasswords['attr'] = 'id:gan';
- 要改变页面的attr 在当前页面的地址栏后面添加 ?action=attr 就可以进行attr管理,但是得首先有attr权限,这个wiki支持中文很不好特别是在windows环境下也许是因为win用gb2312 这个wiki用utf-8的原因,好像只能用英文链接,要想显示中文中文 ,不过还好这个pmwiki做的效果不错,因为它没有数据库,速度很快。中文wiki使用mediawiki要更好一些。
- pmwiki 权限分四个等级 Admin(超级用户) > Page(页面) > Group(组) > Site(全站),也就是说如果一个页面Page 设置了权限,那么Group 权限设置和Site 权限设置都将失效,如果Page 中没有进行权限设置,那么Group 权限将对Page 起作用,在没有Page 和Group 权限设置的情况下Site 权限才对Page 起作用.如果Page/Group/Site 都没有对相应权限做设置则无需密码.Admin 超户可以对任何权限进行操作.
- Admin(超级用户)密码在config.php 中设置,$DefaultPasswords['admin'] = crypt('admin_password');/网站管理员密码
- Site(全站通用)密码在config.php 中设置
$DefaultPasswords['read'] = array('read_password'); /浏览页面密码 $DefaultPasswords['edit'] = crypt('edit_password'); /编辑页面密码 $DefaultPasswords['attr'] = crypt('attr_password'); /属性更改密码 $EnableUpload = 1; /是否允许上传附件 $DefaultPasswords['upload'] = crypt('upload_password'); /上传附件密码
- Group(组)密码在组的GroupAttributes(组属性)页面中设置
http://www.example.com/pmwiki.php?n=GroupName. GroupAttributes?action=attr 命令建立一个组属性Page , 这是一个特殊的页面,里面不用写任何内容, 只要设置它的页面属性就等于整个组的属性了.
- Page(页面)在当前页面设置 http://www.example.com/pmwiki.php?n=GroupName.PageName?action=attr 命令编辑当前页权限.
- 每个操作也可以有多个密码,在config.php写成数组,例如:
$DefaultPasswords['read'] = array(crypt('alpha'), crypt('beta')); 如果在属性设置的时候要设置多个密码,可以在密码中间用空格格开.
- 密码加密,在config.php 中的密码如果用明文方式存放并不安全,可以对任何字符串进行加密后再写入config.php 文件中.在任何pmwiki路径后面加上 ?action=crypt 然后输入你想要的密码,会返回一串加密后的字符串,把这串字符串代替上面的明文密码起到加密作用.
- 两个特殊密码nopass 和clear
要删除Page 或者Group 的密码不能用留空或者输入空格的方式修改,留空或输入空格是表示保留原来密码.这时候我们要用到pmwiki 的两个特殊密码nopass 和clear .比如用nopass 作为Page 的密码,则表示无需密码就可对Page 进行操作;如果用clear 作为密码输入,则表示放弃控制权限,交由Group 控制.如果Group 的密码为clear 则由Site 控制.
- 添加用户和密码,在config.php 中加入一行
include_once('scripts/authuser.php'); 然后把用户名和密码用以下格式添加在config.php 中 $AuthUser['User_Name'] = crypt('User_Password');
- 给用户赋予操作权限
$DefaultPasswords['edit'] = 'id:*'; /给所有注册用户赋予编辑的权限 $DefaultPasswords['edit'] = 'id:bart,nancy'; /只给id为bart 和 nancy 的用户赋予edit 权限 $DefaultPasswords['edit'] = array(crypt('Zebra'), 'id:*'); /给所有知道Zebra 这个公用密码或所有注册用户予编辑权限 $DefaultPasswords['edit'] = array(crypt('Zebra'), 'id:bart,nancy'); /给bart 和 nancy 或者所有知道Zebra 这个密码的人赋予修改的权限
参考来源[ ]
Pmwiki使用手册导航 | ||
---|---|---|
|