One recurring issue users bring up when using Subversion’s own svnserve server and its own internal authentication system (password-db) is that users cannot easily change their own passwords.
The problem is that, when using svnserve and the internal password-db, usernames and passwords are held in a plain text file, usually within the conf directory of the repository to which they apply. This file cannot be made read/writeable to all users because this would allow all users to both see and change one other’s passwords (which would be very silly).
The usual solution to this is for the administrator to issue passwords to users and whenever a user wishes to change their password they ask the administrator to do it for them.
Here is a method for allowing users to change their own passwords. In summary, this is a hook script that intercepts requests to delete a special file. When an attempt is made to delete this special file the script assumes that the log message is the new password to be set for the user who requests the deletion. It then changes the entry in the local Subversion password database and rejects the request to delete the file.
Full details are available on the Principia Subversion FAQ.