Allowing users to change their own password using svnserve and passwd

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.

Advertisement

, , , , , ,

  1. Leave a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

Gravatar
WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.