MySQL 设置用户密码过期策略





1.在MySQL运行时可以使用超级权限修改此配置:

mysql> SET GLOBAL default_password_lifetime = 90;
Query OK, 0 rows affected (0.00 sec)

还可以使用ALTER USER命令为每个具体的用户账户单独设置特定的值,它会自动覆盖密码过期的全局策略。要注意ALTER USER语句的INTERVAL的单位是“天”。

ALTER USER ‘testuser’@‘localhost' PASSWORD EXPIRE INTERVAL 30 DAY;



#配置文件
[mysqld]
default_password_lifetime=90
or
#命令行全局修改
mysql> SET GLOBAL default_password_lifetime = 90;
Query OK, 0 rows affected (0.00 sec)

mysql>
mysql> show variables like "default_password_lifetime";
+---------------------------+-------+
| Variable_name             | Value |
+---------------------------+-------+
| default_password_lifetime | 90    |
+---------------------------+-------+

2.设置单个密码可重复使用时间和可重复使用的间隔次数

-- 设置密码为每间隔5次才可以重复使用
mysql> create user yeyz3@'127.0.0.1' identified with 'mysql_native_password' by 'yeyz3' password history 5;
Query OK, 0 rows affected (0.01 sec)

-- 设置密码为每隔5天才可以重复使用
mysql> create user yeyz4@'127.0.0.1' identified with 'mysql_native_password' by 'yeyz4' password reuse interval 5 day;
Query OK, 0 rows affected (0.01 sec)

-- 设置密码为每隔5天可以重复使用或者每个5次才可以重复使用,取最严格的那个条件
mysql> create user yeyz5@'127.0.0.1' identified with 'mysql_native_password' by 'yeyz5' password reuse interval 5 day password history 5;
Query OK, 0 rows affected (0.01 sec)

-- 使用默认的全局密码可重复使用策略,也就是password history参数和password reuse interval参数
mysql> create user yeyz6@'127.0.0.1' identified with 'mysql_native_password' by 'yeyz6' password reuse interval default password history default;
Query OK, 0 rows affected (0.01 sec)


3.让用户使用默认的密码过期全局策略:

ALTER USER  'testuser'@'localhost' PASSWORD  EXPIRE DEFAULT;



4.全局设定

mysql> SET GLOBAL default_password_lifetime = 90;

单个用户设定

为每个具体的用户账户单独设置特定的值

ALTER USER ‘test’@‘localhost‘ PASSWORD EXPIRE INTERVAL 30 DAY;

禁用密码过期:

ALTER USER ‘test‘@‘localhost‘ PASSWORD EXPIRE NEVER;

让用户使用默认的密码过期全局策略:

ALTER USER ‘test‘@‘localhost‘ PASSWORD EXPIRE DEFAULT;

设置用户密码过期

mysql> ALTER USER ‘test‘@‘localhost‘ PASSWORD EXPIRE;

查看用户是否过期

select user,host,password_expired,password_last_changed,password_lifetime from user;

password_expired:枚举值,设置用户密码是否过期的开关,默认为N。

password_last_changed:记录密码最近修改的时间

password_lifetime:设置密码的有效时间,天数

show create user [email protected]‘localhost‘;

ALTER USER [email protected]‘localhost‘ IDENTIFIED BY ‘password‘;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM