다음을 통해 공유


Databricks CLI에 대한 인증

비고

이 정보는 Databricks CLI 버전 0.205 이상에 적용됩니다. Databricks CLI는 공개 미리 보기로 제공됩니다.

Databricks CLI 사용은 Databricks 라이선스Databricks 개인 정보 보호 고지, 그리고 모든 사용 데이터 관련 조항의 적용을 받습니다.

이 문서에서는 Azure Databricks CLI와 Azure Databricks 계정 및 작업 영역 간에 인증을 설정하는 방법을 설명합니다. Azure Databricks CLI를 이미 설치했다고 가정합니다. Databricks CLI 설치 또는 업데이트를 참조하세요.

Azure Databricks CLI 명령을 실행하기 전에 사용하려는 계정 또는 작업 영역에 대한 인증 을 구성해야 합니다. 필요한 설정은 작업 영역 수준 명령, 계정 수준 명령 또는 둘 다를 실행할지 여부에 따라 달라집니다.

사용 가능한 CLI 명령 그룹을 보려면 다음을 실행합니다 databricks -h. 해당 REST API 작업 목록은 Databricks REST API를 참조하세요.

특히 Azure DevOps를 사용하여 Databricks에 대한 Microsoft Entra 인증에 대한 자세한 내용은 Azure Databricks에서 Azure DevOps로 인증을 참조하세요.

OAuth M2M(컴퓨터 대 컴퓨터) 인증

OAuth를 사용한 M2M(컴퓨터 간) 인증을 사용하면 서비스, 스크립트 또는 애플리케이션이 대화형 사용자 로그인 없이 Databricks 리소스에 액세스할 수 있습니다. M2M 인증은 PAT(개인 액세스 토큰) 또는 사용자 자격 증명을 사용하는 대신 서비스 주체 및 OAuth 클라이언트 자격 증명 흐름을 사용하여 토큰을 요청하고 관리합니다.

OAuth M2M 인증을 구성하고 사용하려면 다음을 수행합니다.

  1. OAuth M2M 인증 설정 단계를 완료합니다. OAuth를 사용하여 Azure Databricks에 대한 서비스 주체 액세스 권한 부여를 참조하세요.

  2. 파일에 다음 필드를 사용하여 Azure Databricks .databrickscfg 만듭니다.

    계정 수준 명령의 경우

    [<some-unique-configuration-profile-name>]
    host          = <account-console-url>
    account_id    = <account-id>
    client_id     = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>
    

    작업 영역 수준 명령의 경우

    [<some-unique-configuration-profile-name>]
    host          = <workspace-url>
    client_id     = <service-principal-client-id>
    client_secret = <service-principal-oauth-secret>
    

프로필을 사용하려면 CLI 명령에서 --profile-p 또는 플래그와 함께 전달합니다. 예시:

databricks account groups list -p <profile-name>

사용 가능한 프로필 목록을 표시하려면 --profile Tab -p 키를 누릅니다.

OAuth 사용자와 기계 간(U2M) 인증

OAuth U2M(사용자-컴퓨터) 인증을 사용하면 대화형으로 로그인하고 CLI는 사용자를 대신하여 수명이 짧은 토큰을 관리합니다. OAuth 토큰은 1시간 안에 만료되므로 토큰이 실수로 노출될 경우 위험을 줄일 수 있습니다. OAuth를 사용하여 Azure Databricks에 대한 사용자 액세스 권한 부여를 참조하세요.

로그인하려면 다음을 수행합니다.

계정 수준 명령의 경우

databricks auth login --host <account-console-url> --account-id <account-id>

작업 영역 수준 명령의 경우

databricks auth login --host <workspace-url>

CLI는 브라우저 기반 로그인 흐름을 안내합니다. 완료되면 CLI는 자격 증명을 구성 프로필로 저장합니다. 제안된 프로필 이름을 수락하거나 직접 입력할 수 있습니다.

