CREATE PASSWORD POLICY¶
새 비밀번호 정책을 생성하거나 기존 비밀번호 정책을 대체합니다.
비밀번호 정책을 만든 후 ALTER ACCOUNT 문을 사용하여 계정에 비밀번호 정책을 적용하거나 ALTER USER 문을 사용하여 사용자에게 세션 정책을 적용합니다.
- 참고 항목:
구문¶
CREATE [ OR REPLACE ] PASSWORD POLICY [ IF NOT EXISTS ] <name>
  [ PASSWORD_MIN_LENGTH = <integer> ]
  [ PASSWORD_MAX_LENGTH = <integer> ]
  [ PASSWORD_MIN_UPPER_CASE_CHARS = <integer> ]
  [ PASSWORD_MIN_LOWER_CASE_CHARS = <integer> ]
  [ PASSWORD_MIN_NUMERIC_CHARS = <integer> ]
  [ PASSWORD_MIN_SPECIAL_CHARS = <integer> ]
  [ PASSWORD_MIN_AGE_DAYS = <integer> ]
  [ PASSWORD_MAX_AGE_DAYS = <integer> ]
  [ PASSWORD_MAX_RETRIES = <integer> ]
  [ PASSWORD_LOCKOUT_TIME_MINS = <integer> ]
  [ PASSWORD_HISTORY = <integer> ]
  [ COMMENT = '<string_literal>' ]
