Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

How to do that?

I know in the conf/passwd file...you can set the user = pass.

however, I'd like him to enter his OWN pass --local machine.

share|improve this question
    
When you say 'HIS' do you mean a password that he has on his local machine, or a password in some kind of directory like ldap/nis? –  Zoredache Oct 7 '09 at 22:38
    
--local machine. –  Alex Oct 7 '09 at 23:09
    
Is this local machine distinct from the machine holding the SVN repo? –  jldugger Oct 8 '09 at 2:40

2 Answers 2

up vote 3 down vote accepted

I shall assume you're using Apache for the host? You can use LDAP lookups to authenticate your SVN repository. We authenticate against our AD LDAP, but you could authenticate against any AD. Also, our config comes from Windows Apache, it will likely be different for *nix:

LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule ldap_module modules/mod_ldap.so

<Location /Data/>
   DAV svn
   SVNParentPath C:\SVN
   AuthName "Our Subversion Repositories"
   AuthType Basic   
   AuthBasicProvider ldap
   AuthzLDAPAuthoritative off

   AuthLDAPURL "ldap://ldapserver.domain.local:389/DC=domain,DC=local?sAMAccountName?sub?(objectClass=*)" NONE
   AuthLDAPBindDN "domain\aduserwithldappermissions"
   AuthLDAPBindPassword passwordhere
   require valid-user
</Location>
share|improve this answer
    
+1, this is how we are doing it. –  John Gietzen Oct 7 '09 at 22:59

If you're running a UNIX system with existing SSH infrastructure, the ssh+svn protocol may suffice. You can control the repository access control by the underlying filesystem ACLs. SVN commands reference the repo with the URL prefix svn+ssh:// in this case.

However, users may need to install an ssh credential agent like pageant to avoid neverending password queries. And you'll need to add users to the system if they're not there, and so on. The better alternative here is WebDAV+Apache. You can configure any of a variety of authentication schemes (you likely want mod_auth_pam), use an SVNPath (or SVNParentPath for a set of repos) to indicate the SVN location on disk, and an AuthzSVNAccessFile directive to control access to one or multiple repositories. SVN commands reference the repo with the URL prefix https:// in this case.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.