2010년 1월 24일 일요일

SVN 권한설정

출처 : http://www.darkfox.info/1489

오늘은 SVN + apache  조합에서 권한 설정을 하려고 합니다.
프로젝트들 마다 Core 로직과 App 부분으로 나뉘어집니다. SVN을 통해서 특정 ID는 특정 구역에 접근하지 못하도록 설정하고 싶은데, 이 부분의 세팅을 하고 싶을 껍니다.
여기서  SVN 설치를 성공을 했다면, 이제 세팅을 해봅시다.
뭐 일단 간단 합니다. http.conf 파일을 수정합니다.
<VirtualHost *:80>
    ServerAdmin webmaster@darkfox.info
    ServerName svn.darkfox.info
    ErrorLog logs/svn.darkfox.info-error_log
    CustomLog logs/svn.darkfox.info-access_log common
    <Location />
        DAV svn
        SVNPath c:/svn
# 여러개의 프로젝트를 등록할꺼면 SVNPath 대신 SVNParentPath를 사용하세요.
#        SVNListParentPath on
#        SVNParentPath c:\svn
        AuthType Basic
        AuthName "Subversion repository"
        AuthUserFile c:/svn/conf/htpasswd
        AuthzSVNAccessFile c:/svn/conf/authz
    #    <LimitExcept GET PROPFIND OPTIONS REPORT>
    #        Require valid-user
    #    </LimitExcept>
        Require valid-user
    </Location>
</VirtualHost>
잘 했는지 봅시다.
http://svn.darkfox.info 를 경로로 사용하겠습니다.
SVNParentPath 를 사용했다면
http://svn.darkfox.info/만든프로젝트폴더 를 사용하시면 됩니다
예를 들면
http://svn.darkfox.info/test-svn 이런식이죠.
SVN 서버에 c:\svn\conf 에 있는 authz 파일을 수정합니다
[groups]
admin = darkfox
devteam = user2
tester = user1
anonymous =
[/]
#그룹으로 처리해도 되고
@admin = rw
[/core]
#읽기전용
@devteam = r
#접근금지
@tester =
[test-svn:/]
#ID를 직접 써도 됩니다.
darkfox = rw
샘플로 만든 파일입니다. 
SVN에 만들어진 경로들을 적당히 등록해주시면 하위 디렉토리들은 자동으로 적용됩니다.
다음엔 HTTPS를 이용한 SSL 보안과 SVN에 대해 다뤄보도록 하겠습니다.
궁금한건 댓글을 달아주시면 짬나는대로 답변해드리겠습니다.

댓글 없음:

댓글 쓰기