상세 컨텐츠

본문 제목

SVN 계정 생성 및 폴더 별 권한 부여

SVN, Git

by 개념잡이 2021. 12. 30. 21:32

본문

 

1. SVN 계정 생성

- SVN 위치 : /home/svn/repo

- 설정파일 위치 : /home/svn/repo/conf

- 계정생성 설정파일 : passwd

$ cd /home/svn/repo/conf
$ vi passwd

// passwd 파일 내용
### This file is an example password file for svnserve
### Its format is similar to that of svnserve.cof. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.

[users]
# harry = harryssecret
# sally = sallyssecret

# 여기에 계정 생성( id=password )
admin = admin1234
user = user1234
 

2. SVN 권한 설정

- SVN 위치 : /home/svn/repo

- SVN 폴더 구조

  /
  /webproject1
  /webproject2
 

- 설정파일 위치 : /home/svn/repo/conf

- 권한 설정파일 : authz

 

[디렉토리 경로]

*= // 모든 사용자의 모든 권한 해제

*=r // 모든 사용자의 read 권한만 부여

*=w // 모든 사용자의 write 권한만 부여

*=rw // 모든 사용자의 read/write 권한만 부여

 

@권한그룹명 = [r/w] // 특정 그룹에 권한 부여

사용자아이디 = [r/w] // 특정 아이디에 권한 부여

 

// *은 모든 사용자를 의미 기본적으로 루트 경로에 대해 모든 사용자의 권한을 해제(*=)해야함, 또한 모든 사용자는 svnserve.conf 파일의 anon-access=none(인증되지 않은 사용자에 대한 접근 거부) 설정이 되어있으면 아이디/비번을 가지고 있는 사용자들을 의미하고, anon-access=read 나 anon-access=write로 되어 있으면 인증하지 않고 그냥 url을 치고 들어온 모든 사용자를 의미한다.

$ cd /home/svn/repo/conf
$ vi authz

[groups]
# 여기에 권한 그룹 생성
admin = admin1, admin2 
user = user1, user2

###
[/]            # 디렉토리 경로
*=             # 모든 사용자(*)에 대한 설정
@admin=rw
@user

[/webprojcet1]
*=r
@admin=rw
user1=rw

[/webproject2]
*=rw
 

3. 권한 적용

- SVN 위치 : /home/svn/repo

- 설정파일 위치 : /home/svn/repo/conf

- SVN서버 설정파일 : svnserve.conf

# 권한 적용 시 authz-db의 주석을 해제하면 된다.
[general]
anon-access=none    # 계정이 없는 사용자데 대해 접근 거부
auth-access=write   # 인증된 사용자에 대해 쓰기 권한 부여
password-db=passwd  # 계정정보가 들어가 있는 파일을 설정
authz-db=authz      # 권한설정 정보가 들어가 있는 파일을 설정(처음에 주석 처리되어 있어 해제해야함)
realm=My First Repository  # 저장소 정보, 인증시 보여준다고 함
 

 

 

'SVN, Git' 카테고리의 다른 글

SVN 생성, 백업(dump생성), 복원(load)  (0) 2021.12.30

관련글 더보기