비밀번호 정책
비밀번호 정책 (Password Policies)
Vault의 비밀번호 정책(Password Policies) 기능은 Vault가 생성하는 비밀번호(예: 동적 시크릿, 데이터베이스 자격 증명, 사용자 생성 때 만드는 비밀번호)의 강도와 형식을 제어할 수 있게 해주는 기능입니다. 비밀번호 정책을 정의하면 조직의 보안 요구사항에 맞는 비밀번호를 일관되게 생성할 수 있습니다.
출처: 문서
본문
비밀번호 정책이란
비밀번호 정책은 Vault가 생성하는 임시 비밀번호의 구성을 미리 정의한 규칙입니다. 정책은 규칙(rule)들의 조합으로 작성되며, 길이, 문자 종류(소문자, 대문자, 숫자, 특수문자), 허용/금지 문자, 규칙 적용 방식 등을 지정할 수 있습니다.
정책 구성 요소
- 길이(length) — 생성되는 비밀번호의 최소/최대 길이
- 규칙(rule) — 문자 집합과 그 역할을 정의. 예:
charset(문자 집합),repeated(반복 금지),sequence(연속 금지) 등 - 규칙 공간(rule space) — 여러 규칙이 각각 몇 자리 이상을 차지해야 하는지
정책 작성 예시
HCL 형태로 정책을 작성합니다.
length = 20
rule "charset" {
charset = "abcdefghijklmnopqrstuvwxyz"
min-chars = 1
}
rule "charset" {
charset = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
min-chars = 1
}
rule "charset" {
charset = "0123456789"
min-chars = 1
}
이 정책은 20자리 비밀번호를, 소문자·대문자·숫자를 각각 최소 1자 이상 포함하도록 생성합니다.
적용 방법
작성한 정책을 Vault에 등록한 뒤, 이를 사용할 시크릿 엔진/인증 메서드에 연결합니다.
$ vault write sys/policies/password/example policy='@policy.hcl'
$ vault write database/roles/my-role password_policy="example"
주의사항
- 비밀번호 정책은 Vault가 생성하는 비밀번호에만 적용됩니다(사용자가 직접 입력하는 비밀번호에는 적용되지 않을 수 있습니다).
- 정책에 사용 가능한 규칙과 문법은 버전에 따라 다를 수 있으니 공식 문서를 확인하세요.