Nos últimos dias, tenho tentado configurar meu servidor SVN inicial usando a autenticação MySQL. Acredito que tenho todos os aplicativos instalados e espero que tudo esteja configurado corretamente ... mas ainda não funcionará.
Estou executando um servidor Debian, o svn 1.5.1 e o apache2.
Este é o meu arquivo dav_svn.conf:
<Location /svn>
DAV svn
SVNParentPath /var/svn-repos
AuthBasicAuthoritative Off
# our access control policy
AuthzSVNAccessFile /var/svn-access/accessfile
AuthMYSQL on
AuthMySQL_Authoritative on
AuthMySQL_DB svn
AuthMySQL_Password_Table users
AuthMySQL_Username_Field login
AuthMySQL_Password_Field pass
AuthMySQL_Empty_Passwords off
AuthMySQL_Encryption_Types Crypt_MD5
# try anonymous access first, resort to real
# authentication if necessary.
Satisfy Any
Require valid-user
AuthType Basic
AuthName "Subversion repository"
#AuthUserFile /var/www/svn-access/htpasswdsvnrepos
</Location>
Eu realmente não sei o que devo colocar no meu "arquivo de acesso", mas talvez alguém possa explicar isso para mim.
Eu recebo os seguintes erros em meus registros:
==> access.log <==
10.0.1.1 - - [25/Aug/2010:17:20:00 +0200] "GET /svn/project_wombat HTTP/1.1" 401 384 "-" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; sv-SE; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8"
==> error.log <==
[Wed Aug 25 17:20:00 2010] [error] [client 10.0.1.1] Failed to load the AuthzSVNAccessFile: An authz rule refers to group '@project_wombat', which is undefined
==> access.log <==
10.0.1.1 - paulp [25/Aug/2010:17:20:03 +0200] "GET /svn/project_wombat HTTP/1.1" 401 384 "-" "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; sv-SE; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8"
==> error.log <==
[Wed Aug 25 17:20:03 2010] [error] Internal error: pcfg_openfile() called with NULL filename
[Wed Aug 25 17:20:03 2010] [error] [client 10.0.1.1] (9)Bad file descriptor: Could not open password file: (null)
No topo desses problemas eu gostaria de definir em um banco de dados mysql quais usuários têm acesso a quais repositórios.
Esta é a configuração do meu banco de dados:
CREATE TABLE IF NOT EXISTS 'groups' (
'gid' int(10) unsigned NOT NULL auto_increment,
'name' varchar(50) NOT NULL default '',
PRIMARY KEY ('gid'),
UNIQUE KEY 'name' ('name')
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;
CREATE TABLE IF NOT EXISTS 'usergroup' (
'uid' int(10) unsigned NOT NULL default '0',
'gid' int(10) unsigned NOT NULL default '0',
PRIMARY KEY ('uid','gid')
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
CREATE TABLE IF NOT EXISTS 'users' (
'uid' int(10) unsigned NOT NULL auto_increment,
'login' varchar(20) NOT NULL default '',
'pass' varchar(60) NOT NULL default '',
'firstname' varchar(255) NOT NULL default '',
'lastname' varchar(255) NOT NULL default '',
'email' varchar(255) NOT NULL default '',
PRIMARY KEY ('uid'),
UNIQUE KEY 'login' ('login')
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=2 ;
Quem pode me ajudar, talvez me coloque na direção certa?
Atenciosamente,
Paul Peelen