PmWiki 그룹 패스워드 정책

PmWiki  Authentification


개요

PmWiki는 기본적으로 "유저 기반"의 권한시스템이 아니라 "패스워드 기반" 권한 시스템을 가지고 있다. 예를 들면, 페이지의 수정 권한을 얻기 위해 "아이디/패스워드"가 필요한 것이 아니라, 해당 권한을 얻기 위한 "패스워드"만이 필요하다. (이 부분이 "유저기반"의 로그인 시스템에 익숙한 우리로서는 생소한 부분인데, 개인이나 소규모 그룹이 사용하기에는 괜찮은 것 같다.) 유저별로 권한을 관리하지 않기 때문에 PmWiki의 권한관리는 무척 간단할 수 있다.

권한의 종류

PmWiki는 기본적으로 read, edit, attr, upload의 권한을 따로 관리한다.
각각은
read : 읽기 권한
edit : 수정 권한
upload : 업로드 권한
attr : 권한관리 권한(다시 말해서, 위의 read, edit, upload 패스워드를 바꿀 수 있는 권한)

이 네가지 권한을 페이지별, 그룹별, 싸이트 전체로 설정해주는 것으로 PmWiki의 기본적인 권한설정은 끝난다.

싸이트 전체(Site-wide) 권한 설정

위키 싸이트 전체를 아우르는 권한 설정은 local/config.php에서 이루어진다.
이곳에서 지정할 수 있는 권한은 다음과 같다.

$DefaultPasswords['edit'] = crypt('edit_password');
$DefaultPasswords['read'] = crypt('read_password');
$DefaultPasswords['upload'] = crypt('upload_password');
$DefaultPasswords['attr'] = crypt('attr_password');

$DefaultPasswords['admin'] = crypt('secret_password'); //잉?

위에서 언급했던 네가지 권한에 대한 전체 싸이트 권한 설정은 쉽게 짐작할 수 있다. 페이지에 필요한 권한의 종류는 네가지라고 했다. 그럼 admin은 어떤 권한일까? admin 권한은 슈퍼유저 권한이다. 그리고 이 권한은 lock 되어있는 권한에 접근할 수 있는 유일한 권한이다.

*PmWiki의 기본설정
admin과 upload는 초기값으로 lock 되어있다.
Main과 PmWiki 그룹은 attr 권한이 lock되어있다.
Site 그룹의 페이지들은 Site.SideBar를 제외하고 edit권한이 lock 되어있다.
Site.SideBar 페이지는 admin이나 site-wide edit 권한이 필요하다. (다시 말해서, site-wide edit 비번이 설정되지 않은 경우엔 그냥 수정가능하다.)

페이지 권한 설정

페이지별로 권한 설정을 하려면 attr action을 이용한다. 예를 들면, 다음과 같다.
http://domain.com/Group/Page?action=attr

해당 명령으로 열리는 페이지에는 read, edit, attribute, upload 패스워드를 설정할 수 있는 양식이 보여진다. 이 양식에 패스워드를 입력하고 Save하면 해당 권한에 패스워드가 설정된다. 이 때 특수한 명령어를 입력할 수도 있다. 명령은 다음과 같다.

clear
: 입력된 패스워드를 삭제하고, 초기값으로 되돌린다.

@nopass
: 그룹이나 싸이트 패스워드가 걸려있어도 무시하고 패스워드 없이 사용토록 한다.

@lock
: 잠근다. admin 패스워드로만 접근가능하다.

@_site_edit, @_site_read, @_site_admin, @_site_upload
: 싸이트 전체 권한 비밀번호에 일치시킨다.


그룹 권한 설정
페이지들의 모임인 그룹에 권한을 설정하는 것은 조금 까다롭다. 그룹 권한 설정은
GroupAttribute라는 페이지를 이용하여 권한을 설정한다. 예는 다음과 같다.
http://domain.com/pmwiki/Group/GroupAttribute?action=attr

혼동을 줄 수 있어 덧붙이자면, 여기서 Group은 그룹명을 치환하고 GroupAttribute는 그대로 입력한다. 이 명령으로 열리는 페이지의 권한은 Group에 속하는 모든 페이지에 해당한다. 여기서도 역시 특수한 명령어를 쓸 수 있다. 사용법은 페이지 권한과 동일하므로 생략한다.

clear
@nopass
@lock
(@_site_edit 등은 온라인 매뉴얼에 언급되어있지 않다. 실험해봐야할듯)

어떤 패스워드가 우선하나?

어떤 권한에 대해서 전체싸이트 권한, 그룹권한, 페이지 권한이 중복되어있을 경우 어떤 패스워드가 이길까. 정답은, 페이지 > 그룹 > 초기값, 그리고 admin 패스워드는 만능키다.

더 알아둘 것

PmWiki가 패스워드 기반의 권한관리를 하긴 하지만, 함께 제공되는 플러그인인 AuthUser를 이용하면 유저 기반 권한관리도 가능하다. http://www.pmwiki.org/wiki/PmWiki/AuthUser 문서를 참고할 것.

참고문서

http://www.pmwiki.org/wiki/PmWiki/Passwords
http://www.pmwiki.org/wiki/PmWiki/PasswordsAdmin

Posted by 망고

07 21, 2009 00:46 07 21, 2009 00:46
Response
No Trackback , No Comment
RSS :
http://www.shimminkyu.com/tc/rss/response/1045

Trackback URL : http://www.shimminkyu.com/tc/trackback/1045

Leave a comment
« Previous : 1 : ... 93 : 94 : 95 : 96 : 97 : 98 : 99 : 100 : 101 : ... 969 : Next »

Stay Foolish, Stay Hungry.

- 망고

www.flickr.com
This is a Flickr badge showing public photos and videos from mangolog. Make your own badge here.

Site Stats

Total hits:
345057
Today:
6
Yesterday:
139