Share via


Azure 관리 ID 인증

Azure 관리 ID 인증은 Azure 리소스(이전의 MSI(관리 서비스 ID))에 대한 관리 ID를 사용하여 Azure Databricks로 인증합니다. Azure Databricks 계정 및 작업 영역 작업에 대한 프로그래밍 방식 호출은 Azure VM과 같은 관리 ID를 지원하는 Azure 리소스로 작업할 때 이 관리 ID를 사용합니다.

참고 항목

Azure 리소스에 대한 관리 ID는 Azure Databricks가 인증을 지원하는 Microsoft Entra ID 서비스 주체와 다릅니다. Azure 리소스에 대한 관리 ID 대신 Azure Databricks 인증에 Microsoft Entra ID 서비스 주체를 사용하는 방법을 알아보려면 다음을 참조하세요.

Azure 관리 ID 인증은 Azure VM(Azure 가상 머신)과 같은 관리 ID를 지원하는 올바르게 구성된 리소스와 Azure Databricks 계정 및 작업 영역 간에만 지원됩니다.

Azure Databricks를 사용하여 Azure 관리 ID 인증을 구성하려면 올바르게 지원되는 Azure VM에서 다음과 같은 연결된 환경 변수, .databrickscfg 필드, Terraform 필드 또는 Config 필드를 설정해야 합니다.

  • Azure Databricks 호스트입니다.
    • 계정 작업의 경우 .https://accounts.azuredatabricks.net
    • 작업 영역 작업의 경우 작업 영역별 URL지정합니다. 예를 들면 다음과 같습니다https://adb-1234567890123456.7.azuredatabricks.net.
  • 계정 작업의 경우 Azure Databricks 계정 ID입니다.
  • 관리 ID의 테넌트 ID입니다.
  • 관리 ID의 클라이언트 ID입니다.
  • Azure 리소스 ID.
  • Azure 사용 관리 ID를 true로 설정합니다.

Azure Databricks를 사용하여 Azure 관리 ID 인증을 수행하려면 참여 도구 또는 SDK를 기반으로 코드 내에 다음을 통합합니다.

환경

도구 또는 SDK를 사용하여 특정 Azure Databricks 인증 유형에 환경 변수를 사용하려면 Azure Databricks 도구 또는 SDK 또는 도구 또는 SDK 설명서에서 지원되는 인증 유형을 참조하세요. 또한 클라이언트 통합 인증에 대한 환경 변수 및 필드와 클라이언트 통합 인증 방법 및 자격 증명에 대한 기본 평가 순서를 참조하세요.

계정 수준 작업의 경우 다음 환경 변수를 설정합니다.

  • DATABRICKS_HOST- Azure Databricks 계정 콘솔 URL https://accounts.azuredatabricks.net의 값으로 설정합니다.
  • DATABRICKS_ACCOUNT_ID
  • ARM_CLIENT_ID
  • ARM_USE_MSI, 로 설정됩니다 true.

작업 영역 수준 작업의 경우 다음 환경 변수를 설정합니다.

  • DATABRICKS_HOST- 예를 들어 https://adb-1234567890123456.7.azuredatabricks.net작업 영역별 Azure Databricks URL 값으로 설정합니다.
  • ARM_CLIENT_ID
  • ARM_USE_MSI, 로 설정됩니다 true.

작업 영역 수준 작업의 경우 대상 ID가 작업 영역에 아직 추가되지 않은 경우 작업 영역 URL 대신 Azure Databricks 작업 영역에 DATABRICKS_HOST 대한 Azure 리소스 ID와 함께 지정 DATABRICKS_AZURE_RESOURCE_ID 합니다. 이 경우 대상 ID에는 Azure Databricks 작업 영역에 대한 Azure 리소스에 대한 기여자 또는 소유자 권한 이상이 있어야 합니다.

프로필

파일에 다음 필드를 사용하여 Azure Databricks 구성 프로필을 만들거나 식별합니다 .databrickscfg . 프로필을 만드는 경우 자리 표시자를 적절한 값으로 바꿉다. 도구 또는 SDK와 함께 프로필을 사용하려면 Azure Databricks 도구 또는 SDK 또는 도구 또는 SDK 설명서에서 지원되는 인증 유형을 참조하세요. 또한 클라이언트 통합 인증에 대한 환경 변수 및 필드와 클라이언트 통합 인증 방법 및 자격 증명에 대한 기본 평가 순서를 참조하세요.

계정 수준 작업의 경우 파일에서 .databrickscfg 다음 값을 설정합니다. 이 경우 Azure Databricks 계정 콘솔 URL은 다음과 같습니다 https://accounts.azuredatabricks.net.

[<some-unique-configuration-profile-name>]
host            = <account-console-url>
account_id      = <account-id>
azure_client_id = <azure-managed-identity-application-id>
azure_use_msi   = true

작업 영역 수준 작업의 경우 파일에서 .databrickscfg 다음 값을 설정합니다. 이 경우 호스트는 Azure Databricks 작업 영역별 URL입니다. 예를 들면 다음과 같습니다 https://adb-1234567890123456.7.azuredatabricks.net.

[<some-unique-configuration-profile-name>]
host            = <workspace-url>
azure_client_id = <azure-managed-identity-application-id>
azure_use_msi   = true

작업 영역 수준 작업의 경우 대상 ID가 작업 영역에 아직 추가되지 않은 경우 작업 영역 URL 대신 Azure Databricks 작업 영역에 host 대한 Azure 리소스 ID와 함께 지정 azure_workspace_resource_id 합니다. 이 경우 대상 ID에는 Azure Databricks 작업 영역에 대한 Azure 리소스에 대한 기여자 또는 소유자 권한 이상이 있어야 합니다.

