设置帐户安全策略

    • 为了保证帐户安全,如果用户输入密码次数超过一定次数(failed_login_attempts),系统将自动锁定该帐户,默认值为10。次数设置越小越安全,但是在使用过程中会带来不便。
    • 当帐户被锁定时间超过设定值(password_lock_time),则当前帐户自动解锁,默认值为1天。时间设置越长越安全,但是在使用过程中会带来不便。

    配置failed_login_attempts参数。

    1. 以操作系统用户omm登录数据库主节点。
    2. 使用如下命令连接数据库。

      postgres为需要连接的数据库名称,8000为数据库主节点的端口号。

      连接成功后,系统显示类似如下信息:

      1. Non-SSL connection (SSL connection is recommended when requiring high-security)
      2. Type "help" for help.
      3. postgres=#
    3. 查看已配置的参数。

      1. postgres=# SHOW failed_login_attempts;
      2. failed_login_attempts
      3. 10
      4. (1 row)
    4. 执行如下命令设置成默认值10。

    配置password_lock_time参数。

    1. 以操作系统用户omm登录数据库主节点。
    2. 使用如下命令连接数据库。

      1. gsql -d postgres -p 8000

      postgres为需要连接的数据库名称,8000为数据库主节点的端口号。

      连接成功后,系统显示类似如下信息:

      1. Non-SSL connection (SSL connection is recommended when requiring high-security)
      2. Type "help" for help.
      3. postgres=#
    3. 查看已配置的参数。

      如果显示结果不为1,执行“\q”命令退出数据库。

      1. gs_guc reload -N all -I all -c "password_lock_time=1"

    若管理员发现某帐户被盗、非法访问等异常情况,可手动锁定该帐户。

    当管理员认为帐户恢复正常后,可手动解锁该帐户。

    以手动锁定和解锁用户joe为例,用户的创建请参见用户,命令格式如下:

    • 手动锁定

      1. postgres=# ALTER USER joe ACCOUNT LOCK;
      2. ALTER ROLE
    • 手动解锁

    当确认帐户不再使用,管理员可以删除帐户。该操作不可恢复。

    当删除的用户正处于活动状态时,此会话状态不会立马断开,用户在会话状态断开后才会被完全删除。

    1. DROP ROLE