Meu ambiente
Eu tenho este servidor SVN usando o Apache para autenticação com o Active Directory usando authz_svn_module e suas dependências (mod_dav_svn.so, etc.). A parte de autenticação funciona bem normalmente, mas se eu deixar o campo User Name vazio, ele gerará 500 Internal Server Error.
O problema acontece se eu tentar logar de um navegador da Web ou se eu tentar executar um checkout do svn.
Ele não gera uma entrada no arquivo Apache logs / error.log , mas deixa uma entrada no arquivo logs / access.log :
x.x.x.x - "" [12/Aug/2014:11:00:10 -0300] "GET /svn/ HTTP/1.1" 500 550
ao contrário de quando digito um usuário / senha inválido:
x.x.x.x - invalidu1 [12/Aug/2014:10:11:03 -0300] "GET /svn/ HTTP/1.1" 401 401
Também notei que o erro 500 vem do meu servidor AD em vez de 127.0.0.1. Há um servidor Linux executando autenticação para seu servidor SVN no mesmo servidor AD e não tem esse problema.
Este é um bug conhecido? Se não, existe uma maneira que eu possa validar campos de nome de usuário vazios antes que eles sejam autenticados?
Minha entrada SVN httpd.conf se parece com isso:
DAV svn SVNPath G:/mypath/to/svn/ SVNIndexXSLT "/svnindex.xsl" AuthType Basic AuthBasicProvider ldap file AuthzSVNAccessFile G:\svn\svn_projects_permissions # The name of the protected area or "realm" AuthName "SVN Projects" # Active Directory requires an authenticating DN to access records AuthLDAPBindDN "CN=a,OU=b,OU=c,OU=d,DC=e,DC=f,DC=com" # This is the password for the AuthLDAPBindDN user in Active Directory AuthLDAPBindPassword "abcdefgijkl" # The LDAP query URL # AuthLDAPURL "ldap://abcdef.gh.com/OU=COLAB,DC=c,DC=com?sAMAccountName?sub?(objectClass=*)" AuthLDAPURL "ldap://123.45.678.29/OU=abc,OU=dfe,DC=ghij,DC=ab-group,DC=com?sAMAccountName?sub?(objectClass=*)" Require valid-user AuthUserFile "G:\svn\svn_projects_passwords"