更新时间:2022-08-16 GMT+08:00
设置用户密码
用户密码存储在系统表pg_authid中,为防止用户密码泄露,GaussDB(DWS)对用户密码进行加密存储。
- 密码复杂度
- 包含大写字母(A-Z)的个数为0~999,包含小写字母(a-z)的个数为0~999,包含数字(0-9)的个数为0~999,包含特殊字符的个数为0~999(特殊字符的列表请参见表1)。
帐户密码至少包含上述四类字符中的三类。
- 密码的最小长度6,默认值为8。
- 密码的最大长度999,默认值为32。
- 不能和用户名、用户名倒写相同。
- 不能和当前密码、当前密码的倒写相同。
- 包含大写字母(A-Z)的个数为0~999,包含小写字母(a-z)的个数为0~999,包含数字(0-9)的个数为0~999,包含特殊字符的个数为0~999(特殊字符的列表请参见表1)。
- 密码重用
- 密码有效期限
数据库用户的密码都有密码有效期(默认值为90天),当达到密码到期提醒天数(7天)时,系统会在用户登录数据库时提示用户修改密码。
考虑到数据库使用特殊性及业务连续性,密码过期后用户还可以登录数据库,但是每次登录都会提示修改密码,直至修改为止。
- 密码修改
- 在安装数据库时,会新建一个和初始化用户重名的操作系统用户,为了保证帐户安全,请定期修改操作系统用户的密码。
根据提示信息完成修改密码操作。
- 建议系统管理员和普通用户都要定期修改自己的帐户密码,避免帐户密码被非法窃取。
以修改用户user1密码为例,使用管理员用户连接数据库并执行如下命令:
1
ALTER USER user1 IDENTIFIED BY "1234@abc" REPLACE "5678@def";
1234@abc、5678@def分别代表用户user1的新密码和原始密码,这些密码要符合规则,否则会执行失败。
- 管理员可以修改自己的或者其他帐户的密码。通过修改其他帐户的密码,解决用户密码遗失所造成无法登录的问题。
1
ALTER USER joe IDENTIFIED BY 'password';
- 系统管理员之间不允许互相修改对方密码。
- 系统管理员可以修改普通用户密码且不需要用户原密码。
- 系统管理员可以修改自己的密码但需要管理员原密码。
- 在安装数据库时,会新建一个和初始化用户重名的操作系统用户,为了保证帐户安全,请定期修改操作系统用户的密码。
- 密码验证
设置当前会话的用户和角色时,需要验证密码。如果输入密码与用户的存储密码不一致,则会报错。
以设置用户joe为例,命令格式如下:
1
SET ROLE joe PASSWORD 'password';
父主题: 设置安全策略