Skip to main content

SSO란?

SSO(Single Sign-On) 는 사용자가 기업의 ID 공급자(IdP)에 한 번 로그인하면, Databricks를 포함한 여러 서비스에 추가 로그인 없이 접근할 수 있는 인증 방식입니다.
💡 기본 개념은 인증과 접근 제어의 “SSO” 섹션에서 소개했습니다. 이 문서에서는 실제 설정 절차와 트러블슈팅을 상세히 다룹니다.

SAML 2.0 vs OIDC

Databricks는 두 가지 SSO 프로토콜을 지원합니다.
💡 어떤 프로토콜을 선택해야 하나요? 이미 SAML 기반 SSO가 구성된 기업이라면 SAML을 사용하세요. 새로 설정하는 경우 OIDC가 더 간단하고 현대적인 선택입니다.

SSO 설정 흐름 개요

SSO 설정은 크게 3단계로 진행됩니다.

Okta SSO 설정 (SAML 2.0)

단계 1: Okta에서 Databricks 앱 생성

  1. Okta Admin Console> Applications> Create App Integration 클릭
  2. Sign-in method: SAML 2.0 선택
  3. App name: Databricks 입력

단계 2: SAML 설정 입력

Okta의 SAML 설정에 다음 값을 입력합니다.

단계 3: Attribute Statements 설정

단계 4: Databricks에서 SSO 구성

  1. Databricks Account Console(https://accounts.cloud.databricks.com) 로그인
  2. Settings> Single sign-on 이동
  3. SSO type: SAML 2.0 선택
  4. Okta에서 제공하는 IdP metadata URL 을 입력합니다
    • 또는 IdP Issuer, IdP SSO URL, Certificate 를 수동 입력합니다

단계 5: 테스트

  1. Test SSO 버튼 클릭
  2. 새 브라우저 탭에서 Okta 로그인 페이지가 열립니다
  3. 로그인 성공 시 Databricks로 리디렉션됩니다
  4. “SSO test successful” 메시지를 확인합니다

Azure AD (Entra ID) SSO 설정

단계 1: Azure Portal에서 엔터프라이즈 앱 생성

  1. Azure Portal> Microsoft Entra ID> Enterprise applications 이동
  2. New application> Create your own application 클릭
  3. 이름: Databricks SSO 입력

단계 2: SAML 설정

  1. Single sign-on> SAML 선택
  2. Basic SAML Configuration 편집:

단계 3: 사용자 속성 매핑

단계 4: 인증서 및 URL 복사

SAML Signing Certificate 섹션에서:
  • App Federation Metadata URL 복사

단계 5: Databricks에 설정

  1. Databricks Account Console> Settings> SSO
  2. IdP metadata URL 에 Azure AD의 메타데이터 URL 붙여넣기
  3. Test SSO 실행

SSO 강제 활성화

SSO가 정상 동작하면, 비밀번호 기반 로그인을 비활성화하여 보안을 강화합니다.
⚠️ 주의: SSO 강제 활성화 전에 반드시 다음을 확인하세요.
  1. SSO 테스트가 성공했는지 확인
  2. 긴급 복구용 Account Admin 계정이 비밀번호 로그인 가능하도록 유지
  3. IdP 장애 시 대비 계획 수립

강제 활성화 설정

  1. Account Console> Settings> Single sign-on
  2. Allow password login: Disabled 설정
  3. Emergency access: 최소 1개의 Account Admin 계정은 비밀번호 로그인을 유지합니다

OIDC SSO 설정

OIDC 기반 SSO는 SAML보다 설정이 간단합니다.

Databricks 설정

  1. Account Console> Settings> SSO
  2. SSO type: OpenID Connect 선택
  3. 다음 정보를 입력합니다:

트러블슈팅

자주 발생하는 문제

디버깅 방법


모범 사례


SAML Assertion 구조 상세

SAML SSO가 동작할 때, IdP는 SAML Assertion 이라는 XML 문서를 생성하여 Databricks(SP, Service Provider)에 전달합니다. 이 Assertion에는 인증 결과와 사용자 속성이 포함됩니다.

SAML Assertion 주요 구성 요소

SAML Assertion XML 구조 예시

SAML 디버깅 시 확인 포인트


OIDC Token Flow 상세

OIDC는 OAuth 2.0 위에 인증 레이어를 추가한 프로토콜로, SAML보다 현대적이고 가벼운 방식입니다.

OIDC Authorization Code Flow (Databricks 사용 방식)

ID Token (JWT) 구조

OIDC에서 반환되는 ID Token은 JWT(JSON Web Token) 형식입니다.

Conditional Access Policy (조건부 접근)

IdP 측에서 조건부 접근 정책 을 설정하면, 특정 조건에서만 Databricks 접근을 허용할 수 있습니다. 이는 SSO를 넘어선 추가 보안 계층입니다.

주요 조건부 접근 시나리오

Entra ID Conditional Access 설정 예시

💡 실무 팁: Conditional Access Policy를 처음 적용할 때는 반드시 “Report-only” 모드 로 시작하세요. 실제 차단 없이 정책의 영향 범위를 확인한 후 Enforcement로 전환합니다. 갑작스러운 정책 적용은 전체 사용자의 Databricks 접근을 차단할 수 있습니다.

SSO 장애 시 Emergency Access 방법

Emergency Access 설계

SSO가 실패하면 전체 사용자가 Databricks에 접근할 수 없게 됩니다. 이를 대비한 Emergency Access 체계가 반드시 필요합니다.

Emergency Access 절차


멀티 IdP 구성 패턴

대기업이나 M&A 이후 여러 IdP를 사용해야 하는 경우가 있습니다.

Databricks의 멀티 IdP 제한

멀티 IdP 대응 전략

IdP 페더레이션 예시 (Okta → Azure AD Trust)

💡 M&A 시나리오 권장: 인수된 회사의 IdP를 마스터 IdP에 페더레이션으로 연결하고, Databricks Account SSO는 마스터 IdP 하나만 설정합니다. 시간이 지나 IdP 통합이 완료되면 페더레이션을 해제합니다.

정리


참고 링크