In a shared user environment, I would recommend setting up a real Subversion server (either svnserve
or through Apache). In this environment, individual users do not need access to the repository files at all because all file access is done under the user account of the server process.
The Subversion book has a section on Choosing a Server Configuration which may help. From that section (emphasis mine):
If you have an existing infrastructure that is heavily based on SSH accounts, and if your users already have system accounts on your server machine, it makes sense to deploy an svnserve-over-SSH solution. Otherwise, we don't widely recommend this option to the public. It's generally considered safer to have your users access the repository via (imaginary) accounts managed by svnserve or Apache, rather than by full-blown system accounts.