ALTER SECURITY INTEGRATION
ALTER SECURITY INTEGRATION (SAML2)
기존 SAML2 보안 통합의 속성을 수정하는 명령이에요.
출처: 문서
본문
다른 유형의 보안 통합(예: SCIM)을 수정하는 방법은 ALTER SECURITY INTEGRATION을 참고하세요.
관련 명령: CREATE SECURITY INTEGRATION (SAML2), DROP INTEGRATION, SHOW INTEGRATIONS, DESCRIBE INTEGRATION
구문 (Syntax)
ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> SET
[ TYPE = SAML2 ]
[ ENABLED = { TRUE | FALSE } ]
[ METADATA_URL = '<string_literal>' ]
[ SAML2_ISSUER = '<string_literal>' ]
[ SAML2_SSO_URL = '<string_literal>' ]
[ SAML2_PROVIDER = '<string_literal>' ]
[ SAML2_X509_CERT = '<string_literal>' ]
[ ALLOWED_USER_DOMAINS = ( '<string_literal>' [ , '<string_literal>' , ... ] ) ]
[ ALLOWED_EMAIL_PATTERNS = ( '<string_literal>' [ , '<string_literal>' , ... ] ) ]
[ SAML2_SP_INITIATED_LOGIN_PAGE_LABEL = '<string_literal>' ]
[ SAML2_ENABLE_SP_INITIATED = TRUE | FALSE ]
[ SAML2_SNOWFLAKE_X509_CERT = '<string_literal>' ]
[ SAML2_SIGN_REQUEST = TRUE | FALSE ]
[ SAML2_REQUESTED_NAMEID_FORMAT = '<string_literal>' ]
[ SAML2_POST_LOGOUT_REDIRECT_URL = '<string_literal>' ]
[ SAML2_FORCE_AUTHN = TRUE | FALSE ]
[ SAML2_SNOWFLAKE_ISSUER_URL = '<string_literal>' ]
[ SAML2_SNOWFLAKE_ACS_URL = '<string_literal>' ]
[ COMMENT = '<string_literal>' ]
ALTER [ SECURITY ] INTEGRATION [ IF EXISTS ] <name> UNSET {
ENABLED |
[ , ... ]
}
ALTER [ SECURITY ] INTEGRATION <name> REFRESH
[ SAML2_SNOWFLAKE_PRIVATE_KEY ]
[ METADATA_URL ]
ALTER [ SECURITY ] INTEGRATION <name> SET TAG <tag_name> = '<tag_value>' [ , <tag_name> = '<tag_value>' ... ]
ALTER [ SECURITY ] INTEGRATION <name> UNSET TAG <tag_name> [ , <tag_name> ... ]
매개변수 (Parameters)
name — 수정할 통합의 식별자예요. 식별자에 공백이나 특수 문자가 포함되어 있으면 전체 문자열을 큰따옴표로 묶어야 해요. 큰따옴표로 묶은 식별자는 대소문자를 구분해요.
SET ... — 공백, 콤마 또는 줄바꿈으로 구분해 통합에 설정할 하나 이상의 속성/매개변수를 지정해요:
ALLOWED_USER_DOMAINS = ( 'string_literal' [ , 'string_literal' , ... ] ) — SAML2 보안 통합으로 인증할 수 있는 이메일 도메인 목록을 지정해요. 예: ALLOWED_USER_DOMAINS = ("example.com", "example2.com", ...). 이 매개변수를 사용해 여러 IdP를 사용하는 구성에서 사용자를 IdP와 연결할 수 있어요. 자세한 내용은 페더레이션 인증에 여러 ID 공급자 사용을 참고하세요.
ALLOWED_EMAIL_PATTERNS = ( 'string_literal' [ , 'string_literal' , ... ] ) — SAML2 보안 통합으로 인증하기 위해 이메일 주소를 대조하는 정규 표현식 목록을 지정해요. 예: ALLOWED_EMAIL_PATTERNS = ("^(.+dev)@example.com$", "^(.+dev)@example2.com$", ... ). 이 매개변수를 사용해 여러 IdP를 사용하는 구성에서 사용자를 IdP와 연결할 수 있어요. 자세한 내용은 페더레이션 인증에 여러 ID 공급자 사용을 참고하세요.
TYPE = SAML2 — 통합의 유형을 지정해요. SAML2는 Snowflake와 ID 공급자 사이에 보안 인터페이스를 만들어요.
ENABLED = { TRUE | FALSE } — 통합의 작동을 시작할지 일시 중지할지 지정해요.
TRUE— 통합이 통합 정의에 지정된 매개변수를 기반으로 실행되도록 허용해요.FALSE— 유지 관리를 위해 통합을 일시 중지해요. Snowflake와 서드파티 서비스 간의 모든 통합이 작동하지 않아요.
METADATA_URL = 'string_literal' — IdP의 메타데이터 URL을 지정해요. 메타데이터 URL은 Snowflake가 인증서 업데이트를 포함한 IdP 구성 설정을 동적으로 검색하고 동기화할 수 있게 하는 엔드포인트예요. 이 매개변수는 Okta와 Microsoft Entra ID에서만 지원돼요. 메타데이터 URL을 얻는 방법은 Snowflake용 ID 공급자(IdP) 구성에서 IdP에 해당하는 섹션을 참고하세요. 메타데이터 URL을 지정하면 SAML2_ISSUER, SAML2_SSO_URL, SAML2_PROVIDER, SAML2_X509_CERT 매개변수를 사용할 수 없어요. 이 매개변수로 지정한 정보는 메타데이터 URL에서 얻어지기 때문이에요.
SAML2_ISSUER = 'string_literal' — IdP의 EntityID / Issuer를 포함하는 문자열이에요.
SAML2_SSO_URL = 'string_literal' — IdP SSO URL을 포함하는 문자열로, Snowflake(서비스 프로바이더)가 SAML AuthnRequest 메시지로 사용자를 리디렉션해야 하는 곳이에요.
SAML2_PROVIDER = 'string_literal' — IdP를 설명하는 문자열이에요. 다음 중 하나: OKTA, ADFS, Custom.
SAML2_X509_CERT = 'string_literal' — 시작 -----BEGIN CERTIFICATE----- 및 끝 -----END CERTIFICATE----- 마커 없이 한 줄로 된 Base64 인코딩 IdP 서명 인증서예요.
SAML2_SP_INITIATED_LOGIN_PAGE_LABEL = 'string_literal' — 로그인 페이지의 Log In With 버튼 뒤에 표시할 라벨을 포함하는 문자열이에요.
SAML2_ENABLE_SP_INITIATED = TRUE | FALSE — 로그인 페이지에 Log In With 버튼이 표시될지 여부를 나타내는 부울이에요.
TRUE— 로그인 페이지에 Log in With 버튼을 표시해요.FALSE— 로그인 페이지에 Log in With 버튼을 표시하지 않아요.
SAML2_SNOWFLAKE_X509_CERT = 'string_literal' — SAML 어서션 암호화와 서명된 SAML 요청 전송에 사용하기 위해 Snowflake가 생성한 Base64 인코딩 자체 서명 인증서예요. 인증서 값에 접근하려면 Snowflake 계정에서 이 기능(암호화된 SAML 어서션 또는 서명된 SAML 응답) 중 하나 이상을 활성화해야 해요.
SAML2_SIGN_REQUEST = TRUE | FALSE — SAML 요청이 서명되는지 여부를 나타내는 부울이에요.
TRUE— SAML 요청이 서명되도록 허용해요.FALSE— SAML 요청이 서명되도록 허용하지 않아요.
SAML2_REQUESTED_NAMEID_FORMAT = 'string_literal' — SAML NameID 형식은 Snowflake가 IdP의 SAML 어서션에서 사용자의 식별 속성(즉 SAML Subject)에 대한 기대치를 설정해 Snowflake에 대한 유효한 인증을 보장할 수 있게 해요. 값을 지정하지 않으면 Snowflake는 IdP에 대한 인증 요청에서 urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress 값을 보내요. 선택사항이에요. SAML NameID 형식을 지정하기로 선택하면 다음 값 중 하나를 사용해요:
urn:oasis:names:tc:SAML:1.1:nameid-format:unspecifiedurn:oasis:names:tc:SAML:1.1:nameid-format:emailAddressurn:oasis:names:tc:SAML:1.1:nameid-format:X509SubjectNameurn:oasis:names:tc:SAML:1.1:nameid-format:WindowsDomainQualifiedNameurn:oasis:names:tc:SAML:2.0:nameid-format:kerberosurn:oasis:names:tc:SAML:2.0:nameid-format:persistenturn:oasis:names:tc:SAML:2.0:nameid-format:transient
SAML2_POST_LOGOUT_REDIRECT_URL = 'string_literal' — Snowsight에서 사용자가 Log Out 버튼을 클릭한 후 Snowflake가 사용자를 리디렉션하는 엔드포인트예요. Snowflake는 지정된 엔드포인트로 리디렉션할 때 Snowflake 세션을 종료해요.
SAML2_FORCE_AUTHN = TRUE | FALSE — 초기 인증 흐름 동안 사용자가 Snowflake에 접근하기 위해 다시 인증해야 하는지 여부를 나타내는 부울이에요. TRUE로 설정하면 Snowflake는 Snowflake에서 ID 공급자로의 나가는 요청에서 ForceAuthn SAML 매개변수를 TRUE로 설정해요.
TRUE— ID 공급자와 유효한 세션이 있어도 사용자가 Snowflake에 접근하기 위해 다시 인증하도록 강제해요.FALSE— 사용자가 Snowflake에 접근하기 위해 다시 인증하도록 강제하지 않아요.
기본값: FALSE.
SAML2_SNOWFLAKE_ISSUER_URL = 'string_literal' — Snowflake 서비스 프로바이더의 EntityID / Issuer를 포함하는 문자열이에요. 잘못된 값을 지정하면 Snowflake는 사용할 수용 가능한 값을 나타내는 오류 메시지를 반환해요. 이 속성의 값은 IdP에 지정된 Snowflake 계정 URL과 일치해야 해요. 레거시 URL을 기본값으로 하므로, IdP에서 다른 URL 형식을 정의하면 이 속성을 적절히 설정해야 해요.
SAML2_SNOWFLAKE_ACS_URL = 'string_literal' — IdP가 SAML 인증 응답을 Snowflake로 다시 보낼 Snowflake Assertion Consumer Service URL을 포함하는 문자열이에요. 이 속성은 Snowflake가 IdP와 SAML SSO 작업을 시작할 때 생성하는 SAML 인증 요청에 설정돼요. 잘못된 값을 지정하면 Snowflake는 사용할 수용 가능한 값을 나타내는 오류 메시지를 반환해요. 이 속성의 값은 IdP에 지정된 Snowflake 계정 URL과 일치해야 해요. 레거시 URL을 기본값으로 하므로, IdP에서 다른 URL 형식을 정의하면 이 속성을 적절히 설정해야 해요.
기본값: https://<account_locator>.<region>.snowflakecomputing.com/fed/login
COMMENT = 'string_literal' — 통합의 주석을 추가하거나 기존 주석을 덮어써요. 기본값: 값 없음
REFRESH ... — 통합 값을 업데이트해요.
SAML2_SNOWFLAKE_PRIVATE_KEY — SAML2 보안 통합에 대한 새 개인 키와 자체 서명 인증서를 생성해요. 이전 개인 키와 자체 서명 인증서는 새 것으로 덮어써져요. 키 회전 모범 사례에 대한 자세한 내용은 SAML2 보안 통합 관리를 참고하세요.
METADATA_URL — 통합의 METADATA_URL 매개변수로 지정된 메타데이터 URL을 사용해 현재 IdP 구성 설정으로 보안 통합을 업데이트해요. REFRESH METADATA_URL을 사용해 매개변수를 수동으로 업데이트하지 않고 인증서 업데이트를 포함한 수정된 IdP 구성 설정과 Snowflake를 동기화해요.
TAG tag_name = 'tag_value' [ , tag_name = 'tag_value' , ... ] — 태그 이름과 태그 문자열 값을 지정해요. 태그 값은 항상 문자열이며, 최대 문자 수는 256이에요. 문에서 태그를 지정하는 방법은 태그 할당량을 참고하세요.
UNSET ... — 보안 통합에서 해제할 하나 이상의 속성/매개변수를 지정해 기본값으로 되돌려요:
ENABLEDTAG tag_name [ , tag_name ... ]
사용 메모 (Usage notes)
- Snowflake 서비스를 사용할 때 메타데이터로 개인 데이터(User 객체 외), 민감한 데이터, 수출 통제 데이터 또는 기타 규제 대상 데이터를 입력하지 않도록 주의해야 해요. 자세한 내용은 Snowflake의 메타데이터 필드를 참고하세요.
REFRESH명령으로SAML2_SNOWFLAKE_PRIVATE_KEY를 회전한 후에는 새SAML2_SNOWFLAKE_X509_CERT값을 IdP에 업로드해야 해요. 그렇지 않으면 SAML 인증이 작동을 멈춰요. 키 회전 모범 사례에 대한 자세한 내용은 SAML2 보안 통합 관리를 참고하세요.
예시 (Examples)
- 다음 예시는 중지된 통합의 작동을 시작해요.
ALTER SECURITY INTEGRATION myint SET ENABLED = TRUE;
- 다음 예시는
my_idp라는 SAML2 보안 통합의 개인 키를 회전하고 새 자체 서명 인증서를 생성해요.
주의: 아래 명령을 실행한 후에는 IdP가 여전히 이전
SAML2_SNOWFLAKE_X509_CERT인증서를 사용하므로 SAML 인증이 작동을 멈춰요. 중단을 최소화하려면 사용자가 덜 활동적인 시기에 이 명령을 실행해야 해요. 자세한 내용은 SAML2 보안 통합 관리를 참고하세요.
alter security integration my_idp refresh SAML2_SNOWFLAKE_PRIVATE_KEY;
더 알아보기 (Learn more)
- CREATE SECURITY INTEGRATION (SAML2) — 만들기
- SHOW INTEGRATIONS — 통합 나열
- DESCRIBE INTEGRATION — 통합 설명