www.kuuskeri.com

Use same authentication in websvn and mod_dav_svn

26.4.2009

You can instruct websvn to the use same authentication model as you (possibly) already use with apache and svn (mod_dav_svn). First, tell apache to authenticate users who access /websvn/ and second, tell websvn to use the same user/repository configuration as mod_dav_svn. You only need to do these two steps and Bob's your uncle. In the following instructions I'm using Ubuntu 8.10 and I'm not using MultiViews. Websvn was installed using synaptic. No other configuration was done before this (except that the websvn installer asks for the root direcotry of svn repositories).

To configure apache, add these directives in /etc/websvn/apache.conf (within the Directory tag):

      
        AuthType Basic
        AuthName "Subversion repository"
        AuthUserFile /etc/apache2/dav_svn.passwd
        Require valid-user
      
    
Obviously, you'll need to replace the file name with the one containing your ssl users.

To configure websvn, add this directive in /etc/websvn/config.php (actually, you only need to uncomment and edit):

      
        $config->useAuthenticationFile('/home/svn/https_access');
      
    
Again, replace the file name with the one that contains the configuration for which users are allowed to see which repositories

For completeness, here's my full /etc/websvn/apache.conf

      
        Alias /websvn /usr/share/websvn

        <Directory /usr/share/websvn>
        DirectoryIndex index.php
        Options FollowSymLinks
        Order allow,deny
        Allow from all

        AuthType Basic
        AuthName "Subversion repository"
        AuthUserFile /etc/apache2/dav_svn.passwd
        Require valid-user

        <IfModule mod_php4.c>
        php_flag magic_quotes_gpc Off
        php_flag track_vars On
        </IfModule>
        </Directory>
      
    

webmaster(gmail)