이 페이지에서는 PostgreSQL용 AlloyDB 인스턴스의 데이터베이스 사용자에 대한 비밀번호 정책을 설정하고 관리하는 방법을 설명합니다.
AlloyDB에서 사용할 수 있는 인증 방법에 관한 개요는 인증을 참고하세요.
비밀번호 정책 정보
애플리케이션의 데이터베이스 사용자가 기본 제공되는 비밀번호 기반 메서드를 사용하여 AlloyDB 인스턴스와 인증하는 경우 강력한 비밀번호를 적용하여 인증을 더 안전하게 만들 수 있습니다. 인스턴스에 비밀번호 정책을 설정하여 비밀번호 시행을 정의하고 사용 설정할 수 있습니다.
비밀번호 정책의 제한사항
AlloyDB 비밀번호 정책에는 다음과 같은 제한사항이 있습니다.
비밀번호 정책은 정책을 설정한 후에 생성된 비밀번호에만 적용됩니다. 기존 사용자 비밀번호는 비밀번호 정책 변경의 영향을 받지 않습니다.
비밀번호 정책은 일반 텍스트로만 입력된 비밀번호에 적용됩니다. 암호화된 문자열로 입력된 비밀번호에는 비밀번호 정책이 적용되지 않습니다.
인스턴스 비밀번호 정책 설정
인스턴스에서 비밀번호 플래그를 구성하여 인스턴스에 비밀번호 정책을 설정할 수 있습니다.
사용자 이름 사용 금지: 비밀번호에서 사용자 이름을 사용하지 못하게 합니다.
비밀번호 복잡성: 비밀번호에 허용된 수의 소문자, 대문자, 숫자, 영숫자가 아닌 문자가 포함되어 있는지 확인합니다. 비밀번호 길이가 유효한지도 확인합니다.
비밀번호 만료: 비밀번호를 정기적으로 변경해야 합니다.
AlloyDB에서 지원하는 비밀번호 정책 플래그 목록은 비밀번호 정책 플래그를 참고하세요.
비밀번호 복잡성 적용
비밀번호 복잡성 정책을 적용하려면 다음 단계를 따르세요.
password.enforce_complexity
플래그를ON
로 설정합니다.- 비밀번호 정책 플래그를 사용하여 비밀번호 정책을 정의합니다.
예를 들어 비밀번호에 대문자 1개, 숫자 1개가 포함되어야 하며 길이가 10자(영문 기준) 이상이어야 한다는 비밀번호 정책을 적용하려면 다음 플래그를 설정해야 합니다.
password.enforce_complexity
~ON
password.min_uppercase_letters
플래그를1
로 설정합니다.password.min_numerical_chars
플래그를1
로 설정합니다.password.min_pass_length
플래그를10
로 설정합니다.
이러한 플래그가 설정된 후 이 비밀번호 정책을 준수하지 않는 데이터베이스 사용자 비밀번호를 설정하려고 하면 실패합니다. 예를 들어 이 정책을 설정하면 비밀번호 foo
가 10자 미만이고 숫자나 대문자가 포함되어 있지 않으므로 다음 psql
클라이언트 명령어가 실패합니다.
CREATE USER USERNAME WITH PASSWORD 'foo';
비밀번호 만료 적용
비밀번호 만료 정책을 적용하려면 다음 단계를 따르세요.
password.enforce_expiration
플래그를ON
로 설정합니다.password.expiration_in_days
플래그를 비밀번호가 설정된 후 만료되는 일수로 설정합니다.password.notify_expiration_in_days
플래그를 비밀번호 만료 전에 사용자가 비밀번호 만료 알림을 받기 시작하는 일수로 설정합니다.
예를 들어 비밀번호가 30일 후에 만료되고 비밀번호가 만료되기 15일 전에 사용자에게 알림이 전송된다고 하는 비밀번호 정책을 적용하려면 다음을 설정합니다.
password.enforce_expiration
~ON
password.expiration_in_days
플래그를30
로 설정합니다.password.notify_expiration_in_days
플래그를15
로 설정합니다.
사용자의 비밀번호가 만료되면 해당 사용자는 AlloyDB Omni 인스턴스에 연결할 수 없습니다. 사용자의 비밀번호를 재설정하려면 데이터베이스 사용자의 비밀번호 변경하기를 참고하세요.
비밀번호에 사용자 이름 허용 안함
비밀번호에 사용자 이름이 포함되지 않도록 하는 정책을 적용하려면 다음 단계를 따르세요.
예를 들어 비밀번호에 사용자 이름이 하위 문자열로 포함되지 않도록 하려면 다음을 설정합니다.
password.enforce_password_does_not_contain_username
~ON
이 플래그가 설정되면 비밀번호 alex-secret
에 사용자 이름 Alex
가 포함되어 있으므로 다음 작업이 실패합니다.
CREATE USER Alex WITH PASSWORD 'alex-secret';