필수 매개 변수¶
- name
- 비밀번호 정책의 식별자입니다. 계정에 대해 고유해야 합니다. - 식별자 값은 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예: - "My object")로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.- 자세한 내용은 식별자 요구 사항 섹션을 참조하십시오. 
선택적 매개 변수¶
- PASSWORD_MIN_LENGTH = integer
- 비밀번호에 포함해야 하는 최소 문자 수를 지정합니다. - 지원되는 범위: 8~256(포함). - 기본값: 14 
- PASSWORD_MAX_LENGTH = integer
- 비밀번호에 포함해야 하는 최대 문자 수를 지정합니다. 이 수는 - PASSWORD_MIN_LENGTH,- PASSWORD_MIN_UPPER_CASE_CHARS,- PASSWORD_MIN_LOWER_CASE_CHARS의 합보다 크거나 같아야 합니다.- 지원되는 범위: 8~256(포함). - 기본값: 256 
- PASSWORD_MIN_UPPER_CASE_CHARS = integer
- 비밀번호에 포함해야 하는 최소 대문자 수를 지정합니다. - 지원되는 범위: 0~256(포함). - 기본값: 1 
- PASSWORD_MIN_LOWER_CASE_CHARS = integer
- 비밀번호에 포함해야 하는 최소 소문자 수를 지정합니다. - 지원되는 범위: 0~256(포함). - 기본값: 1 
- PASSWORD_MIN_NUMERIC_CHARS = integer
- 비밀번호에 포함해야 하는 최소 숫자 수를 지정합니다. - 지원되는 범위: 0~256(포함). - 기본값: 1 
- PASSWORD_MIN_SPECIAL_CHARS = integer
- 비밀번호에 포함해야 하는 최소 특수 문자 수를 지정합니다. - 지원되는 범위: 0~256(포함). - 기본값: 0 
- PASSWORD_MIN_AGE_DAYS = integer
- 최근에 변경된 비밀번호를 다시 변경할 수 있을 때까지 사용자가 기다려야 하는 일수를 지정합니다. - 지원되는 범위: 0~999(포함). - 기본값: 0 
- PASSWORD_MAX_AGE_DAYS = integer
- 비밀번호를 변경해야 하는 기한까지의 최대 일수를 지정합니다. - 지원되는 범위: 0~999(포함). - 0의 값(즉, - 0)은 비밀번호를 변경할 필요가 없음을 나타냅니다. 기본 계정 수준 비밀번호 정책 또는 사용자 수준 정책에는 이 값을 선택하지 않는 것이 좋습니다. 대신 내부 보안 지침을 충족하는 값을 선택하십시오.- 기본값: 90, 이는 비밀번호를 90일마다 변경해야 함을 의미합니다. - 중요 - 이 매개 변수는 상태 저장 매개 변수입니다. 자세한 내용은 계정과 사용자에 대한 사용자 지정 비밀번호 정책 의 참고 사항을 참조하십시오. 
- PASSWORD_MAX_RETRIES = integer
- 계정이 잠기기 전에 비밀번호 입력을 시도할 수 있는 최대 횟수를 지정합니다. - 지원되는 범위: 1~10(포함). - 기본값: 5 - 중요 - 이 매개 변수는 상태 저장 매개 변수입니다. 자세한 내용은 계정과 사용자에 대한 사용자 지정 비밀번호 정책 의 참고 사항을 참조하십시오. 
- PASSWORD_LOCKOUT_TIME_MINS = integer
- 지정된 비밀번호 재시도 횟수(즉, - PASSWORD_MAX_RETRIES)만큼 재시도했을 때 사용자 계정이 잠기게 되는 시간(분)을 지정합니다.- 지원되는 범위: 1~999(포함). - 기본값: 15 - 중요 - 이 매개 변수는 상태 저장 매개 변수입니다. 자세한 내용은 계정과 사용자에 대한 사용자 지정 비밀번호 정책 의 참고 사항을 참조하십시오. 
- PASSWORD_HISTORY = integer
- Snowflake가 저장하는 가장 최근 비밀번호의 수를 지정합니다. 이렇게 저장된 비밀번호는 사용자가 비밀번호 값을 업데이트할 때 반복될 수 없습니다. - 현재 비밀번호 값은 기록에 포함되지 않습니다. - 기록 값을 늘리면 Snowflake는 이전 값을 저장합니다. - 값을 줄이면 Snowflake는 설정된 값까지 저장된 값을 저장합니다. 예를 들어 기록 값이 8인데 기록 값을 3으로 변경하면 Snowflake는 가장 최근의 비밀번호 3개를 저장하고 기록에서 이전의 비밀번호 값 5개를 삭제합니다. - 기본값: 5 - 최대: 24 
- COMMENT = 'string_literal'
- 설명을 추가하거나 비밀번호 정책에 대한 기존 설명을 덮어씁니다. 
액세스 제어 요구 사항¶
이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
| 권한 | 오브젝트 | 참고 | 
|---|---|---|
| CREATE PASSWORD POLICY | 스키마 | 
스키마의 모든 오브젝트에 대해 작업을 수행하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한. 스키마에 대한 모든 권한 부여된 역할은 스키마를 확인할 수 있습니다. 예를 들어, 스키마에 대해 CREATE 권한을 부여받은 역할은 해당 스키마에 대한 USAGE 권한을 함께 부여받지 않더라도 해당 스키마에 대한 오브젝트를 생성할 수 있습니다.
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
비밀번호 정책 DDL 및 권한에 대한 추가적인 세부 사항은 DDL 명령 섹션을 참조하십시오.
사용법 노트¶
- 기존 비밀번호 정책을 대체하고 정책의 현재 정의를 확인해야 하는 경우 GET_DDL 함수를 호출하거나 DESCRIBE PASSWORD POLICY 명령을 실행하십시오. 
- OR REPLACE및- IF NOT EXISTS절은 상호 배타적입니다. 두 문자를 같은 문에 함께 사용할 수 없습니다.
- CREATE OR REPLACE <오브젝트> 문은 원자성입니다. 즉, 오브젝트가 바뀔 때 단일 트랜잭션으로 이전 오브젝트가 삭제되고 새 오브젝트가 생성됩니다. 
예¶
현재 계정에 대한 password_policy_prod_1 이라는 비밀번호 정책을 생성합니다.
CREATE PASSWORD POLICY PASSWORD_POLICY_PROD_1 PASSWORD_MIN_LENGTH = 14 PASSWORD_MAX_LENGTH = 24 PASSWORD_MIN_UPPER_CASE_CHARS = 2 PASSWORD_MIN_LOWER_CASE_CHARS = 2 PASSWORD_MIN_NUMERIC_CHARS = 2 PASSWORD_MIN_SPECIAL_CHARS = 2 PASSWORD_MAX_AGE_DAYS = 30 PASSWORD_MAX_RETRIES = 3 PASSWORD_LOCKOUT_TIME_MINS = 30 PASSWORD_HISTORY = 5 COMMENT = 'production account password policy';