I need to create and operate a number of student SVN repositories, and create some fine grained access controls to prevent students from cheating while allowing instructors to access the revision history.

For a single repository, I can use WebDAV and configure AuthzSVNAccessFile to permit access. But I need multiple repositories. I could set up multiple <Location> directives, but that's verbose, and anytime I need to add or remove a repo it requires an Apache reload. There's a way to specify a "parent path" that contains a number of repos with SVNParentPath, but is there a corresponding way to map authz files to those repos?

link|improve this question

76% accept rate
feedback

2 Answers

up vote 2 down vote accepted

You can actually manage permissions for multiple repositories with a single authz file. For example:

[foo:/]
@students = rw
@instructors = r

[bar:/]
@students = rw
@instructors = r

In this case the name before the colon is the name of the repository, the first component of the path after SVNParentPath.

link|improve this answer
Excellent; I was starting to worry this wasn't possible! – jldugger Sep 24 '09 at 19:13
feedback

You could use .htaccess files do use either basic HTTP authentication, or use mod_auth_mysql to pull authentication information from a SQL database. From that point it would be pretty straightforward to build yourself a frontend to manage permissions in the SQL tables.

link|improve this answer
feedback

Your Answer

 
or
required, but never shown

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