CREATE ROLE¶
새 역할을 만들거나 시스템의 기존 역할을 대체합니다.
역할을 만든 후에 역할에 오브젝트 권한을 부여한 다음 다른 역할이나 개별 사용자에게 그 역할을 부여하여 시스템의 오브젝트에 대한 액세스 제어 보안을 활성화할 수 있습니다.
이 명령은 다음 변형을 지원합니다.
- CREATE OR ALTER ROLE: 역할이 없는 경우 역할을 만들거나 기존 역할을 변경합니다. 
- 참고 항목:
- GRANT <privileges> … TO ROLE, GRANT ROLE , GRANT OWNERSHIP , DROP ROLE , ALTER ROLE , SHOW ROLES 
구문¶
CREATE [ OR REPLACE ] ROLE [ IF NOT EXISTS ] <name>
  [ COMMENT = '<string_literal>' ]
  [ [ WITH ] TAG ( <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' , ... ] ) ]
베리언트 구문¶
CREATE OR ALTER ROLE¶
아직 존재하지 않는 새 역할을 만들거나 기존 역할을 문에 정의된 역할로 변환합니다. CREATE OR ALTER ROLE 문은 CREATE ROLE 문의 구문 규칙을 따르며 ALTER ROLE 문과 제한 사항이 동일합니다.
CREATE OR ALTER ROLE <name>
  [ COMMENT = '<string_literal>' ]
자세한 내용은 CREATE OR ALTER ROLE 사용법 노트 섹션을 참조하십시오.
필수 매개 변수¶
- name
- 역할의 식별자로, 계정에 고유한 식별자여야 합니다. - 식별자는 알파벳 문자로 시작해야 하며 전체 식별자 문자열을 큰따옴표(예: - "My object")로 묶지 않는 한 공백이나 특수 문자를 포함할 수 없습니다. 큰따옴표로 묶인 식별자도 대/소문자를 구분합니다.- 자세한 내용은 식별자 요구 사항 섹션을 참조하십시오. 
선택적 매개 변수¶
- COMMENT = 'string_literal'
- 역할에 대한 설명을 지정합니다. - 기본값: 값 없음 
- TAG ( tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ] )
- 태그 이름과 태그 문자열 값을 지정합니다. - 태그 값은 항상 문자열이며, 태그 값의 최대 문자 수는 256자입니다. - 문에서 태그를 지정하는 방법에 대한 자세한 내용은 오브젝트에 대한 태그 할당량 섹션을 참조하십시오. 
액세스 제어 요구 사항¶
이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.
| 권한 | 오브젝트 | 참고 | 
|---|---|---|
| CREATE ROLE | 계정 | Only the USERADMIN role, or a higher role, has this privilege by default. The privilege can be granted to additional roles as needed. | 
| OWNERSHIP | 데이터베이스 역할 | 기존 역할에 대한 CREATE OR ALTER ROLE 문을 실행하는 데 필수입니다. OWNERSHIP is a special privilege on an object that is automatically granted to the role that created the object, but can also be transferred using the GRANT OWNERSHIP command to a different role by the owning role (or any role with the MANAGE GRANTS privilege). | 
지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.
보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.
일반적인 사용법 노트¶
- 메타데이터 관련: - 주의 - 고객은 Snowflake 서비스를 사용할 때 개인 데이터(사용자 오브젝트 제외), 민감한 데이터, 수출 통제 대상 데이터 또는 기타 규제 데이터가 메타데이터로 입력되지 않도록 해야 합니다. 자세한 내용은 Snowflake의 메타데이터 필드 섹션을 참조하십시오. 
- OR REPLACE및- IF NOT EXISTS절은 상호 배타적입니다. 두 문자를 같은 문에 함께 사용할 수 없습니다.
- CREATE OR REPLACE <오브젝트> 문은 원자성입니다. 즉, 오브젝트가 바뀔 때 단일 트랜잭션으로 이전 오브젝트가 삭제되고 새 오브젝트가 생성됩니다. 
CREATE OR ALTER ROLE 사용법 노트¶
- ALTER ROLE 명령의 모든 제한 사항이 적용됩니다. 
- 태그 설정 또는 설정 해제는 지원되지 않지만 기존 태그는 CREATE OR ALTER ROLE 문에 의해 변경되지 않고 그대로 유지됩니다. 
예¶
CREATE ROLE myrole;