다음을 통해 공유


Databricks 클라이언트 통합 인증

Databricks 클라이언트 통합 인증은 Azure Databricks에 대한 인증 설정 및 자동화를 중앙 집중화합니다. 이를 통해 Databricks 인증을 한 번 구성한 다음, 추가 인증 구성 변경 없이 여러 Databricks 도구 및 SDK에서 해당 구성을 사용할 수 있습니다.

참여 도구 및 SDK

참여하는 Databricks 도구 및 SDK는 다음과 같습니다.

참여하는 모든 도구 및 SDK는 인증을 위해 특수 환경 변수 및 Azure Databricks 구성 프로필을 허용합니다. Databricks Terraform 공급자와 Python, Java 및 Go용 Databricks SDK도 코드 내에서 인증 설정의 직접 구성을 허용합니다. 세부 정보는 도구 또는 SDK 설명서에 대한 개발자 도구 및 지침을 참조하세요.

클라이언트 통합 인증에 대한 기본 메서드

도구 또는 SDK가 Azure Databricks에 인증해야 할 때마다 기본적으로 다음 순서대로 다음 유형의 인증을 시도합니다. 도구 또는 SDK가 시도하는 인증 유형에 성공하면 나머지 인증 유형으로 인증 시도하는 것을 중단합니다. SDK가 특정 인증 유형으로 인증되도록 하려면 Config API의 Databricks 인증 유형 필드를 설정합니다.

  1. Azure Databricks 개인용 액세스 토큰 인증
  2. OAuth(OAuth M2M)를 사용하여 서비스 주체로 Azure Databricks에 액세스 인증
  3. OAuth(OAuth U2M)를 사용하여 사용자 계정으로 Azure Databricks에 액세스 인증
  4. Azure 관리 ID 인증
  5. MS Entra 서비스 주체 인증
  6. Azure CLI 인증

참여 도구 또는 SDK가 시도하는 각 인증 유형에 대해 도구 또는 SDK는 다음 순서대로 다음 위치에서 인증 자격 증명을 찾으려고 시도합니다. 도구 또는 SDK가 사용할 수 있는 인증 자격 증명을 찾는 데 성공하면 도구 또는 SDK는 나머지 위치에서 인증 자격 증명을 찾는 시도를 중지합니다.

  1. 자격 증명 관련 Config API 필드(SDK용). Config 필드를 설정하려면 SDK의 참조 설명서를 참조하세요.
  2. 자격 증명 관련 환경 변수.
  3. .databrickscfg 파일 내의 DEFAULT 구성 프로필에 있는 자격 증명 관련 필드입니다. 구성 프로필 필드를 설정하려면 (/dev-tools/auth/config-profiles.md)를 참조하세요.
  4. Azure CLI에서 캐시하는 모든 관련 인증 자격 증명. Azure CLI 인증을 참조하세요.

코드에 대한 최대 이식 가능성을 제공하기 위해 Databricks는 .databrickscfg 파일 내에서 사용자 지정 구성 프로필을 만들고, 대상 Databricks 인증 유형에 대한 아래 필수 필드를 사용자 지정 구성 프로필에 추가한 다음, DATABRICKS_CONFIG_PROFILE 환경 변수를 사용자 지정 구성 프로필의 이름으로 설정하는 것이 좋습니다.

클라이언트 통합 인증을 위한 환경 변수 및 필드

다음 표에는 Databricks 클라이언트 통합 인증에 대해 지원되는 환경 변수 및 필드의 이름과 설명이 나와 있습니다. 다음 테이블에서

  • 환경 변수는 해당하는 경우 환경 변수의 이름입니다.
  • .databrickscfg 필드는 해당하는 경우 Azure Databricks 구성 프로필 파일 또는 Databricks Terraform 구성 내의 필드 이름입니다. .databrickscfg 필드를 설정하려면 Azure Databricks 구성 프로필을 참조하세요.
  • Terraform 필드는 해당하는 경우 Databricks Terraform 구성 내의 필드 이름입니다. Databricks Terraform 필드를 설정하려면 Databricks Terraform 공급자 설명서의 인증을 참조하세요.
  • Config 필드는 지정된 SDK에 대한 Config API 내 필드의 이름입니다.

일반 호스트, 토큰 및 계정 ID 환경 변수 및 필드

