상세 컨텐츠

본문 제목

Tortoise SVN 폴더별 권한 설정

Work/Study

by 물빛미르 2012. 7. 31. 12:42

본문

728x90

같은 프로젝트 내에서 계정에 따라 폴더 접근 권한을 다르게 설정하기 위한 방법이다.

 

프로젝트 내 conf 폴더 아래 있는 authz, passwd, svnserv.conf 파일을 이용해서 설정할 수 있다.

 

우선 passwd 에 계정을 생성한다.

[users]

dev1 = 111

dev2 = 222

design = 333

 

이제 authz 파일을 열어서 전체를 접근할 그룹과 특정 폴더만 접근할 그룹을 나눠서 설정해주고, 폴더 권한을 지정해야 한다.

프로젝트 내 폴더 구조가 아래와 같다.

이중 design 계정은 view만 접근하고 dev1, dev2 계정은 전체 접근이 가능하도록 설정해보자.

 

test (프로젝트)

- module

- lib

- view

 

authz 파일을 열고 우선 그룹을 지정한다.

[groups]

allaccess = dev1, dev2

someaccess = design

 

[/]

@allaccess = rw

 

[test:/view]

@someaccess = rw

 

접근권하는 rw는 read,write 이고 r은 읽기전용.

아무것도 주지 않으면 접근 불가가 된다.

예를 들어 lib 폴더에는 접근을 못하게 하고 싶다면

[test:/lib]

@someaccess =

이렇게만 주면 접근 권한이 없어진다.

 

처음 권한 설정을 할때 디자이너는 전체에는 접근을 할 수 없도록 해야 한다는 생각에

[/]

@allaccess = rw

@someaccess =

 

라고 줬었는데, 그랬더니 프로젝트 내부에 전혀 접근을 할 수 없는 사태가 벌어졌다.

(ㅡㅅㅡ);

 

자~ 요렇게 설정을 하면 기본 설정은 다 끝났는데, 이걸 svn에서 적용하도록 하기 위해서 svnserve.conf 파일을 수정해 줘야 한다.

주석으로 장황하게 처리된 구문 중 authz-db = authz 라는 구문을 찿아서 주석을 해제해줘도 되고, 직접 타이핑 해줘도 된다. 타이핑시엔 오타주의!!

 

특정폴더만 접근권한을 주었기 때문에 dev1, dev2 계정은 svn://주소/test 라고 입력하면 전체 프로젝트를 받을 수 있고, view만 접근 가능한 design 계정은 svn://주소/test/view 라고 입력해서 다운을 받아야 한다. 전체 접근은 권한이 없기때문에 권한 오류가 출력된다 ^^

 

p.s) authz에서 폴더 지정시 프로젝트명 부분은 프로젝트 별로 authz 파일을 따로 쓴다면 생략해도 된다.

 

728x90

'Work > Study' 카테고리의 다른 글

[오라클] 데이터베이스 링크  (0) 2013.03.13
[오라클] 문자열 조작 함수 정리  (0) 2013.02.07
HipHop for PHP : Move Fast 번역본 퍼옴.  (0) 2012.07.02
Windows Azure - 2012.06.21  (0) 2012.06.21
Windows Azure - 2012.06.20  (0) 2012.06.20

관련글 더보기