PostgreSQL限制密码的有效期(每次增加180天)

一、创建用户时,指定密码在180天后过期

创建用户时,可以使用如下语句,自动在当前时间的基础上增加180天,作为这个用户密码的有效时间。等到密码到期后或者临近的时候,可以使用SQL修改用户密码,并且重新定义密码的有效期。(也可以直接指定时间,下面方法是为了不用自己算增加180天的天数)

postgres<16.1>(ConnAs[postgres]:PID[205270] 2024-02-19/12:04:30)=# select $$create user test10 with password 'qwerdfg345' valid until '$$||now()::timestamp(0) + '180 day'||$$';$$;

+----------------------------------------------------------------------------------+
|                                     ?column?                                     |
+----------------------------------------------------------------------------------+
| create user test10 with password 'qwerdfg345' valid until '2024-08-17 12:04:34'; |
+----------------------------------------------------------------------------------+
(1 row)

把生成的SQL粘贴执行。

postgres<16.1>(ConnAs[postgres]:PID[205270] 2024-02-19/12:04:34)=#  create user test10 with password 'qwerdfg345' valid until '2024-08-17 12:04:34';
CREATE ROLE

image.png

可以通过pg_roles这个视图查看用户的密码有效时间

select * from pg_roles where rolname='test10';

image.png

二、修改密码并增加密码有效期

密码到期后或者临近的时候,可以使用SQL修改用户密码,并且重新定义密码的有效期。

select $$ alter user test10 with password '1qaz@WSX345'  valid until '$$||now()::timestamp(0) + '180 day'||$$';$$;

使用上述语句可以拼接出重制用户密码有效期的语句,自动获取当前时间并且在此基础上增加180天,也可以直接填写相应的具体时间。

image.png

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-21 15:42:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-21 15:42:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-02-21 15:42:02       87 阅读
  4. Python语言-面向对象

    2024-02-21 15:42:02       96 阅读

热门阅读

  1. 如何解决 SQL 深层分页问题?

    2024-02-21 15:42:02       46 阅读
  2. Miniconda 安装和使用笔记

    2024-02-21 15:42:02       56 阅读
  3. jquery将网页html文档导出为pdf图片

    2024-02-21 15:42:02       39 阅读
  4. c# 链表

    2024-02-21 15:42:02       41 阅读
  5. MySQL深入——20

    2024-02-21 15:42:02       46 阅读
  6. 基于python+django+vue.js开发的社区养老管理系统

    2024-02-21 15:42:02       46 阅读
  7. 字母转换并统计行数(C语言实现)

    2024-02-21 15:42:02       41 阅读
  8. Qt _day1

    Qt _day1

    2024-02-21 15:42:02      45 阅读
  9. Oracle12cR2之IMP与EXP命令行工具使用及参数说明

    2024-02-21 15:42:02       62 阅读