현재상황:
create user ~ 명령어를 수행하는 중
패스워드가 정책의 요구사항에 만족되지 않는다는 오류가 발생했다.
현재 설치된 mysql에 어떠한 패스워드 정책이 있는지와,
이를 변경하는 방법을 알아보자.
1. 패스워드 정책 확인
show variables like 'validate_password%';
* 설정값에 대한 세부설명
- validate_password.length : 패스워드의 최소 길이
- validate_password.mixed_case_count : 대문자 최소 길이
- validate_password.number_count : 숫자 최소 길이
- validate_password.special_char_count : 특수문자 최소 길이
- validate_password.policy : 패스워드의 복잡성 요구사항
> LOW : 패스워드 길이만을 검사하고, 복잡성 요구사항을 검사하지 않는다.
> MEDIUM : 패스워드의 길이와 복잡성 요구사항을 모두 검사한다.
대문자, 소문자, 숫자, 특수 문자의 혼합을 요구하며, 최소 길이는 validate_password.length 변수에 의해 정의 된다.
> STRONG : 패스워드의 길이와 복잡성 요구사항을 모두 엄격하게 검사한다.
대문자, 소문자, 숫자, 특수 문자의 혼합을 요구하며, 최소 길이는 validate_password.length 변수에 의해 정의 된다.
2. 정책 변경
- 패스워드 길이 변경 (= validate_password.length)
SET GLOBAL validate_password.length = 10;
* 값(10)은 원하는 값으로 변경
- 대문자, 숫자, 특수문자 변경 (= validate_password.mixed_case_count / number_count / special_char_count)
SET GLOBAL validate_password.mixed_case_count = 0;
SET GLOBAL validate_password.mixed_number_count = 0;
SET GLOBAL validate_password.mixed_special_char_count = 0;
* 값(0)은 원하는 값으로 변경
- 패스워드의 복잡성 요구사항 변경 (= validate_password.policy)
SET GLOBAL validate_password.policy = LOW;
* 값(LOW, MEDIUM, STRONG)은 원하는 값으로 변경
3. 간단 사용법
* 해당 게시글에서는 단순히 'msaportal' 을 패스워드로 사용하려고 하여,
패스워드 정책 설정만 MEDIUM에서 LOW로 변경 해주었다.
SET GLOBAL validate_password.policy = LOW;