MySQL 서버에는 비밀번호 글자 조합을 강제하거나 금칙어를 설정하는 기능도 포함되어 있다.
validate_password
컴포넌트를 설치해야 한다.INSTALL COMPONENT 'file://component_validate_password;
check_user_name
dictionary_file
length
mixed_case_count
number_count
policy
LOW
: 길이만 검증MEDIUM
: 기본값, 길이와 대소문자 그리고 특수문자 배합을 검증STRONG
: MEDIUM 레벨의 검증 + 금칙어 포함 여부 검증special_char_count
validate_password.dictionary_file
시스템 변수에 금칙어들이 저장된 파일을 등록하면 된다.‘STRONG’
으로 설정해야 적용된다.SET GLOBAL validate_password.dictionary_file='prohibitive_word.data';
SET GLOBAL validate_password.policy='STRONG';
old_password
라는 비밀번호를 가진 데이터베이스 서버가 있고 애플리케이션이 이 비밀번호를 통해 서비스를 실행하고 있다.
RETAIN CURRENT PASSWORD
옵션을 추가하면 기존 비밀번호는 세컨더리가 되고 새 비밀번호는 프라이머리가 되어 이중 비밀번호가 설정된다.ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password' RETAIN CURRENT PASSWORD;
old_password
로 접속하고 있던 애플리케이션의 DB 접근 설정 파일을 new_password
로 바꾸고 재배포한다.
ALTER USER 'root'@'localhost' DISCARD OLD PASSWORD;