macossvnsvnserve

How to configure SVN server to check keychain for password


I have spent many days googling around and have been unable to find an answer to the following question: How do you configure SVN on Mac OSX to compare users and passwords against its built-in keychain?

I have seen a lot of questions regarding configuring the SVN client, but haven't seen if anyone can recommend how to configure a repository to check the Mac OSX keychain for the supplied user/password.

What I really want is to not have to set up a password every time I make a new repository. I just want to decide who on this SVN server (where users are already created for SSH/SMB access) has access to this repository or else grant everyone access to all repositories which is even better for me.

We have a central server running OSX and a apache2 daemon as well as an svnserved. We will be logging in from Windows 7 computers using TortoiseSVN. Every user has a username/password to access the OSX server already for Samba storage.

I assume this is something that gets configured in the /conf/svnserve.conf file under authz-db but I cannot figure out what option to select.

Edit: svnserve --version = 1.6.17


Solution

    1. You can not use system users for authentication in case of pure svn:// server - it has own userfile, incompatible by format with /etc/shadow
    2. In case of svn+ssh:// you can use any "SVN over ssh HOWTO" from Net (maybe best choice - from TortoiseSVN site) with single change - in ~/.ssh/authorized_keys will be only one command = string for single user
    3. For Apache-served repositories you haveto use external authentication provider + pwauth. Details - in this answer in SO-topic "How to make Subversion use Linux system accounts for authentication?"