db_user_namespace, md5 and changing passwords - Mailing list pgsql-general

From Fernando Moreno
Subject db_user_namespace, md5 and changing passwords
Date
Msg-id b1c45530810041212n229bcf30t975d7efeb3a2efc3@mail.gmail.com
Whole thread Raw
Responses Re: db_user_namespace, md5 and changing passwords  (Bruce Momjian <bruce@momjian.us>)
List pgsql-general
Hi there, I'm going to use the db_user_namespace parameter to get a strong relationship between roles and databases, multiple databases -users included- residing in the same server without conflicts is my objective too.

Right now I'm working on the backup process, which ideally would let me mirror a database and all of its users, keeping their passwords. user01@database01 must not collide with user01@database02, this is why I need db_user_namespace enabled.

Just before executing pg_dump, I will create a table to store roles information: name and options like login, encrypted password (from pg_authid) and connection limit. When restoring, I'll add the current_database() value to the stored role names, in order to create them correctly. The problem is that md5sums in postgresql passwords are not created from "password", but "passworduser", and "user" is not likely to be the same because it depends directly on the database name; therefore, authentication will always fail even when trying with the same password.

Is there a way to avoid this problem without having to reset all passwords or storing them in plain text?

Thanks in advance.

pgsql-general by date:

Previous
From: "Dave Page"
Date:
Subject: Re: failed to install posgrest
Next
From: "Richard Broersma"
Date:
Subject: PG Windows Installer Feature Request