credcheck v1.0 发布

由 MigOps 发布于 2023-04-06
相关开源

2023年4月6日

PostgreSQL credcheck 扩展

credcheck PostgreSQL 扩展提供通用的凭据检查,这些检查将在用户创建期间、密码更改期间和用户重命名期间进行评估。 通过使用此扩展,可以定义一组规则

  • 允许特定的凭据集
  • 拒绝某种类型的凭据
  • 强制密码使用最短天数的到期日期
  • 定义密码重用策略

新版本 v1.0 添加了一个名为密码重用策略的主要功能,并能够强制使用密码的到期日期。它还防止 PostgreSQL 在发生错误时在日志中公开密码,并修复了过去 6 个月用户报告的一些问题。

  • 添加密码重用策略功能。 此实现使用专用的共享内存存储来共享所有数据库之间的密码历史记录。 它要求通过 postgresql.conf 中的 shared_preload_libraries 加载 credcheck。 此功能的行为可以通过两个设置进行控制

    • credcheck.password_reuse_history: 在密码可以重用之前设置的不同密码的数量。

    • credcheck.password_reuse_interval: 密码可以再次重用之前需要经过的时间。

  • 添加强制使用密码到期日期的可能性,并指定特定天数的有效期。 例如:credcheck.password_valid_until = 60 表示密码有效期必须至少为两个月。

  • 允许 credcheck 在没有 PASSWORD 选项的 CREATE USER 语句中检查用户名。

  • 强制 credcheck 设置只能由超级用户设置/更改。

  • 修复 CREATE ROLEVALID UNTIL 子句的检测。

  • 强制 PostgreSQL 在发生 CREATE/ALTER 角色错误时不在日志中公开密码。可以通过将自定义变量 credcheck.no_password_logging 设置为 off 来禁用此行为。

  • 对于大多数错误消息,使用错误代码 ERRCODE_INVALID_AUTHORIZATION_SPECIFICATION (28000)

完整的更改列表请访问此处

链接和鸣谢

credcheck 是一个在 MigOps Inc 创建的 PostgreSQL 许可下的开源项目。 欢迎任何人为构建更好的工具做出贡献。 您可以使用 GitHub 工具发送您的想法、功能请求或补丁。

关于 credcheck

credcheck 扩展是 MigOps Inc 的原创作品, MigOPs 专门从事 PostgreSQL 迁移和 PostgreSQL 支持。 如果您需要更多信息,请联系我们

文档:https://github.com/MigOpsRepos/credcheck#readme