I have been using svn for past few months (with default authentication rules) and only recently decided I wanted to add a bit more control over the repository authentication. I have been looking through this book (http://svnbook.red-bean.com/en/1.4/svn-book.html#svn.serverconfig.pathbasedauthz), and I thought I understood what I was doing. So, I have started configuring the repo. However, I seem to be having problems authenticating users.
I have a server at workserver.com and the repo is in the directory /home/repoAdminUser/svnroot/
(that is in the home-directory of a user because I do not have root-access to workserver.com). I have changed the configuration files as follows:
`/home/repoAdminUser/svnroot/conf/svnserve.conf`:
anon-access = none
password-db = passwd
authz-db = authz
`/home/repoAdminUser/svnroot/conf/passwd`:
[users]
admin1=pass1
admin2=pass2
otheruser1=pass3
Now, I want to add the authority such that all admin-users will have read/write ability everywhere and other users will have restricted read-only access to specific trunks. So, I tried the following
`/home/repoAdminUser/svnroot/conf/authz`:
[groups]
admins=admin1,admin2
other1=otheruser1,otheruser2
#etc ...
[/]
@admins=rw
[/project1/trunk]
@other1=r
then, when I try to check out the directories with either:
svn co --username admin1 --password pass1 svn+ssh://workserver.com/home/repoAdminUser/svnroot/anyproject/directory
or
svn co --username otheruser1 --password pass3 svn+ssh://workserver.com/home/repoAdminUser/svnroot/project1/trunk
I receive the "svn: Authorization Failed" error message. In fact, I found that the only way to get anything to checkout is give the wildcard-user (everyone) access the a particular directory:
[/any-directory]
* = r
this will then allow any-user (anonymous or authenticated) the ability to checkout the directory. What am I doing wrong? And, how can I fix this so that I have the desired structure I mentioned earlier. Thank you for any help you can give!