사용자 관리¶
사용자 관리자는 SQL 또는 웹 인터페이스를 통해 Snowflake 사용자를 생성 및 관리할 수 있습니다.
관리자는 SQL을 사용하여 로그인 자격 증명 및 사용자 기본값 변경 등 모든 사용자 관련 작업을 수행할 수 있습니다.
Snowsight 는 대부분의 사용자 관련 작업을 지원합니다.
Classic Console 는 일부 사용자 관련 작업을 지원하지 않지만, 사용자 비밀번호 재설정 등 가장 일반적인 활동을 수행하고 사용자를 생성할 수 있는 마법사를 제공합니다.
이 항목의 내용:
사용자를 생성하고 수정하는 데 필요한 권한¶
계정에서 사용자를 관리하기 위해 필요한 역할 또는 권한은 다음과 같습니다.
- 사용자 생성:
USERADMIN 시스템 역할은 SQL(CREATE USER)을 사용하여 사용자를 생성할 수 있습니다.
이를 수행하기 위해 사용자 지정 역할을 사용하려면 이 역할의 계정에 CREATE USER 권한을 부여합니다.
- 사용자 수정:
사용자에 대한 OWNERSHIP 권한이 있는 역할 또는 그 이상의 역할만 SQL(ALTER USER)을 사용하여 대부분의 사용자 속성을 수정할 수 있습니다. 또한, 역할에 전역 CREATE USER 권한이 있어야 합니다.
비밀번호 정책¶
비밀번호 정책에서는 Snowflake에 인증하기 위해 비밀번호를 만들고 재설정하기 위해 충족해야 하는 요구 사항을 지정합니다.
Snowflake는 비밀번호 정책에 대해 다음 두 가지 옵션을 제공합니다.
초기 사용자 프로비저닝 프로세스를 용이하게 해주는 기본 제공 비밀번호 정책.
사용 사례와 사용자 관리자의 필요에 따라 Snowflake 계정, 개별 사용자 또는 둘 모두의 수준에서 설정할 수 있는 스키마 수준 비밀번호 정책 오브젝트.
모범 사례와 각 비밀번호 정책 옵션에 대한 자세한 내용은 다음을 참조하십시오.
비밀번호 정책과 비밀번호에 대한 모범 사례¶
Snowflake에서는 비밀번호와 비밀번호 정책에 관해 다음 모범 사례를 권장합니다.
- 사용자 지정 비밀번호 정책 생성 및 적용하기
비밀번호 정책이 계정이나 사용자에 대해 설정되면 비밀번호 정책 오브젝트가 적용됩니다.
이러한 속성을 내부 보안 요구 사항을 충족하는 값으로 설정합니다. 자세한 내용은 이 항목의 4단계: 비밀번호 정책 만들기 섹션을 참조하십시오.
사용자가 비밀번호를 너무 자주 재사용하지 못하도록 하고 사용자의 비밀번호를 알아내기 위한 무차별 대입 공격 방지에 도움이 되는
PASSWORD_HISTORY
.사용자에게 새 비밀번호를 사용하도록 요구하는
PASSWORD_MIN_AGE_DAYS
. 사용자가 비밀번호를 변경하여 비밀번호 기록을 소진하고 원래 비밀번호 값을 너무 빨리 재사용할 수 있으므로 값을 0으로 설정하지는 않는 것이 좋습니다.
사용자가 Snowflake에 처음 로그인하거나 다음에 로그인할 때 비밀번호 정책을 충족하는 비밀번호로 변경해야 하도록 하려면 ALTER USER 명령을 사용하여 사용자에 대한
MUST_CHANGE_PASSWORD
속성을TRUE
로 설정하십시오.자세한 내용은 이 항목의 6단계: 비밀번호 변경 요구 섹션을 참조하십시오.
- 강력한 비밀번호 요구하기
강력한 비밀번호를 요구하도록 계정 수준 비밀번호 정책을 정의합니다.
강력한 비밀번호는 8자 이상이고 대문자와 소문자, 특수 문자(예:
!
,*
), 숫자의 조합을 포함하는 비밀번호입니다.- MFA
보안 강화를 위해 다단계 인증(MFA) 를 사용합니다.
- SCIM 사용하기
SCIM API 요청에서 사용자가 Snowflake에 액세스하기 위한 비밀번호를 설정할 수 있습니다. SCIM 관리자와 사용자 관리자는 ID 공급자 또는 Snowflake의 비밀번호 정책 사용에서 Snowflake에 액세스하기 위한 사용자 비밀번호를 관리하도록 선택해야 합니다.
현재, SCIM으로 Snowflake에 프로비저닝된 사용자는 기본 Snowflake 비밀번호 정책 을 충족하는 비밀번호가 있어야 합니다. 이 비밀번호 정책 기능을 사용하도록 선택하면 이 요구 사항을 무시할 수 있습니다.
기본 비밀번호 정책 요구 사항을 무시하려면 이 항목의 비밀번호 정책 사용하기 섹션에 있는 지침을 따르십시오.
- 비밀번호 모니터링하기
비밀번호 모니터링 방법:
Snowflake Account Usage USERS 뷰를 쿼리하여
HAS_PASSWORD
열 값이 지정된 사용자에 대해TRUE
를 반환하는지 확인합니다.Snowflake Account Usage LOGIN_HISTORY 뷰를 쿼리하고
FIRST_AUTHENTICATION_FACTOR
열을 평가합니다. 사용자가 Snowflake에 액세스하는 데 비밀번호가 필요하지 않은 경우 ALTER USER 명령을 실행하여password
속성을 NULL로 설정합니다.
Snowflake에서 제공하는 비밀번호 정책¶
비밀번호는 최대 256자의 대/소문자를 구분하는 문자열이며, 느낌표(!
), 퍼센트 기호(%
), 별표(*
) 등 특수(즉, 영숫자가 아닌) 문자와 공백을 포함할 수 있습니다.
초기 사용자 생성 중에는 아래에서 설명되는 최소 요구 사항(예: 'test12345'
)을 충족하지 않는 약한 사용자 비밀번호를 설정할 수 있습니다. 이 기능을 통해 관리자는 생성 프로세스 중에 사용자에게 일반 비밀번호를 사용할 수 있습니다. 이러한 방식을 사용하는 경우에는 MUST_CHANGE_PASSWORD
속성을 TRUE
로 설정하여 최초 로그인을 포함하여 Snowflake에 다음에 로그인할 때 사용자가 비밀번호를 변경하도록 요구하는 것이 매우 좋습니다.
또한, Snowflake는 초기 비밀번호가 없는 사용자를 생성하여 사용자가 시스템에 로그인하는 것을 허용하지 않는 비즈니스 프로세스를 지원합니다. 이러한 경우 사용자의 PASSWORD
속성 값은 NULL
이 됩니다. 그러나 일반적으로 Snowflake에서는 초기 비밀번호가 설정된 사용자를 생성하는 것이 좋습니다.
기존 비밀번호 재설정 (예: 'test12345'
를 'q@-*DaC2yjZoq3Re4JYX'
로 변경) 시, Snowflake는 ALTER USER 명령 및 웹 인터페이스를 사용할 때 다음 비밀번호 정책을 최소 요구 사항으로 적용합니다.
길이가 8자 이상이어야 합니다.
숫자가 1개 이상 포함되어야 합니다.
대문자 1개 및 소문자 1개가 포함되어야 합니다.
가장 강력한 비밀번호를 생성하기 위해 Snowflake가 매우 권장하는 가이드라인은 다음과 같습니다.
Snowflake에서만 사용하는 고유 비밀번호(즉, 다른 시스템 또는 계정의 비밀번호를 재사용하지 않음)를 만듭니다.
8자를 초과하는 길이를 사용합니다.
대/소문자, 숫자 및 특수 문자(공백 포함)를 여러 개 임의로 혼합하여 사용합니다.
쉽게 추측할 수 있는 일반적인 비밀번호, 이름, 숫자 또는 날짜를 사용하지 않습니다.
마지막으로 최상의 사용자 로그인 보안 수준을 구성할 수 있도록 Snowflake는 사용자가 MFA에 등록 하는 것을 권장합니다.
계정과 사용자에 대한 사용자 지정 비밀번호 정책¶
사용자 지정 비밀번호 정책은 비밀번호를 올바로 입력하려는 시도 횟수와 다른 비밀번호로 재시도하기 위해 기다려야 하는 시간인 “계정 차단” 시간(분)을 포함하여, Snowflake에 인증하기 위해 비밀번호를 만들고 재설정하려면 충족해야 하는 요구 사항을 지정하는 스키마 수준 오브젝트입니다.
비밀번호에 대한 비밀번호 정책 요구 사항에는 사용자와 클라이언트가 Snowflake에 인증하기 위한 보안 요구 사항을 충족하는 대문자 또는 소문자, 특수 문자, 숫자, 비밀번호 길이가 포함됩니다. 강력한 비밀번호를 요구하는 비밀번호 정책은 보안 지침과 규정을 준수하는 데 도움이 됩니다.
Snowflake는 Snowflake 계정과 개별 사용자에 대한 비밀번호 정책 설정을 지원합니다. Snowflake 계정 또는 사용자에 대해 지정된 시간에 비밀번호 정책을 하나만 설정할 수 있습니다. Snowflake 계정에 대한 비밀번호 정책이 있고 동일한 Snowflake 계정의 사용자에 대해 다른 비밀번호 정책이 설정된 경우 사용자 수준 비밀번호 정책이 계정 수준 비밀번호 정책보다 우선합니다.
비밀번호 정책은 Snowflake 계정에 설정된 새 비밀번호에 적용됩니다. 기존 비밀번호를 가진 사용자가 비밀번호 정책 요구 사항을 충족하도록 하려면 이 항목의 6단계: 비밀번호 변경 요구 에 나타낸 것처럼 다음에 Snowflake에 로그인할 때 사용자가 비밀번호를 변경해야 하도록 하십시오.
참고
MUST_CHANGE_PASSWORD
속성을 TRUE
로 설정하여 사용자가 다음에 Snowflake에 로그인할 때 비밀번호 정책 매개 변수 값을 준수하도록 비밀번호를 업데이트해야 하게끔 하려면 각 비밀번호 정책 매개 변수에 ALTER USER 문이 필요합니다.
그러나 다음 매개 변수는 예외입니다.
PASSWORD_MAX_AGE_DAYS = integer
PASSWORD_MAX_AGE_DAYS = integer
PASSWORD_LOCKOUT_TIME_MINS = integer
이러한 매개 변수는 상태 저장 매개 변수입니다. 상태 저장 매개 변수는 명령의 실행이 완료되면 매개 변수 값이 유효해짐을 의미합니다. CREATE PASSWORD POLICY 또는 ALTER PASSWORD POLICY 문에 하나 이상의 상태 저장 매개 변수만 있는 경우 ALTER USER … SET MUST_CHANGE_PASSWORD 명령을 실행할 필요가 없습니다.
ALTER PASSWORD POLICY 명령으로 상태 저장 매개 변수 값을 변경해도 현재 세션에는 영향을 미치지 않습니다. 예를 들어 PASSWORD_MAX_AGE_DAYS
매개 변수 값을 사용자의 현재 비밀번호가 만료되게 하는 숫자로 변경하면 다음에 Snowflake에 로그인할 때 사용자가 비밀번호를 변경하게 됩니다. Snowflake는 사용자가 현재 세션에서 비밀번호를 변경하도록 강제하지 않습니다.
고려 사항¶
비밀번호 정책에 대한 향후 권한 부여 는 지원되지 않습니다.
해결 방법으로 APPLY PASSWORD POLICY 권한을 사용자 지정 역할에 부여하여 해당 역할이 사용자 또는 Snowflake 계정에 비밀번호 정책을 적용하도록 허용하십시오.
비밀번호 정책은 SnowSQL 또는 지원되는 드라이버나 커넥터 를 사용하거나, 또는 Worksheets 에서 Classic Console 또는 Snowsight 를 사용하여 SQL로 관리 할 수 있습니다.
-
Classic Console, SnowSQL 및 지원되는 커넥터와 드라이버:
ALTER USER 명령을 실행하거나 Classic Console 를 사용하여 비밀번호를 재설정하거나 변경할 때, Snowflake는 비밀번호 정책을 평가하여 새로 생성된 비밀번호가 비밀번호 정책 요구 사항에 부합하는지 확인합니다.
비밀번호 정책 사용 추적:
Account Usage PASSWORD_POLICIES 뷰를 쿼리하여 Snowflake 계정의 각 비밀번호 정책에 대한 행을 반환합니다.
Information Schema 테이블 함수 POLICY_REFERENCES 를 사용하여 지정된 비밀번호 정책에 할당된 각 사용자에 대한 행과 Snowflake 계정에 할당된 비밀번호 정책에 대한 행을 반환합니다.
현재, 비밀번호 정책에는 다음 구문만 지원됩니다.
POLICY_REFERENCES( POLICY_NAME => '<password_policy_name>' )
여기서
password_policy_name
은 비밀번호 정책의 정규화된 이름입니다.예를 들어, 다음 쿼리를 실행하여
my_db
라는 데이터베이스와my_schema
라는 스키마에 저장되는password_policy_prod_1
이라는 비밀번호 정책이 할당된 각 사용자에 대한 행을 반환합니다.SELECT * FROM TABLE( my_db.information_schema.policy_references( POLICY_NAME => 'my_db.my_schema.password_policy_prod_1' ) );
비밀번호 정책 사용하기¶
다음 단계는 Snowflake에서 비밀번호 정책을 정의하고 설정하는 대표적인 가이드입니다.
이러한 단계에서는 policy_admin
으로 명명된 사용자 지정 역할이 비밀번호 정책을 소유하고(즉, 비밀번호 정책에 대한 OWNERSHIP 권한이 있고) 계정 또는 사용자에 대한 비밀번호 정책 설정을 담당하는(즉, 2단계 에 나와 있듯이, 전역 APPLY PASSWORD POLICY 권한을 가진) 중앙 집중식 관리 접근 방식을 가정합니다.
참고
계정에 대해 정책을 설정하려면 policy_admin
사용자 지정 역할에 비밀번호 정책이 포함된 데이터베이스와 스키마에 대한 USAGE 권한도 있어야 합니다.
자세한 내용은 액세스 제어 권한 섹션을 참조하십시오.
1단계: 사용자 지정 역할 만들기¶
비밀번호 정책 생성과 관리를 허용하는 사용자 지정 역할을 만듭니다. 이 항목 전체에서 예시로 드는 사용자 지정 역할에 알맞은 이름을 지정할 수도 있겠지만, 여기서는 policy_admin
이라고 합니다.
사용자 지정 역할이 이미 있는 경우 다음 단계로 계속 진행하십시오.
그렇지 않으면, policy_admin
사용자 지정 역할을 만드십시오.
USE ROLE USERADMIN; CREATE ROLE policy_admin;
2단계: 사용자 지정 역할에 권한 부여¶
policy_admin
사용자 지정 역할에 아직 다음 권한이 없는 경우, 아래에 나타낸 것처럼 권한을 부여합니다.
비밀번호 정책을 포함할 데이터베이스와 스키마에 대한 USAGE 권한.
비밀번호 정책을 저장할 스키마에 대한 CREATE PASSWORD POLICY 권한.
계정에 대한 APPLY PASSWORD POLICY 권한
USE ROLE SECURITYADMIN;
GRANT USAGE ON DATABASE security TO ROLE policy_admin;
GRANT USAGE ON SCHEMA security.policies TO ROLE policy_admin;
GRANT CREATE PASSWORD POLICY ON SCHEMA security.policies TO ROLE policy_admin;
GRANT APPLY PASSWORD POLICY ON ACCOUNT TO ROLE policy_admin;
사용자에 대한 비밀번호 정책을 설정하기로 결정한 경우 사용자에 대한 APPLY PASSWORD POLICY 권한을 부여하십시오. 예를 들어 사용자 이름이 JSMITH
인 경우 다음 명령을 실행하십시오.
GRANT APPLY PASSWORD POLICY ON USER jsmith TO ROLE policy_admin;
자세한 내용은 DDL 명령, 작업 및 권한 요약 섹션을 참조하십시오.
3단계: 사용자에게 사용자 지정 역할 부여¶
비밀번호 정책 관리 책임이 있는 사용자에게 policy_admin
사용자 지정 역할을 부여합니다.
USE ROLE SECURITYADMIN;
GRANT ROLE policy_admin TO USER jsmith;
자세한 내용은 액세스 제어 구성하기 섹션을 참조하십시오.
4단계: 비밀번호 정책 만들기¶
policy_admin
사용자 지정 역할을 사용하여 password_policy_prod_1
이라는 비밀번호 정책을 만듭니다. 자세한 내용은 CREATE PASSWORD POLICY 섹션을 참조하십시오.
USE ROLE policy_admin; USE SCHEMA security.policies; CREATE PASSWORD POLICY PASSWORD_POLICY_PROD_1 PASSWORD_MIN_LENGTH = 12 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_MIN_AGE_DAYS = 1 PASSWORD_MAX_AGE_DAYS = 999 PASSWORD_MAX_RETRIES = 3 PASSWORD_LOCKOUT_TIME_MINS = 30 PASSWORD_HISTORY = 5 COMMENT = 'production account password policy';참고
The property
PASSWORD_MAX_AGE_DAYS
is set to the largest value, 999. Choose a value that aligns with your internal guidelines. 자세한 내용은 CREATE PASSWORD POLICY 섹션을 참조하십시오.
5단계: 계정 또는 개별 사용자에 대한 비밀번호 정책 설정¶
ALTER ACCOUNT 명령으로 계정에 대한 정책을 설정합니다.
ALTER ACCOUNT SET PASSWORD POLICY security.policies.password_policy_prod_1;
한 명 이상의 사용자에 대한 추가 비밀번호 정책을 만들기로 결정한 경우 ALTER USER 명령으로 사용자에 대한 사용자 수준 비밀번호 정책을 설정합니다.
ALTER USER jsmith SET PASSWORD POLICY security.policies.password_policy_user;
중요
계정 또는 사용자에 대해 이미 설정된 비밀번호 정책을 바꾸려면 먼저 비밀번호 정책을 설정 해제한 다음, 계정 또는 사용자에 대한 새 비밀번호 정책을 설정하십시오. 예:
ALTER ACCOUNT UNSET PASSWORD POLICY; ALTER ACCOUNT SET PASSWORD POLICY security.policies.password_policy_prod_2;
6단계: 비밀번호 변경 요구¶
ALTER USER 문을 사용하는 개별 사용자에 대해 MUST_CHANGE_PASSWORD
속성을 TRUE
로 설정하여 사용자가 다음에 Snowflake에 로그인할 때 비밀번호 정책을 충족하는 비밀번호로 변경해야 하도록 합니다.
ALTER USER JSMITH SET MUST_CHANGE_PASSWORD = true;
7단계: 대상 계정에 비밀번호 정책 복제¶
비밀번호 정책과 이 정책의 참조(즉, 사용자 또는 계정에 대한 할당)는 데이터베이스 복제 및 계정 복제를 사용하여 원본 계정에서 대상 계정으로 복제할 수 있습니다. 자세한 내용은 다음을 참조하십시오.
비밀번호 정책 관리하기¶
Snowflake는 비밀번호 정책을 관리하기 위해 다음과 같은 권한 세트와 DDL을 제공합니다.
Snowflake는 비밀번호 정책 오브젝트를 관리하기 위해 다음 DDL 명령을 제공합니다.
스키마의 모든 오브젝트에 대해 작업하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한도 필요합니다.
권한 |
사용법 |
---|---|
CREATE PASSWORD POLICY |
새 비밀번호 정책을 생성할 수 있습니다. |
APPLY PASSWORD POLICY |
계정 또는 사용자 수준에서 비밀번호 정책을 적용할 수 있습니다. |
OWNERSHIP |
비밀번호 정책에 대한 모든 권한을 부여합니다. 비밀번호 정책의 대부분 속성을 변경하려면 필요합니다. |
DDL 명령, 작업 및 권한 요약¶
다음 테이블은 비밀번호 정책 DDL 작업과 필요한 권한 사이의 관계를 요약하여 제공합니다.
스키마의 모든 오브젝트에 대해 작업하려면 상위 데이터베이스 및 스키마에 대한 USAGE 권한도 필요합니다.
작업 |
필요한 권한 |
---|---|
비밀번호 정책 만들기 |
비밀번호 정책을 저장하기 위해 스키마에 대한 CREATE PASSWORD POLICY 권한을 보유한 역할. |
비밀번호 정책 변경 |
비밀번호 정책에 대한 OWNERSHIP 권한을 보유한 역할. |
비밀번호 정책 삭제 |
비밀번호 정책에 대한 OWNERSHIP 권한을 보유한 역할. |
비밀번호 정책 설명 |
비밀번호 정책에 대한 OWNERSHIP 권한 또는 . 계정에 대한 APPLY PASSWORD POLICY 권한을 보유한 역할. |
비밀번호 정책 표시 |
비밀번호 정책에 대한 OWNERSHIP 권한 또는 . 계정에 대한 APPLY PASSWORD POLICY 권한을 보유한 역할. |
비밀번호 정책 설정 및 설정 해제 |
계정 또는 사용자에 대한 APPLY PASSWORD POLICY 권한을 보유한 역할. |
사용자 역할¶
Snowflake는 사용자가 액세스할 수 있는 오브젝트(가상 웨어하우스, 데이터베이스, 테이블 등)를 관리하는 역할을 사용합니다.
Snowflake는 사전 정의된 역할 세트뿐만 아니라 사용자 지정 역할의 계층 구조를 정의하기 위한 프레임워크를 제공합니다.
모든 Snowflake 사용자는 사전 정의된 PUBLIC 역할에 자동으로 할당되며, 이를 통해 Snowflake 및 기본 오브젝트 액세스에 로그인할 수 있습니다.
PUBLIC 역할뿐만 아니라, 각 사용자는 추가 역할에 할당될 수 있으며 이러한 역할 중 하나가 기본 역할 로 지정됩니다. 사용자의 기본 역할은 사용자가 시작한 Snowflake 세션에서 사용되는 역할을 결정하지만, 이는 단지 기본값에 해당합니다. 사용자는 세션 내에서 언제라도 역할을 변경할 수 있습니다.
역할은 사용자 생성 시 또는 이후에 할당이 가능합니다.
주의
사용자에게 할당할 추가 역할을 결정할 때 및 기본 역할을 지정할 때에는 사전 정의 ACCOUNTADMIN 역할(계정 수준 관리 작업 수행 시 필요)과 관련하여 다음을 고려해야 합니다.
Snowflake는 엄격한 ACCOUNTADMIN 할당을 권장하지만, 두 명 이상의 사용자에게 할당하는 것이 좋습니다.
ACCOUNTADMIN은 절대로 사용자의 기본 역할로 지정되지 않아야 합니다. 대신, 하위 수준 관리 또는 사용자 지정 역할을 기본값으로 지정해야 합니다.
ACCOUNTADMIN 역할과 관련한 자세한 내용과 모범 사례는 액세스 제어 고려 사항 을 참조하십시오. 역할에 대한 보다 일반적인 내용은 액세스 제어의 개요 를 참조하십시오.
사용자 만들기¶
Snowsight, Classic Console 또는 SQL을 사용하여 사용자를 생성할 수 있습니다.
참고
Classic Console 또는 Snowsight 중 어떤 웹 인터페이스를 사용하든, 사용자 생성 시 비밀번호를 지정해야 합니다. CREATE USER 명령을 사용할 때는 그렇지 않습니다.
Snowflake의 비밀번호에 대한 자세한 내용은 이 항목의 비밀번호 정책 을 참조하십시오.
Snowsight 사용하기¶
Snowsight 에 로그인합니다.
Admin » Users & Roles 를 선택합니다.
+ User 를 선택합니다.
User Name 필드에 사용자의 고유 식별자를 입력합니다. 로그인 이름을 지정하지 않는 한 사용자는 이 식별자를 사용하여 Snowflake에 로그인합니다.
선택 사항으로, Email 필드에 사용자의 이메일 주소를 지정합니다.
Password 및 Confirm Password 필드에 사용자의 비밀번호를 입력합니다.
선택 사항으로, 사용자를 생성한 이유를 설명하는 주석을 추가합니다.
사용자가 로그인할 때 비밀번호를 반드시 변경하도록 하려면 Force user to change password on first time login 확인란을 선택한 상태로 두십시오.
선택 사항으로, 사용자에 대한 추가 세부 정보를 지정하려면 Advanced User Options 를 선택하십시오.
Snowflake에 로그인할 때 User Name 대신 사용할 Login Name.
로그인 후 화면에 나타나는 Display Name.
사용자 프로필을 작성하기 위한 First Name 및 Last Name.
Default Role, Default Warehouse, Default Namespace
Create User 를 선택합니다.
Classic Console 사용하기¶
Create 를 선택합니다.
User Name 필드에 사용자의 고유 식별자를 입력합니다.
참고
사용자 이름은 Snowflake에서 사용자에 대한 고유 식별자입니다. 이러한 사용자 이름은 사용자의 로그인 이름(즉, 사용자가 Snowflake에 로그인할 때 입력하는 이름)이 아닙니다. Snowflake에서는 원하는 경우 다른 사용자 이름 및 로그인 이름을 사용하는 것이 허용됩니다. 사용자의 로그인 이름은 다음 화면에서 지정할 수 있습니다.
Password 및 Confirm Password 필드에 사용자의 비밀번호를 입력합니다.
사용자가 다음 로그인 시에 비밀번호를 변경하도록 하려면 Force Password Change 확인란을 선택하고, 그렇지 않으면 확인란의 선택을 해제합니다.
Next 를 선택합니다. Advanced 화면이 열립니다.
선택 사항으로 사용자의 Login Name, Display Name 및 개인 정보를 입력합니다.
참고
사용자가 Snowflake에 로그인하려면 로그인 이름이 필요합니다. 사용자가 로그인 이름을 명시적으로 입력하지 않으면 Snowflake는 사용자 이름을 로그인 이름으로 사용합니다.
Next 를 선택합니다. Preferences 화면이 열립니다.
선택 사항으로 사용자의 기본값을 입력합니다.
가상 웨어하우스
db_name
또는db_name.schema_name
형식의 네임스페이스역할
Finish 를 선택합니다. Snowflake에 성공 메시지가 표시됩니다.
SQL 사용하기¶
사용자를 생성하려면 CREATE USER 명령을 사용합니다.
중요
사용자를 생성할 때 기본 역할을 사용자에게 할당하려면 이 역할의 권한을 사용자에게 명시적으로 부여해야 합니다. 예:
CREATE USER janesmith PASSWORD = 'abc123' DEFAULT_ROLE = myrole MUST_CHANGE_PASSWORD = TRUE; GRANT ROLE myrole TO USER janesmith;
GRANT ROLE 명령을 사용하면 여러 역할을 한 명의 사용자에게 할당할 수 있습니다. 웹 인터페이스는 현재 이러한 기능을 지원하지 않습니다.
사용자 비밀번호 재설정하기¶
관리자는 웹 인터페이스를 통해 또는 SQL을 사용하여 사용자 비밀번호를 변경할 수 있습니다.
Snowsight 사용하기¶
Classic Console 사용하기¶
참고
사용자는 Classic Console 를 통해 본인의 비밀번호만 변경할 수 있습니다. 자세한 내용은 비밀번호 변경 / 사용자의 (세션) 역할 전환 / 로그아웃하기 섹션을 참조하십시오.
SQL 사용하기¶
사용자 비밀번호를 입력하려면 ALTER USER 명령을 사용합니다. 예:
ALTER USER janesmith SET PASSWORD = 'H8MZRqa8gEe/kvHzvJ+Giq94DuCYoQXmfbb$Xnt' MUST_CHANGE_PASSWORD = TRUE;
아니면, ALTER USER … RESET PASSWORD 구문을 사용하여 사용자와 공유할 URL을 생성합니다. URL에서는 사용자가 새 비밀번호를 입력할 수 있는 웹 페이지가 열립니다. 예:
ALTER USER janesmith RESET PASSWORD;참고
생성된 URL은 한 번만 사용할 수 있으며 4시간 후에 만료됩니다.
ALTER USER … RESET PASSWORD 문을 실행해도 현재 비밀번호가 무효화되지 않습니다. 사용자는 새 비밀번호를 재설정할 때까지 기존 비밀번호를 계속 사용할 수 있습니다.
관리자용 비밀번호 재설정하기¶
계정 관리자(즉, ACCOUNTADMIN 역할을 가진 사용자)는 사용자용 비밀번호 재설정하기 에 설명된 절차에 따라 자신의 비밀번호를 재설정할 수 있습니다.
계정 관리자의 계정이 잠겨 자신의 계정에 액세스할 수 없는 경우 ACCOUNTADMIN 역할을 가진 다른 사용자가 잠긴 관리자의 비밀번호를 재설정할 수 있습니다. 관리자 계정이 잠기고 비밀번호를 변경해 줄 다른 관리자가 없는 경우 Snowflake 지원 에 문의하여 비밀번호를 재설정하십시오.
사용자 비밀번호 변경 기능 비활성화하기¶
사용자는 오른쪽 상단의 드롭다운 메뉴(로그인 이름 옆) » Change Password 을 클릭하여 웹 인터페이스에서 Snowflake 비밀번호를 변경할 수 있습니다. Select a New Password 대화 상자가 열립니다. 이 대화상자에서는 현재 및 새 비밀번호를 입력할 수 있습니다.
선택 사항으로 계정의 사용자가 본인의 비밀번호를 변경하는 기능을 비활성화할 수 있습니다. 계정 관리자는 Account » Users 에서 웹 인터페이스를 사용하거나 ALTER USER 명령을 사용하여 SQL을 통해 사용자 비밀번호를 변경할 수 있습니다.
이러한 변경을 요청하려면 Snowflake 지원 에 문의하십시오.
사용자 비활성화 또는 활성화하기¶
사용자를 비활성화하면 사용자가 Snowflake에 로그인할 수 없습니다. 사용자는 웹 인터페이스를 통해 또는 SQL을 사용하여 비활성화할 수 있습니다.
Snowsight 사용하기¶
Snowsight 에 로그인합니다.
Admin » Users & Roles 를 선택합니다.
열리는 확인 대화 상자에서 Disable 을 선택합니다.
사용자를 활성화하려면 같은 단계를 따르되 Enable User 를 클릭하십시오.
Classic Console 사용하기¶
선택할 사용자 행을 클릭한 후 Disable User 버튼을 클릭합니다. 확인 대화 상자가 열립니다.
사용자를 비활성화하려면 Yes 를 클릭합니다.
사용자를 활성화하려면 같은 단계를 따르되 Enable User 를 클릭하십시오.
SQL 사용하기¶
사용자를 비활성화 또는 활성화하려면 ALTER USER 명령을 사용합니다. 예:
사용자 비활성화:
ALTER USER janesmith SET DISABLED = TRUE;
사용자 활성화:
ALTER USER janesmith SET DISABLED = FALSE;
사용자 잠금 해제하기¶
사용자 로그인을 5회 연속 시도한 후 실패하면 사용자의 계정이 일정 시간(현재 15분) 동안 잠깁니다. 일정 시간이 지나면 시스템에서 잠금이 자동으로 해제되고 사용자는 다시 로그인을 시도할 수 있습니다.
이 시간이 경과하기 전에 사용자의 잠금을 해제하려면 ALTER USER 명령을 사용하여 타이머를 재설정할 수 있습니다.
다음 예시에서는 타이머를 0으로 재설정하여, janesmith
사용자의 잠금을 즉시 해제합니다.
ALTER USER janesmith SET MINS_TO_UNLOCK= 0;
팁
단일 역할에 모든 Snowflake 사용자에 대한 OWNERSHIP 권한이 있는 경우 여러 사용자에게 해당 역할에 대한 권한을 부여하는 것이 좋습니다. 이러한 방식으로 해당 역할의 구성원이 잠긴 경우 다른 구성원이 해당 사용자의 잠금을 해제할 수 있습니다.
사용자의 세션 매개 변수 변경하기¶
사용자의 세션 매개 변수를 표시하려면 다음 SQL 구문을 사용합니다.
SHOW PARAMETERS [ LIKE '<pattern>' ] FOR USER <name>
사용자의 세션 매개 변수를 변경하려면 다음 구문을 사용합니다.
ALTER USER <name> SET <session_param> = <value>
예를 들어, 사용자가 시간 제한 없이 Snowflake에 계속해서 연결하도록 허용합니다.
ALTER USER janesmith SET CLIENT_SESSION_KEEP_ALIVE = TRUE;
사용자의 세션 매개 변수를 기본값으로 재설정하려면 다음 구문을 사용합니다.
ALTER USER <name> UNSET <session_param>
다른 사용자 속성 수정하기¶
기타 모든 사용자 속성은 ALTER USER 명령을 사용하여 수정할 수 있습니다. 예:
사용자
janesmith
의 성을Jones
로 변경:ALTER USER janesmith SET LAST_NAME = 'Jones';
사용자
janesmith
의 기본 웨어하우스, 네임스페이스, 기본 역할, 보조 역할 설정 또는 변경:ALTER USER janesmith SET DEFAULT_WAREHOUSE = mywarehouse DEFAULT_NAMESPACE = mydatabase.myschema DEFAULT_ROLE = myrole DEFAULT_SECONDARY_ROLES = ('ALL');
사용자 보기¶
사용자에 대한 정보는 SQL을 사용하여 살펴볼 수 있습니다.
1명 이상 사용자에 대한 정보를 살펴보려면 DESCRIBE USER 또는 SHOW USERS 명령을 사용합니다.
예:
DESC USER janeksmith;
사용자 삭제하기¶
사용자를 삭제하면 Snowflake에서 사용자의 자격 증명이 제거됩니다.
조심
사용자를 삭제하면 해당 사용자가 소유한 워크시트와 대시보드도 제거됩니다.
사용자가 소유한 워크시트에 대한 액세스 권한을 유지하려면 다음 두 가지 옵션이 있습니다.
사용자를 삭제한 후 사용자가 소유한 워크시트를 최대 500개까지 복구하십시오.
사용자를 삭제하기 전에는 사용자가 워크시트 또는 워크시트 폴더를 다른 사용자와 공유하고 다른 사용자에게 편집 권한을 부여하거나 워크시트 내용을 다른 사용자가 소유한 워크시트로 복사할 수 있습니다.
테이블이나 뷰와 같이 사용자가 만든 오브젝트는 오브젝트 생성 시 사용자의 활성 역할이 소유하므로 삭제되지 않습니다. 역할 계층 구조 의 동일 역할 또는 이상의 역할에 할당된 다른 사용자는 오브젝트를 관리하거나 다른 역할로 소유권을 이전할 수 있습니다.
Snowsight 사용하기¶
Classic Console 사용하기¶
SQL 사용하기¶
사용자를 삭제하려면 DROP USER 명령을 사용합니다.
DROP USER janesmith;