MySQL Validate Password 변경

MySQL에서 패스워드를 설정할 때 여러가지 조건 값을 주는 방법이 있습니다. 이를 Validate Password라고 하는데 이 조건을 어떻게 설정하냐에 따라 패스워드에 특수문자가 들어가야 한다거나 숫자를 조합해야 하거나 대문자 등의 문자를 조합해야 하는 조건들이 정해집니다.

다음 명령으로 현재 MySQL 서버에 설정된 정책이 어떤 것인지 확인 할 수 있습니다.

Validate Password 정책 확인

mysql>  SHOW VARIABLES LIKE 'validate_password%';

위 명령을 사용하면 아래와 같은 결과 값을 확인할 수 있습니다.

+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password.check_user_name    | ON     |
| validate_password.dictionary_file    |        |
| validate_password.length             | 8      |
| validate_password.mixed_case_count   | 1      |
| validate_password.number_count       | 1      |
| validate_password.policy             | MEDIUM |
| validate_password.special_char_count | 1      |
+--------------------------------------+--------+
7 rows in set (0.00 sec)

policy가 medium으로 설정되어 있고 니는 최소 길이가 8자가 되어야 하고 대문자가 섞여 있어야하고 숫자가 1개, 특수문자가 1개 있어야 한다는 조건들이 붙습니다.

조건을 변경하려면 아래 명령을 사용합니다.

Validate Password 정책 변경

SET GLOBAL validate_password_policy=LOW;

MySQL 패스워드 변경

ALTER USER 'user-name'@'localhost' IDENTIFIED BY 'NEW_USER_PASSWORD';
FLUSH PRIVILEGES;

참고

  • https://stackoverflow.com/questions/55237257/mysql-validate-password-policy-unknown-system-variable

Leave a Reply