SYSTEM$LINK_ORGANIZATION_USER
SYSTEM$LINK_ORGANIZATION_USER
조직 사용자(organization user)를 일반 계정에 이미 존재하는 사용자와 연결해요.
계정 관리자가 조직 사용자 그룹을 일반 계정에 추가하면, 그룹의 조직 사용자가 계정에 이미 사용자 객체가 있는 사람이나 서비스에 해당할 때 충돌이 발생해요. 이 함수는 해당 충돌을 해결하고 사용자가 앞으로 조직 사용자로 관리될 수 있게 해줘요.
본문
구문 (Syntax)
SYSTEM$LINK_ORGANIZATION_USER( '<local_user>', '<org_user>' )
인자 (Arguments)
'local_user'— 일반 계정에 존재하는 사용자 객체의 이름이에요.'org_user'—local_user와 같은 사람이나 서비스에 해당하는 조직 사용자의 이름이에요.
사용 참고 (Usage Notes)
조직 사용자를 로컬 사용자 객체에 연결하면 로컬 사용자의 EMAIL 속성이 조직 사용자의 EMAIL 속성으로 대체돼요.
로컬 사용자의 TYPE 속성은 조직 사용자의 TYPE 속성과 호환되어야 해요. Snowflake는 TYPE 속성이 NULL인 사용자를 PERSON 사용자로 취급하므로, 다음 경우에 유형이 호환돼요.
| 조직 사용자 유형 | 호환되는 로컬 사용자 유형 |
|---|---|
PERSON |
PERSON, NULL |
SERVICE |
SERVICE |
유형이 호환되지 않으면 함수는 오류를 반환하고 로컬 사용자는 연결되지 않아요. 예를 들어 SERVICE 로컬 사용자를 PERSON 조직 사용자에 연결할 수 없어요. 조직 사용자의 유형은 변경할 수 없으므로, 이런 종류의 충돌은 필요한 유형으로 조직 사용자를 만들거나, 연결 전에 ALTER USER로 로컬 사용자의 유형을 변경해서 해결해요. 로컬 사용자가 연결된 후에는 일반 계정에서 해당 사용자의 TYPE 속성을 더 이상 변경할 수 없어요. 조직 사용자 유형에 대한 자세한 내용은 조직 사용자 유형을 참고하세요.
예제 (Examples)
로컬 사용자 jloeb를 같은 이름의 조직 사용자와 연결해요:
SELECT SYSTEM$LINK_ORGANIZATION_USER('jloeb', 'jloeb');
로컬 서비스 사용자를 SERVICE 조직 사용자와 연결해요. 두 사용자 모두 SERVICE 사용자이므로 유형이 호환돼요:
SELECT SYSTEM$LINK_ORGANIZATION_USER('etl_pipeline', 'etl_pipeline');
더 알아보기
- Snowflake 시스템 제어 함수 — 관련 시스템 함수 전체 목록