SYSTEM$DESC_ICEBERG_ACCESS_IDENTITY
SYSTEM$DESC_ICEBERG_ACCESS_IDENTITY (Iceberg 접근 ID 조회)
계정의 지정된 외부 클라우드 제공자에 대한 Snowflake 서비스 주체(service principal)에 관한 정보를 반환해요.
출처: Snowflake SQL Reference - SYSTEM$DESC_ICEBERG_ACCESS_IDENTITY
본문
참고: Snowflake 관리 Apache Iceberg™ 테이블에 대한 복제 구성(Configure replication for Snowflake-managed Apache Iceberg™ tables)
구문
SYSTEM$DESC_ICEBERG_ACCESS_IDENTITY(
'<cloud_storage_provider>' [ , '<account_name>' ] )
필수 인자
'cloud_storage_provider'
서비스 주체 정보를 검색할 클라우드 제공자를 지정해요. 이 인자에 대해 다음 값 중 하나를 지정할 수 있어요.
-
'S3' -
'GCS' -
'AZURE'
선택 인자
'account_name'
선택적으로 서비스 주체 정보를 검색할 Snowflake 계정의 이름을 지정해요. 지정하면 SHOW REPLICATION ACCOUNTS 명령이 반환하는 account_name 열의 값을 사용해야 해요.
지정하지 않으면 함수는 현재 계정에 대한 정보를 반환해요.
반환 값
이 함수는 다음 이름/값 쌍을 포함하는 JSON 객체를 반환해요.
S3:
{
"STORAGE_PROVIDER":"S3",
"STORAGE_AWS_IAM_USER_ARN":"<iam_user_arn>"
}
여기서:
STORAGE_PROVIDER
클라우드 스토리지 제공자예요.
STORAGE_AWS_IAM_USER_ARN
Snowflake 계정을 위해 자동으로 생성된 AWS IAM 사용자의 ARN이에요.
GCS:
{
"STORAGE_PROVIDER":"GCS",
"STORAGE_GCP_SERVICE_ACCOUNT":"<service_account_identifier>"
}
여기서:
STORAGE_PROVIDER
클라우드 스토리지 제공자예요.
STORAGE_GCP_SERVICE_ACCOUNT
Snowflake 계정을 위해 자동으로 생성된 GCS 서비스 계정의 ID예요.
AZURE:
{
"STORAGE_PROVIDER":"AZURE",
"AZURE_MULTI_TENANT_APP_NAME":"<client_app_name>",
"AZURE_CONSENT_URL_TEMPLATE":"https://login.microsoftonline.com/<your_tenant_id>/oauth2/authorize?client_id=..."
}
여기서:
STORAGE_PROVIDER
클라우드 스토리지 제공자예요.
AZURE_MULTI_TENANT_APP_NAME
Snowflake 계정을 위해 생성된 Snowflake 클라이언트 애플리케이션의 이름이에요.
AZURE_CONSENT_URL_TEMPLATE
Microsoft 권한 요청 페이지의 템플릿 URL이에요. your_tenant_id를 스토리지 위치가 속한 테넌트의 ID로 교체해야 해요.
테넌트 ID를 찾으려면 Azure 포털에 로그인하고 Microsoft Entra ID » 속성(Properties)을 클릭하세요. 테넌트 ID는 테넌트 ID(Tenant ID) 필드에 표시돼요.
사용 시 참고 사항
계정 관리자(ACCOUNTADMIN 역할을 가진 사용자)에 대해서만 결과를 반환해요.
예시
Azure에 대한 서비스 주체를 검색해요.
SELECT SYSTEM$DESC_ICEBERG_ACCESS_IDENTITY('AZURE', 'MY_TARGET_SNOWFLAKE_ACCOUNT');