프로필을 사용하려면 CLI 명령에서 --profile-p 또는 플래그와 함께 전달합니다. 예시:

databricks clusters list -p <profile-name>

사용 가능한 프로필 목록을 표시하려면 --profile Tab -p 키를 누릅니다.

Azure 관리 ID 인증

Azure 관리 ID 인증은 인증에 Azure 리소스(이전의 MSI(관리 서비스 ID))에 대한 관리 ID를 사용합니다. Azure 리소스에 대한 관리 ID란?을 참조하세요. Azure 관리 ID 인증도 참조하세요.

Azure 사용자가 할당한 관리 ID를 만들려면 다음을 따르세요.

  1. Azure VM을 만들거나 식별하고 거기에 Databricks CLI를 설치한 다음, 관리 ID를 Azure VM 및 대상 Azure Databricks 계정, 작업 영역 또는 둘 다에 할당합니다. Azure Databricks 자동화에 대한 Azure 관리 ID 인증 설정 및 사용을 참조하세요.

  2. Azure VM에서 파일에 다음 필드를 사용하여 Azure Databricks 구성 프로필을 만들거나 식별합니다 .databrickscfg . 프로필을 만드는 경우 자리 표시자를 적절한 값으로 바꿉다.

    계정 수준 명령의 경우 파일에서 .databrickscfg 다음 값을 설정합니다.

    [<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 다음 값을 설정합니다.

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

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

  3. Azure VM에서 Databricks CLI --profile 또는 -p 옵션과 구성 프로필의 이름을 사용하여 Databricks에서 사용할 프로필(예 databricks account groups list -p <configuration-profile-name> : 또는 databricks clusters list -p <configuration-profile-name>)을 설정합니다.

    구성 프로필 이름을 수동으로 입력하는 대신 Tab 또는 --profile-p 눌러 선택할 수 있는 기존 구성 프로필 목록을 표시할 수 있습니다.

Microsoft Entra ID 서비스 주체 인증

Microsoft Entra ID 서비스 주체 인증은 Microsoft Entra ID 서비스 주체의 자격 증명을 사용하여 인증합니다. Azure Databricks에 대한 서비스 주체를 만들고 관리하려면 서비스 주체를 참조하세요. MS Entra 서비스 주체 인증도 참조하세요.

Microsoft Entra ID 서비스 주체 인증을 구성하고 사용하려면 Azure CLI 인증 을 로컬로 설치해야 합니다. 다음도 수행해야 합니다.

  1. 파일에 있는 다음 필드를 사용하여 Azure Databricks 구성 프로필을 만들거나 식별하십시오 .databrickscfg. 프로필을 만드는 경우 자리 표시자를 적절한 값으로 바꿉다.

    계정 수준 명령의 경우 파일에서 .databrickscfg 다음 값을 설정합니다.

    [<some-unique-configuration-profile-name>]
    host                = <account-console-url>
    account_id          = <account-id>
    azure_tenant_id     = <azure-service-principal-tenant-id>
    azure_client_id     = <azure-service-principal-application-id>
    azure_client_secret = <azure-service-principal-client-secret>
    

    작업 영역 수준 명령의 경우 파일에서 .databrickscfg 다음 값을 설정합니다.

    [<some-unique-configuration-profile-name>]
    host                = <workspace-url>
    azure_tenant_id     = <azure-service-principal-tenant-id>
    azure_client_id     = <azure-service-principal-application-id>
    azure_client_secret = <azure-service-principal-client-secret>
    

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

  2. Databricks CLI 명령 호출의 일환으로 --profile 또는 -p 옵션 뒤에 구성 프로필의 이름을 사용합니다. 예를 들어 databricks account groups list -p <configuration-profile-name> 또는 databricks clusters list -p <configuration-profile-name>입니다.

    구성 프로필 이름을 수동으로 입력하는 대신 Tab 또는 --profile-p 눌러 선택할 수 있는 기존 구성 프로필 목록을 표시할 수 있습니다.

Azure CLI 인증

Azure CLI 인증은 Azure CLI를 사용하여 로그인한 엔터티를 인증합니다. Azure CLI 인증도 참조하세요.

Azure CLI 인증을 구성하려면 다음을 수행해야 합니다.

  1. Azure CLI를 로컬로 설치합니다.

  2. Azure CLI를 사용하여 az login 명령을 실행하고 Azure Databricks에 로그인합니다. Azure Databricks 사용자 계정으로 Azure CLI 로그인을 참조하세요.

  3. 파일에 있는 다음 필드를 사용하여 Azure Databricks 구성 프로필을 만들거나 식별하십시오 .databrickscfg. 프로필을 만드는 경우 자리 표시자를 적절한 값으로 바꿉다.

    계정 수준 명령의 경우 파일에서 .databrickscfg 다음 값을 설정합니다.

    [<some-unique-configuration-profile-name>]
    host       = <account-console-url>
    account_id = <account-id>
    

    작업 영역 수준 명령의 경우 파일에서 .databrickscfg 다음 값을 설정합니다.

    [<some-unique-configuration-profile-name>]
    host = <workspace-url>
    
  4. Databricks CLI 명령 호출의 일환으로 --profile 또는 -p 옵션 뒤에 구성 프로필의 이름을 사용합니다. 예를 들어 databricks account groups list -p <configuration-profile-name> 또는 databricks clusters list -p <configuration-profile-name>입니다.

    구성 프로필 이름을 수동으로 입력하는 대신 Tab 또는 --profile-p 눌러 선택할 수 있는 기존 구성 프로필 목록을 표시할 수 있습니다.

평가의 인증 순서

Databricks CLI가 Azure Databricks 작업 영역 또는 계정에 인증할 때마다 다음 순서로 필요한 설정을 찾습니다.

  1. 번들 작업 디렉터리에서 실행되는 명령에 대한 번들 설정 파일입니다. 번들 설정 파일에는 자격 증명 값이 직접 포함될 수 없습니다.
  2. 문서와 통합 인증을 위한 환경 변수 및 필드에 나열된 환경 변수입니다.
  3. 파일의 구성 프로필입니다.databrickscfg.

CLI가 필요한 설정을 찾자마자 다른 위치 검색을 중지합니다.

예제:

  • 환경 변수가 DATABRICKS_TOKEN 설정된 경우 CLI는 여러 토큰이 있는 .databrickscfg경우에도 이 변수를 사용합니다.
  • 설정되지 않고 DATABRICKS_TOKEN 번들 환경에서 → 프로필과 같은 dev 프로필 DEV이름을 참조하는 경우 CLI는 해당 프로필의 자격 증명을 .databrickscfg사용합니다.
  • 설정되지 않고 DATABRICKS_TOKEN 번들 환경이 값을 지정 host 하는 경우 CLI는 일치하는 .databrickscfg 프로필을 검색하고 해당 host프로필을 token 사용합니다.

개인 액세스 토큰 인증(사용되지 않음)

중요합니다

Azure Databricks 사용자 이름 및 암호를 사용한 기본 인증은 2024년 7월 10일에 수명이 종료되었습니다. Azure Databricks 계정으로 인증하려면 다음 인증 방법 중 하나를 대신 사용합니다.

Azure Databricks 개인용 액세스 토큰 인증은 Azure Databricks 개인용 액세스 토큰을 사용하여 Azure Databricks 사용자 계정과 같은 대상 Azure Databricks 엔터티를 인증합니다. Azure Databricks 개인용 액세스 토큰 인증(레거시)을 참조하세요.

개인 액세스 토큰을 만들려면 작업 영역 사용자를 위한 Azure Databricks 개인용 액세스 토큰의 단계를 따릅니다.