文档首页 > > 开发指南> 管理数据库安全> 设置帐号安全策略说明> 设置密码安全策略

设置密码安全策略

分享
更新时间: 2019/06/24 GMT+08:00

用户密码存储在系统表pg_authid中,为防止用户密码泄露,DWS对用户密码进行加密存储。同时,限定了密码的安全策略。

  • 密码复杂度

    帐户密码的复杂度要求如下:

    • 包含大写字母(A-Z)的最少个数(password_min_uppercase)
    • 包含小写字母(a-z)的最少个数(password_min_lowercase)
    • 包含数字(0-9)的最少个数(password_min_digital)
    • 包含特殊字符的最少个数(password_min_special)(特殊字符的列表请参见表1
    • 密码的最小长度(password_min_length)
    • 密码的最大长度(password_max_length)
    • 至少包含上述四类字符中的三类。
    • 不能和用户名、用户名倒写相同。
    • 不能和当前密码、当前密码的倒写相同。
  • 密码重用

    用户修改密码时,只有持续未使用天数超过60天的历史密码才可以被重新使用。

  • 密码有效期限

    数据库用户的密码都有密码有效期(默认值为90天),当达到密码到期提醒天数(7天)时,系统会在用户登录数据库时提示用户修改密码。

    说明:

    考虑到数据库使用特殊性及业务连续性,密码过期后用户还可以登录数据库,但是每次登录都会提示修改密码,直至修改为止。

  • 密码修改
    • 在安装数据库时,会新建一个和初始化用户重名的操作系统用户,为了保证帐户安全,请定期修改操作系统用户的密码。
      以修改用户user1密码为例,命令格式如下:
      passwd user1

      根据提示信息完成修改密码操作。

    • 建议系统管理员和普通用户都要定期修改自己的帐户密码,避免帐户密码被非法窃取。

      以修改用户user1密码为例,使用管理员用户连接数据库并执行如下命令:

      ALTER USER user1 IDENTIFIED BY "1234@abc" REPLACE "5678@def";
      说明:

      1234@abc、5678@def分别代表用户user1的新密码和原始密码,这些密码要符合规则,否则会执行失败。

    • 管理员可以修改自己的或者其他帐户的密码。通过修改其他帐户的密码,解决用户密码遗失所造成无法登录的问题。

      以修改用户joe帐户密码为例,命令格式如下:

      ALTER USER joe IDENTIFIED BY "abc@1234";
    说明:
    • 系统管理员之间不允许互相修改对方密码。
    • 系统管理员可以修改普通用户密码且不需要用户原密码。
    • 系统管理员可以修改自己的密码但需要管理员原密码。
  • 密码验证

    设置当前会话的用户和角色时,需要验证密码。如果输入密码与用户的存储密码不一致,则会报错。

    以设置用户joe为例,命令格式如下:

    SET ROLE joe PASSWORD "abc@1234";

    显示如下命令表示设置成功:

    SET ROLE
表1 特殊字符

编号

字符

编号

字符

编号

字符

编号

字符

1

~

9

*

17

|

25

<

2

!

10

(

18

[

26

.

3

@

11

)

19

{

27

>

4

#

12

-

20

}

28

/

5

$

13

_

21

]

29

?

6

%

14

=

22

;

-

-

7

^

15

+

23

:

-

-

8

&

16

\

24

,

-

-

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区