일반 이름 설명 환경 변수 .databrickscfg 필드, Terraform 필드 Config 필드
Azure Databricks 호스트 (문자열) Azure Databricks 작업 영역 엔드포인트 또는 Azure Databricks 계정 엔드포인트에 대한 Azure Databricks 호스트 URL. DATABRICKS_HOST host host (Python),
setHost (Java),
Host (Go)
Azure Databricks 토큰 (문자열) Azure Databricks 개인용 액세스 토큰 또는 Microsoft Entra ID 토큰. DATABRICKS_TOKEN token token (Python),
setToken (Java),
Token (Go)
Azure Databricks 계정 ID (문자열) Azure Databricks 계정 엔드포인트에 대한 Azure Databricks 계정 ID. Azure Databricks 호스트도 다음에 대해 설정된 경우에만 적용됩니다.
https://accounts.azuredatabricks.net.
DATABRICKS_ACCOUNT_ID account_id account_id (Python),
setAccountID (Java),
AccountID (Go)

Azure 특정 환경 변수 및 필드

일반 이름 설명 환경 변수 .databrickscfg 필드, Terraform 필드 Config 필드
Azure 클라이언트 ID (문자열) Microsoft Entra ID의 서비스 주체의 애플리케이션 ID. Azure 관리 ID 인증 및 Microsoft Entra ID 서비스 주체 인증과 함께 사용. ARM_CLIENT_ID azure_client_id azure_client_id (Python),
setAzureClientID (Java),
AzureClientID (Go)
Azure 클라이언트 암호 (문자열) Microsoft Entra ID 서비스 주체의 클라이언트 암호. Microsoft Entra ID 서비스 주체 인증과 함께 사용합니다. ARM_CLIENT_SECRET azure_client_secret azure_client_secret (Python),
setAzureClientSecret (Java),
AzureClientSecret (Go)
클라이언트 ID (문자열) Azure Databricks 관리 서비스 주체 또는 Microsoft Entra ID 관리 서비스 주체의 클라이언트 ID. OAuth M2M 인증과 함께 사용합니다. DATABRICKS_CLIENT_ID client_id client_id (Python),
setClientId (Java),
ClientId (Go)
클라이언트 암호 (문자열) Azure Databricks 관리 서비스 주체 또는 Microsoft Entra ID 관리 서비스 주체의 클라이언트 암호. OAuth M2M 인증과 함께 사용합니다. DATABRICKS_CLIENT_SECRET client_secret client_secret (Python),
setClientSecret (Java),
ClientSecret (Go)
Azure 환경 (문자열) Azure 환경 유형. 기본값은 PUBLIC입니다. ARM_ENVIRONMENT azure_environment azure_environment (Python),
setAzureEnvironment (Java),
AzureEnvironment (Go)
Azure 테넌트 ID (문자열) Microsoft Entra ID 서비스 주체의 테넌트 ID. ARM_TENANT_ID azure_tenant_id azure_tenant_id (Python),
setAzureTenantID (Java),
AzureTenantID (Go)
Azure 사용 MSI (부울) 서비스 주체에 대해 Azure 관리 서비스 ID 암호 없는 인증 흐름을 사용하려면 True. Azure 리소스 ID도 설정해야 합니다. ARM_USE_MSI azure_use_msi AzureUseMSI (Go)
Azure 리소스 ID (문자열) Azure Databricks 작업 영역에 대한 Azure Resource Manager ID. DATABRICKS_AZURE_RESOURCE_ID azure_workspace_resource_id azure_workspace_resource_id (Python),
setAzureResourceID (Java),
AzureResourceID (Go)

.databrickscfg 특정 환경 변수 및 필드

이러한 환경 변수 또는 필드를 사용하여 .databrickscfg에 기본이 아닌 설정을 지정합니다. Azure Databricks 구성 프로필도 참조하세요.

일반 이름 설명 환경 변수 Terraform 필드 Config 필드
.databrickscfg 파일 경로 (문자열) 다음에 대해 기본이 아닌 경로
.databrickscfg 파일.
DATABRICKS_CONFIG_FILE config_file config_file (Python),
setConfigFile (Java),
ConfigFile (Go)
.databrickscfg 기본 프로필 (문자열) 사용할 기본 명명된 프로필(DEFAULT 제외). DATABRICKS_CONFIG_PROFILE profile profile (Python),
setProfile (Java),
Profile (Go)

인증 유형 필드

이 환경 변수 또는 필드를 사용하여 SDK가 특정 유형의 Databricks 인증을 사용하도록 강제합니다.

일반 이름 설명 Terraform 필드 Config 필드
Databricks 인증 유형 (문자열) 환경에서 여러 인증 특성을 사용할 수 있는 경우 이 인수에 지정된 인증 유형을 사용합니다. auth_type auth_type (Python),
setAuthType (Java),
AuthType (Go)

지원되는 Databricks 인증 유형 필드 값은 다음과 같습니다.