1. 程式人生 > >配置svn使用者及許可權

配置svn使用者及許可權

 

 

許可權使用的使用者名稱,必須在passwd檔案裡面存在,許可權配置檔案的修改立即生效,不必重啟SVN;

 

例如建立一個運維組

使用者組格式:

[groups]

yunwei = ligang,liming

其中,1個組可以包含1個使用者或者多個使用者,使用者間以逗號分隔。

 

[[email protected] conf]# vim authz

 

 

授權

版本庫目錄格式:

[<版本庫名字>:/專案/目錄]

@<使用者組名> = <許可權>

<使用者名稱> = <許可權>

 

 

方括號內部分可以有多種寫法:

[/] #表示根目錄及以下,根目錄是sevnserve啟動時指定的,我們指定為/application/svndata [/]就是表示對全部版本庫設定許可權;

[/public/crtlist] 表示對 wy版本庫 中的 public專案和crtlist專案 目錄設定許可權

[sadoc:/] #表示對版本庫sadoc設定許可權;

[sadoc:/linux] #表示對版本庫sadoc中的linux專案設定許可權;

[sadoc:/linux/centos] #表示對版本庫sadoc中的linux專案的centos目錄設定許可權;

 

 

對wy這個svn專案 這裡的根目錄/ 就是啟動svn -r 指定的根目錄 以下使用者和使用者組授權

對wy這個svn專案 上面/根目錄 pulibc/crtlist 以下使用者和使用者組授權

[/]
ligang = rw
liming = r
@yunwei = rw


[wy:/public/crtlist]
ligang = rw
liming = r
@yunwei = rw

 

運維組 可讀可寫, ligang使用者可讀可寫 ,liming可讀

 

許可權主體可以是使用者組使用者或者*使用者組在前面加@,*表示全部使用者。

許可權可以是r、w、rw和空,空表示沒有任何許可權。

r 可讀 

w可寫

rw 可讀可寫

 

如下許可權體系的控制

 

[[email protected] conf]# egrep -v "^$|#" authz

[aliases]
[groups]
yunwei = ligang,liming
[/]
ligang = rw
liming = r
@yunwei = rw
[wy:/public/crtlist]
ligang = rw
liming = r
@yunwei = rw

 

 

 

[[email protected] svnpasswd]# egrep -v "#" /application/svnpasswd/authz   

[aliases]

 

[groups]

xuliangwei26 = stu001,stu002

 

[sadoc:/]

xuliangwei = rw

 

[sadoc:/linux]

xiaomi = rw

 

[sadoc:/linux/centos]

@xuliangwei26 =r

根目錄只有xuliangwei可以讀寫,匿名使用者沒有任何許可權。

二級Linux目錄只有xiaomi可以讀寫,匿名使用者沒有任何許可權。

三級centos目錄只有xuliangwei26組可讀,但是xuliangwei可讀寫,xiaomi也可讀寫