我刚在本地网络中设置了SVN服务器。为此,我遵循了这个link。但我的问题是我在/etc/svn-auth-conf
文件中创建的任何用户只允许签出和提交,实际上这个用户拥有所有权限。我如何限制他们的权限?
这是我的/etc/httpd/conf.d/subversion.conf
文件
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /repos>
DAV svn
SVNParentPath /var/www/html/svn
AuthType Basic
AuthName "Subversion repos"
AuthUserFile /etc/svn-auth-conf
Require valid-user
</Location>
另一方面,当我使用svnadmin
命令创建任何存储库时,已在存储库conf
文件夹(如authz,passwd,svnserve.conf
)中创建了不同的配置文件。我跟着this link设置了权限。
那么如何为特定用户设置特定权限?
即
user1=All permissions
user2=read
other=none
答案 0 :(得分:2)
要通过http访问,您必须在authz文件中包含基于每个文件夹的权限
像这样:[/]
#rw is read-write, r is read only, and empty is none
user1 = rw
user2 = r
* =
您还可以在[groups]部分中定义用户组,并使用@group_name分配权限,如下所示:
[groups]
dev = jdoe,user3
qa = user4,user5
[/some/other/path]
@dev = rw
@qa = r
* =
修改强> 最后,你的apache conf缺少一个至关重要的部分,它必须包含AuthzSVNAccessFile指令,如:
<Location /project/src>
DAV svn
SVNPath /var/svn/project
AuthzSVNAccessFile /var/svn/project/conf/authz
AuthType Basic
AuthName "Project source repository"
AuthUserFile /var/svn/.dav_svn.passwd
Require valid-user
</Location>
答案 1 :(得分:0)
使用
chown -R groupname:groupname folder
chmod -R <permission> directory-name/
权限可以是766,用户可以读写和执行,其他人和组可以读写
查看手册页以获取更多信息
设置用户并读取或写入限制