Databricks CLI에 대한 인증

비고

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

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

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

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

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

Azure DevOps 사용하여 Databricks에 Microsoft Entra 인증하는 방법에 대한 자세한 내용은 Azure Databricks 참조하세요.

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 또는 -p 다음에 Tab 키를 눌러 사용 가능한 프로필 목록을 표시합니다.

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 또는 -p 다음에 Tab 키를 눌러 사용 가능한 프로필 목록을 표시합니다.

Azure 관리 ID 인증

Azure 관리 ID 인증은 인증에 Azure 리소스(이전의 MSI(관리 서비스 ID))에 대해 관리 ID를 사용합니다. Azure 리소스에 대한 관리 ID는 무엇입니까? 참조하세요. 또한 Azure 관리 ID로 인증 참조하세요.

Azure 사용자 할당 관리 ID를 만들려면 다음을 수행합니다.

  1. Azure VM을 만들거나 식별하고 Databricks CLI를 설치한 다음 Azure VM 및 대상 Azure Databricks 계정, 작업 영역 또는 둘 다에 관리 ID를 할당합니다. 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
    

    Databricks는 host을(를) 사용하고, 작업 영역에 정체성을 명시적으로 할당하는 것을 추천합니다. 또는 Azure 리소스 ID와 함께 azure_workspace_resource_id 사용합니다. 이 방법을 사용하려면 Azure 리소스에 대한 기여자 또는 소유자 권한 또는 특정 Azure Databricks 권한이 있는 사용자 지정 역할이 필요합니다.

  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 대한 서비스 주체를 만들고 관리하려면 서비스 주체 참조하세요. 또한 Microsoft 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>
    

    Databricks는 host 사용하고 Microsoft Entra ID 서비스 주체를 작업 영역에 명시적으로 할당하는 것이 좋습니다. 또는 Azure 리소스 ID와 함께 azure_workspace_resource_id 사용합니다. 이 방법을 사용하려면 Azure 리소스에 대한 기여자 또는 소유자 권한 또는 특정 Azure Databricks 권한이 있는 사용자 지정 역할이 필요합니다.

  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 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이 설정되지 않았고, 번들 환경이 devDEV 이름 같은 프로필을 참조하는 경우, CLI는 .databrickscfg에서 해당 프로필의 자격 증명을 사용합니다.
  • DATABRICKS_TOKEN 가 설정되지 않고 번들 환경이 host 값을 지정하는 경우, CLI는 .databrickscfg에 있는 일치하는 host 프로필을 검색하여 해당 프로필의 token를 사용합니다.

개인 액세스 토큰 인증(레거시)

중요합니다

가능한 경우 Azure Databricks 사용자 계정 인증을 위해 PAT 대신 OAuth를 사용하는 것이 좋습니다. OAuth는 더 강력한 보안을 제공하기 때문입니다. 다음 인증 방법을 고려합니다.

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

개인 액세스 토큰을 만들려면 작업 영역 사용자에 대한 개인 액세스 토큰 만들기의 단계를 수행합니다.