2008-12-08 35 views
2

我有一個可以正常工作的Subversion版本庫,所有用戶都需要密碼驗證。我的配置張貼在下面。我該如何去修改這個配置,以便我可以讓一個用戶對我的某個倉庫擁有隻讀訪問權限?Subversion - 如何在使用SVNParentPath時控制單個存儲庫的用戶訪問?

提供的示例需要使用SVNParentPath而不是SVNPath。前者允許您指定包含多個Subversion存儲庫的目錄。

<VirtualHost *:80> 
    ServerAdmin [email protected] 
    DocumentRoot "d:/Apache2/htdocs/" 
    ServerName code.mycompany.org 
    ErrorLog "logs/src.mycompany.org-error.log" 
    CustomLog "logs/src.mycompany.org-access.log" common 
    SetOutputFilter DEFLATE 

    <Location /> 
     DAV svn 
     SVNParentPath D:\SVN 
     AuthType Basic 
     AuthName "My Repository" 
     AuthUserFile conf/myteam.pwd 
     Require valid-user 
    </Location> 
</VirtualHost> 

回答

5

我已經使用SVN書籍自己完成了這項工作。

首先,確保您在AuthUserFile中設置了一些用戶。接下來,爲授權規則創建一個文件(conf/myteam.authz)。像這樣填充這個文件。

[groups] 
my-developers = BrianLy 
external-developers = JamesKL 

[/] 
@my-developers = rw 

[repository-name-here:/path/here] 
@external-developers = r 

這將創建2個組,然後分配權限。我的團隊擁有開發人員訪問所有存儲庫的權限。第二條規則指定第二組對特定存儲庫的訪問權限有限。

然後通過添加下面的AuthUserFile

這一行更新您的Apache配置
AuthzSVNAccessFile conf/myteam.authz 

重新啓動Apache需要(要求)

+0

阿帕奇重啓 - 阿帕奇只在啓動時加載的配置。 很好的答案。我從來沒有時間自己弄清楚這一點。 +1 – Paulius 2008-12-08 21:48:34

相關問題