Cli

Databricks CLI의 경우 다음 중 하나를 수행합니다.

  • 이 문서의 "환경" 섹션에 지정된 대로 환경 변수를 설정합니다.
  • 이 문서의 "프로필" 섹션에 지정된 대로 파일의 값을 .databrickscfg 설정합니다.

환경 변수는 항상 파일의 값보다 우선합니다 .databrickscfg .

Azure 관리 ID 인증참조하세요.

연결

참고 항목

Databricks 커넥트 인증을 위해 Python용 Databricks SDK를 사용합니다. Python용 Databricks SDK는 아직 Azure 관리 ID 인증을 구현하지 않았습니다.

Vs code

참고 항목

Visual Studio Code용 Databricks 확장은 아직 Azure 관리 ID 인증을 지원하지 않습니다.

Terraform

계정 수준 작업의 경우 기본 인증:

provider "databricks" {
  alias = "accounts"
}

직접 구성의 retrieve 경우(자리 표시자를 사용자 고유의 구현으로 바꿔서 콘솔 또는 HashiCorp Vault와 같은 다른 구성 저장소에서 값을 검색합니다. 자격 증명 모음 공급자참조하세요). 이 경우 Azure Databricks 계정 콘솔 URL은 다음과 같습니다 https://accounts.azuredatabricks.net.

provider "databricks" {
  alias           = "accounts"
  host            = <retrieve-account-console-url>
  account_id      = <retrieve-account-id>
  azure_client_id = <retrieve-azure-client-id>
  azure_use_msi   = true
}

작업 영역 수준 작업의 경우 기본 인증:

provider "databricks" {
  alias = "workspace"
}

직접 구성의 retrieve 경우(자리 표시자를 사용자 고유의 구현으로 바꿔서 콘솔 또는 HashiCorp Vault와 같은 다른 구성 저장소에서 값을 검색합니다. 자격 증명 모음 공급자참조하세요). 이 경우 호스트는 Azure Databricks 작업 영역별 URL입니다. 예를 들면 다음과 같습니다 https://adb-1234567890123456.7.azuredatabricks.net.

provider "databricks" {
  alias           = "workspace"
  host            = <retrieve-workspace-url>
  azure_client_id = <retrieve-azure-client-id>
  azure_use_msi   = true
}

작업 영역 수준 작업의 경우 대상 ID가 작업 영역에 아직 추가되지 않은 경우 작업 영역 URL 대신 Azure Databricks 작업 영역에 host 대한 Azure 리소스 ID와 함께 지정 azure_workspace_resource_id 합니다. 이 경우 대상 ID에는 Azure Databricks 작업 영역에 대한 Azure 리소스에 대한 기여자 또는 소유자 권한 이상이 있어야 합니다.

Databricks Terraform 공급자를 사용하여 인증하는 방법에 대한 자세한 내용은 인증을 참조하세요.

Python

참고 항목

Python용 Databricks SDK는 아직 Azure 관리 ID 인증을 구현하지 않았습니다.

Java

참고 항목

Java용 Databricks SDK는 아직 Azure 관리 ID 인증을 구현하지 않았습니다.

Go

계정 수준 작업의 경우 기본 인증:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient())
// ...

직접 구성의 retrieve 경우(자리 표시자를 사용자 고유의 구현으로 바꿔서 콘솔 또는 Azure KeyVault와 같은 다른 구성 저장소에서 값을 검색합니다). 이 경우 Azure Databricks 계정 콘솔 URL은 다음과 같습니다 https://accounts.azuredatabricks.net.

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
a := databricks.Must(databricks.NewAccountClient(&databricks.Config{
  Host:          retrieveAccountConsoleUrl(),
  AccountId:     retrieveAccountId(),
  AzureClientId: retrieveAzureClientId(),
  AzureUseMSI:   true,
}))
// ...

작업 영역 수준 작업의 경우 기본 인증:

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient())
// ...

직접 구성의 retrieve 경우(자리 표시자를 사용자 고유의 구현으로 바꿔서 콘솔 또는 Azure KeyVault와 같은 다른 구성 저장소에서 값을 검색합니다). 이 경우 호스트는 Azure Databricks 작업 영역별 URL입니다. 예를 들면 다음과 같습니다 https://adb-1234567890123456.7.azuredatabricks.net.

import (
  "github.com/databricks/databricks-sdk-go"
)
// ...
w := databricks.Must(databricks.NewWorkspaceClient(&databricks.Config{
  Host:          retrieveWorkspaceUrl(),
  AzureClientId: retrieveAzureClientId(),
  AzureUseMSI:   true,
}))
// ...

작업 영역 수준 작업의 경우 대상 ID가 작업 영역에 아직 추가되지 않은 경우 작업 영역 URL 대신 Azure Databricks 작업 영역에 Host 대한 Azure 리소스 ID와 함께 지정 AzureResourceID 합니다. 이 경우 대상 ID에는 Azure Databricks 작업 영역에 대한 Azure 리소스에 대한 기여자 또는 소유자 권한 이상이 있어야 합니다.

Go를 사용하고 Databricks 클라이언트 통합 인증을 구현하는 Databricks 도구 및 SDK를 사용하여 인증하는 방법에 대한 자세한 내용은 Azure Databricks 계정 또는 작업 영역으로 Go용 Databricks SDK 인증을 참조하세요.