Ahh, the password || username format of the stored password was the problem. 
Incidentally, for anyone else not having the md5() function (is that new to 7.5dev?) I 
was able to accomplish the same thing using 
 
   'md5' || encode( digest(password || username, 'md5'), 'hex' )

Thanks!


-----Original Message-----
From: Tom Lane [mailto:[EMAIL PROTECTED]
Sent: Tuesday, January 27, 2004 7:55 PM
To: William Harazim
Cc: [EMAIL PROTECTED]
Subject: Re: [GENERAL] Manually authenticating users in pg_shadow 


"William Harazim" <[EMAIL PROTECTED]> writes:
> Is there a way, having a user entered username and password, to select a si=
> ngle row from pg_shadow which is using md5 password encryption?

I think what you need to know is that the stored passwd field is formed
thus:

        'md5' || md5(password || username);

Substitute this for your crypt() call and you're set.  Don't think you
need the separate step to extract salt (you didn't need it before
either, really).

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 4: Don't 'kill -9' the postmaster

Reply via email to