credcheck v4.1 has been released

From: HexaCluster via PostgreSQL Announce <announce-noreply(at)postgresql(dot)org>
To: PostgreSQL Announce <pgsql-announce(at)lists(dot)postgresql(dot)org>
Subject: credcheck v4.1 has been released
Date: 2025-10-20 07:56:45
Message-ID: 176094700574.761.8670043691265235442@wrigleys.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-announce

Durban, South Africa - October 19, 2025

## PostgreSQL credcheck extension

The credcheck PostgreSQL extension provides few general credential checks, which will be evaluated during the user creation, during the password change and user renaming. By using this extension, we can define a set of rules:

* allow a specific set of credentials
* reject a certain type of credentials
* deny password that can be easily cracked
* enforce use of an expiration date with a minimum of day for a password
* define a password reuse policy
* define the number of authentication failure allowed before a user is banned
* define a delay on authentication failures
* force users to change their password after first login
* throw a warning N days before when the password user is about to expire

Release 4.1 has been published, it includes the following new features:

* At user creation and password change, credcheck automatically set the VALID UNTIL clause to `now() + credcheck.password_valid_until` days when it is present in the statement.
* Extend the functionality of 'username_contain' and 'username_not_contain'
GUCs to allow users to use sub-strings instead of single characters only.
* Add feature to send a warning to the user N days before his password expires.
The number of days before can be set using the `credcheck.password_valid_warning`
setting. It is disabled by default. This is done using an event trigger up on login.
The point is that the trigger must be set manually in all databases where you want
enable this feature.
* Change the pg_banned_role view to display the rolename instead of the role oid.
* No more error are thrown when no VALID UNTIL clause are used in the
CREATE/ALTER ROLE statements. It is set automatically when configuration
directive password_valid_until is set to a value greater than 0.
* Prevent first login feature to be applied to white listed username.
* Add CI tests to automatically test credcheck with PostgreSQL > 13
* Add force password change at first logging feature. This feature allow to force the
users to change their password after the account creation. This behavior is active
when `credcheck.password_change_first_login` is enabled. It is also possible force any
user to renew his password at any time using:

ALTER USER user1 SET credcheck_internal.force_change_password = true;

The release note of version 3.0 has never been published so we summarize here the new feature
brings by this version.

* Add new configuration variable to exclude some users from being banned.
With `credcheck.whitelist_auth_failure` you can set a whitelist of usernames
that must be excluded from this behavior. Example of use:

credcheck.whitelist_auth_failure = 'appuser1,appuser2'

Upgrade require a PostgreSQL restart to reload the credcheck library.

Complete list of changes is available [here](https://github.com/HexaCluster/credcheck/releases/tag/v4.1)

## Links & Credits

credcheck is an open project under the PostgreSQL license maintained by [HexaCluster](https://github.com/HexaCluster/credcheck/).
Any contribution to build a better tool is welcome. You can send your ideas, features requests or patches
using the GitHub tools.

**Links :**

* Download: [https://github.com/HexaCluster/credcheck/releases/](https://github.com/HexaCluster/credcheck/releases/)
* Support: use GitHub report tool at [https://github.com/HexaCluster/credcheck/issues](https://github.com/HexaCluster/credcheck/issues)

## About credcheck

The credcheck extension is an original work of MigOps Inc, Since MigOPs is closed the extension is developed and maintained by Gilles Darold at [https://hexacluster.ai](HexaCluster Corp). If you need more information please [https://hexacluster.ai/contact-us/](contact us).

Documentation at [https://github.com/HexaCluster/credcheck#readme](https://github.com/HexaCluster/credcheck#readme)

Browse pgsql-announce by date

  From Date Subject
Next Message SKAI Worldwide (formerly Bitnine) via PostgreSQL Announce 2025-10-20 08:02:48 Announcing the release of AgensGraph v2.16.0
Previous Message IVM Development Group via PostgreSQL Announce 2025-10-20 07:55:08 pg_ivm 1.13 released