사용자를 ID 공급자로 자동 리디렉션하기
사용자를 ID 공급자로 자동 리디렉션하기
Snowflake 인터페이스에 접근할 때 먼저 Snowflake 로그인 페이지를 보여주는 대신 인증을 위해 사용자를 ID 공급자(IdP)로 자동 리디렉션하도록 Snowflake를 구성하는 방법을 설명해요. LOGIN_IDP_REDIRECT 계정 속성으로 리디렉션을 구성해요.
출처: Snowflake 문서
본문
각 인터페이스(Snowsight, Streamlit in Snowflake, Snowpark Container Services 인그레스 등)를 다른 SAML2 보안 통합에 매핑하거나, 모든 인터페이스에 적용되는 단일 기본 매핑을 설정할 수 있어요.
개요
계정에 연합 인증이 구성된 경우 기본 로그인 흐름은 사용자가 먼저 Snowflake 로그인 페이지에 도달한 다음 IdP를 통해 로그인하도록 요청해요. LOGIN_IDP_REDIRECT를 구성하면 Snowflake는 Snowflake 로그인 페이지를 완전히 건너뛰어요. 사용자는 IdP로 직접 보내져 인증하고, 요청한 Snowflake 인터페이스로 돌아와요.
이렇게 하면 유일한 인증 경로가 해당 인터페이스에 대해 구성된 IdP인 사용자의 로그인 흐름이 간소화돼요. 특히 Streamlit in Snowflake 앱 뷰어 URL과 Snowpark Container Services 인그레스 엔드포인트 같은 임베디드 사용자 경험에 유용한데, 사용자가 인증할 수 있는 유일한 IdP에 도달하기 전에 Snowflake 로그인 페이지가 추가 단계를 만들기 때문이에요.
전제 조건
LOGIN_IDP_REDIRECT를 구성하기 전에 다음 요구사항이 충족됐는지 확인해요.
- SAML2 보안 통합이 하나 이상 구성되고 활성화되어 있어요. 리디렉션 속성은 SAML2 보안 통합만 허용해요. 지침은 SAML 2.0 연합 인증 구성하기를 참고해요.
- ACCOUNTADMIN 역할 또는 ALTER ACCOUNT을 실행하는 데 필요한 권한을 가진 역할이 있어요.
- 계정 관리자 중 한 명 이상이 백업 인증 방법(예: MFA를 사용한 Snowflake 비밀번호)으로 로그인할 수 있어야 IdP를 사용할 수 없게 되어도 조직이 접근을 복구할 수 있어요. 연합 인증이 활성화된 사용자 관리를 참고해요.
지원되는 인터페이스
다음 Snowflake 인터페이스 중 하나에 대해 리디렉션을 구성할 수 있어요. 각 인터페이스를 다른 SAML2 보안 통합에 매핑할 수 있어요.
DEFAULT
두 상황에 적용돼요.
app.snowflake.com(Snowsight 로그인 페이지)에서 시작하는 로그인 흐름.DEFAULT가 설정되면 그러한 흐름은 Snowflake 로그인 화면을 보여주는 대신 IdP로 리디렉션돼요.- 아래에 나열된, 명시적으로 구성하지 않은 다른 인터페이스 키. 예를 들어
DEFAULT는 설정했지만STREAMLIT는 설정하지 않으면 Streamlit in Snowflake 앱 뷰어 URL이DEFAULT매핑을 사용해요.
특정 인터페이스를 DEFAULT 폴백에서 제외하려면 해당 인터페이스를 NULL로 설정해요. 리디렉션 제거 또는 옵트아웃을 참고해요.
SNOWFLAKE_INTELLIGENCE
Snowflake CoWork URL에 적용돼요. Snowflake CoWork URL에 대한 DEFAULT 매핑을 재정의해요. 이 키를 NULL로 설정해 Snowflake CoWork URL을 DEFAULT 폴백에서 제외해요. Snowflake CoWork를 프라이빗 연결로 접근할 때 필요한 DNS 구성 등 인터페이스별 지침은 사용자를 ID 공급자로 리디렉션을 참고해요.
STREAMLIT
Streamlit in Snowflake 앱 뷰어 URL에 적용돼요. 앱 뷰어 URL에 대한 DEFAULT 매핑을 재정의해요. 이 키를 NULL로 설정해 Streamlit 앱 뷰어 URL을 DEFAULT 폴백에서 제외해요. 인터페이스별 지침은 앱 뷰어를 ID 공급자로 리디렉션을 참고해요.
SPCS
Snowpark Container Services 인그레스 엔드포인트에 적용돼요. SPCS 인그레스 URL에 대한 DEFAULT 매핑을 재정의해요. 이 키를 NULL로 설정해 SPCS 인그레스 URL을 DEFAULT 폴백에서 제외해요. 인터페이스별 지침은 인그레스와 ID 공급자(IdP) 고려사항을 참고해요.
Snowflake는 인터페이스의 리디렉션을 다음 순서로 해석해요.
- 인터페이스 키가 명시적으로 설정되어 있으면 그 매핑이 사용돼요. 값
NULL은 "이 인터페이스에는 리디렉션 없음"을 의미해요. - 그렇지 않으면
DEFAULT가 설정된 경우DEFAULT매핑이 사용돼요. - 그렇지 않으면 표준 Snowflake 로그인 페이지가 표시돼요.
리디렉션 구성
ALTER ACCOUNT을 사용해 LOGIN_IDP_REDIRECT를 설정해요. 단일 문장에서 여러 인터페이스를 매핑할 수 있어요. *your_security_integration*을 기존에 활성화된 SAML2 보안 통합의 이름으로 바꿔요.
계정의 모든 인터페이스를 같은 IdP로 리디렉션하려면:
ALTER ACCOUNT SET LOGIN_IDP_REDIRECT = (
DEFAULT = my_saml_integration
);
개별 인터페이스에 대해 다른 SAML2 보안 통합을 구성하려면 같은 문장에 나열해요. 인터페이스별 매핑은 해당 인터페이스의 DEFAULT 매핑을 재정의해요.
ALTER ACCOUNT SET LOGIN_IDP_REDIRECT = (
DEFAULT = my_saml_integration,
SNOWFLAKE_INTELLIGENCE = my_intelligence_saml_integration,
STREAMLIT = my_streamlit_saml_integration,
SPCS = my_spcs_saml_integration
);
LOGIN_IDP_REDIRECT를 다시 설정하면 전체 매핑이 새 값으로 대체돼요. 속성을 변경할 때마다 유지하려는 모든 인터페이스를 나열해요.
현재 구성 보기
현재 매핑된 인터페이스를 보려면 뷰 전용 LOGIN_IDP_REDIRECT 계정 파라미터를 쿼리해요. 이 파라미터는 계정에 설정된 매핑을 요약한 JSON 객체를 반환해요.
SHOW PARAMETERS LIKE 'LOGIN_IDP_REDIRECT' IN ACCOUNT;
자세한 내용은 파라미터 참조의 LOGIN_IDP_REDIRECT (view-only)를 참고해요.
리디렉션 제거 또는 옵트아웃
다른 매핑은 유지하면서 단일 인터페이스를 IdP로 리디렉션하지 않으려면 새 ALTER ACCOUNT SET LOGIN_IDP_REDIRECT 문장에서 해당 인터페이스를 NULL로 설정해요. 해당 인터페이스의 사용자는 표준 Snowflake 로그인 페이지를 보게 돼요. 인터페이스를 NULL로 설정하면 그 인터페이스를 DEFAULT 폴백에서도 제외해요.
예를 들어 DEFAULT 매핑은 유지하면서 Streamlit 앱 뷰어 URL을 리디렉션하지 않으려면:
ALTER ACCOUNT SET LOGIN_IDP_REDIRECT = (
DEFAULT = my_saml_integration,
STREAMLIT = NULL
);
모든 매핑을 제거하고 모든 인터페이스에 표준 로그인 흐름을 복원하려면 속성을 설정 해제해요.
ALTER ACCOUNT UNSET LOGIN_IDP_REDIRECT;
리디렉션을 우회해 Snowflake 로그인 페이지에 도달
Snowflake는 리디렉션이 구성된 경우에도 표준 로그인 페이지에 도달할 수 있게 하는 복구 절차를 지원해요. IdP를 통해 로그인할 수 없거나, MFA를 사용한 Snowflake 비밀번호 같은 백업 인증 방법으로 로그인해야 할 때 이 절차를 사용해요.
이 절차는 Snowflake가 단일 로그인 시도에 대해 IdP 리디렉션을 억제하기 위해 존중하는 표준 OIDC prompt=login 파라미터에 의존해요.
사용하려면:
- 브라우저에서 개발자 도구를 열고 Network 탭을 선택해요.
- 리디렉션되고 있는 Snowflake URL의 로딩을 시작해요.
snowflakecomputing.com의/oauth/authorize엔드포인트에 대한 요청을 찾아 전체 URL을 복사해요.- URL 끝에
&prompt=login을 추가하고 편집된 URL을 브라우저에서 로드해요.
Snowflake는 표준 로그인 페이지를 표시하고, 사용자에게 활성화된 인증 방법을 선택할 수 있어요.
중요(Important): 계정 관리자 중 한 명 이상이 작동하는 백업 인증 방법(예: Snowflake 비밀번호)을 가져 IdP를 사용할 수 없게 되어도 조직이 접근을 복구할 수 있게 해요. 연합 환경에서 관리자 자격 증명을 관리하는 지침은 연합 인증이 활성화된 사용자 관리를 참고해요.
고려사항
LOGIN_IDP_REDIRECT를 구성할 때 다음을 유의해요.
- SAML2 보안 통합만 지원돼요. 다른 유형의 보안 통합은 이 속성이 참조할 수 없어요.
- 참조된 보안 통합은 존재하고 활성화되어야 해요. 보안 통합을 삭제하거나 비활성화하면 영향받는 인터페이스의 사용자가 로그인하려 할 때 오류를 받아요. 통합을 비활성화하거나 삭제하기 전에 매핑을 업데이트하거나 제거해요.
ALTER ACCOUNT SET LOGIN_IDP_REDIRECT는 전체 매핑을 대체해요. 항상 유지하려는 모든 인터페이스를 포함해요.ALTER ACCOUNT UNSET LOGIN_IDP_REDIRECT는 모든 매핑을 한 번에 제거해요.- 리디렉션은 구성된 인터페이스에 대해 Snowflake 로그인 페이지를 우회하며, 다른 인증 방법을 선택하는 옵션도 포함돼요. 백업 인증 방법으로 로그인해야 하는 사용자는 리디렉션을 우회해 Snowflake 로그인 페이지에 도달에서 설명한 복구 절차를 따라야 해요.
더 알아보기 (Learn more)
- SAML 2.0 연합 인증 구성하기 — SAML2 보안 통합 설정
- 연합 인증이 활성화된 사용자 관리 — 관리자 자격 증명 관리
- ALTER ACCOUNT — 계정 속성 설정