Databricks 클라이언트 통합 인증
Databricks 클라이언트 통합 인증은 OAuth 권한 부여의 일환으로 Azure Databricks에 대한 인증 설정 및 자동화를 중앙 집중화합니다. 이를 통해 Databricks 인증을 한 번 구성한 다음, 추가 인증 구성 변경 없이 여러 Databricks 도구 및 SDK에서 해당 구성을 사용할 수 있습니다.
참여 도구 및 SDK
참여하는 Databricks 도구 및 SDK는 다음과 같습니다.
- Databricks CLI
- Databricks Terraform 공급자
- Databricks Connect
- Visual Studio Code용 Databricks 익스텐션
- Python용 Databricks SDK
- Java용 Databricks SDK
- Go용 Databricks SDK
참여하는 모든 도구 및 SDK는 인증을 위해 특수 환경 변수 및 Azure Databricks 구성 프로필을 허용합니다. Databricks Terraform 공급자와 Python, Java 및 Go용 Databricks SDK도 코드 내에서 인증 설정의 직접 구성을 허용합니다. 자세한 내용은 도구 또는 SDK 설명서에 대한 로컬 개발 도구 참조하세요.
클라이언트 통합 인증에 대한 기본 메서드
도구 또는 SDK가 Azure Databricks에 대한 액세스 권한을 부여해야 할 때마다 기본적으로 다음 순서대로 다음 유형의 인증을 시도합니다. 도구 또는 SDK가 시도하는 인증 유형에 성공하면 나머지 인증 유형으로 인증 시도하는 것을 중단합니다. SDK가 특정 인증 유형으로 인증되도록 하려면 Config
API의 Databricks 인증 유형 필드를 설정합니다.
- Azure Databricks 개인용 액세스 토큰 인증
- OAuth 사용하여 서비스 주체를 사용하여 Azure Databricks 리소스에 대한 무인 액세스 권한 부여
- OAuth 사용하여 사용자 계정으로 Azure Databricks 리소스에 대한 대화형 액세스 권한 부여
- Azure 관리 ID 인증
- MS Entra 서비스 주체 인증
- Azure CLI 인증
참여 도구 또는 SDK가 시도하는 각 인증 유형에 대해 도구 또는 SDK는 다음 순서대로 다음 위치에서 인증 자격 증명을 찾으려고 시도합니다. 도구 또는 SDK가 사용할 수 있는 인증 자격 증명을 찾는 데 성공하면 도구 또는 SDK는 나머지 위치에서 인증 자격 증명을 찾는 시도를 중지합니다.
- 자격 증명 관련
Config
API 필드(SDK용).Config
필드를 설정하려면 SDK의 참조 설명서를 참조하세요. - 자격 증명 관련 환경 변수.
-
DEFAULT
파일 내의.databrickscfg
구성 프로필에 있는 자격 증명 관련 필드입니다. 구성 프로필 필드를 설정하려면 (/dev-tools/auth/config-profiles.md)를 참조하세요. - 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 인증 유형 필드 값은 다음과 같습니다.
oauth-m2m
: OAuth 2.0에서 M2M 인증에 Databricks 서비스 주체를 사용하는 경우 이 값을 설정합니다. 자세한 내용은 OAuth사용하여 서비스 주체를 사용하여 Azure Databricks 리소스에 대한 무인 액세스 권한 부여를 참조하세요.pat
: Databricks 개인용 액세스 토큰을 사용하는 경우 이 값을 설정합니다. 추가 세부 정보는 Azure Databricks 개인용 액세스 토큰 인증을 참조하세요.databricks-cli
: OAuth 2.0에서 Databricks CLI를 사용하는 경우 이 값을 설정합니다. 자세한 내용은 OAuth사용하여 사용자 계정으로 Azure Databricks 리소스에 대한 대화형 액세스 권한 부여를 참조하세요.azure-msi
: Azure MSI(관리 서비스 ID)를 사용하는 경우 이 값을 설정합니다. 자세한 내용은 Azure 관리 ID 인증을 참조하세요.azure-client-secret
: 클라이언트 시크릿과 함께 Azure 서비스 주체를 사용하는 경우 이 값을 설정하십시오. 자세한 내용은 MS Entra 서비스 주체 인증을 참조하세요.