From: | Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> |
---|---|
To: | Dhirendra Singh <dhirendraks(at)gmail(dot)com>, pgsql-admin(at)lists(dot)postgresql(dot)org |
Subject: | Re: Question about cert authentication method. |
Date: | 2022-11-25 11:54:20 |
Message-ID: | d0f723304b3b43cc4093d876b43f58cdca34d89d.camel@cybertec.at |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
On Fri, 2022-11-25 at 15:36 +0530, Dhirendra Singh wrote:
> I have a question about cert authentication method. I am using postgres version 14.
>
> Following is the entry i have in the pg_hba file.
> hostssl all all 0.0.0.0/0 cert map=mymap
>
> Following is the entry in the pg_ident file.
> mymap test readonly
>
> trying to connect to the server using psql. CN in the certificate is "test (S114546)".
> psql "host=localhost user='test (S114546)' dbname=appdb sslmode=verify-full sslcert=certificate.crt sslkey=certificate.key sslrootcert=cacerts"
>
> No mapping exist for "test (S114547)" in the pg_ident file.
>
> The connection failed with following error.
> psql: error: connection to server at "localhost", port 5432 failed: FATAL: certificate authentication failed for user "test (S114546)"
>
> Error in the server log is...
> 2022-11-25 09:26:52.169 UTC [62] LOG: no match in usermap "mymap" for user "test (S114546)" authenticated as "test (S114546)"
> 2022-11-25 09:26:52.169 UTC [62] FATAL: certificate authentication failed for user "test (S114546)"
> 2022-11-25 09:26:52.169 UTC [62] DETAIL: Connection matched pg_hba.conf line 4: "hostssl all all 0.0.0.0/0 cert map=mymap"
>
> I am expecting the connection to fail because user "test (S114546) does not exist. but i am confused about the error message in the server log.
> It says certificate authentication failed for user "test (S114546)". but CN in the certificate matches with the user name in psql connection request.
> So certificate authentication should pass. It should fail afterwards.
Well, "test" is different from "test (S114546)", so what do you expect?
You should use a regular expression in "pg_ident.conf", if you want that to match:
mymap /^test readonly
Yours,
Laurenz Albe,
From | Date | Subject | |
---|---|---|---|
Next Message | Norbert Poellmann | 2022-11-25 13:00:06 | Re: Disable unique constraint in Postgres |
Previous Message | Dhirendra Singh | 2022-11-25 10:06:00 | Question about cert authentication method. |