다음을 통해 공유


Microsoft Entra ID 서비스 주체를 사용한 PowerShell 로그인

PowerShell을 사용하여 Microsoft Entra ID 서비스 주체를 사용하여 Azure Databricks에 로그인하려면 다음 단계를 수행합니다. Azure Databricks 서비스 주체에 대한 자세한 내용은 서비스 주체 관리를 참조 하세요.

Important

Azure Databricks 관리 서비스 주체는 Azure Databricks 내에서 직접 관리됩니다. Microsoft Entra ID 관리 서비스 주체는 추가 권한이 필요한 Microsoft Entra ID에서 관리됩니다. Databricks는 대부분의 사용 사례에 Azure Databricks 관리 서비스 주체를 사용하는 것이 좋습니다. 그러나 Databricks는 Azure Databricks 및 기타 Azure 리소스를 동시에 인증해야 하는 경우 Microsoft Entra ID 관리 서비스 주체를 사용하는 것이 좋습니다.

Microsoft Entra ID 관리 서비스 주체 대신 Azure Databricks 관리 서비스 주체를 만들려면 서비스 주체 관리를 참조 하세요.

  1. 다음 정보를 수집합니다.

    매개 변수 설명
    Tenant ID Directory (tenant) ID Microsoft Entra ID에 등록된 관련 응용 프로그램의 경우입니다.
    Client ID Application (client) ID Microsoft Entra ID에 등록된 관련 응용 프로그램의 경우입니다.
    Client secret Value Microsoft Entra ID에 등록된 관련 애플리케이션에 대한 클라이언트 암호입니다.
  2. PowerShell을 사용하여 서비스 주체를 Azure에 로그인하여 한 번에 한 줄씩 다음 코드 줄을 실행하고 커넥트-AzAccount cmdlet을 호출합니다.

    $SecurePassword = ConvertTo-SecureString -String "<Client-secret>" -AsPlainText -Force
    $TenantId = "<Tenant-ID>"
    $ApplicationId = "<Client-ID>"
    $Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $ApplicationId, $SecurePassword
    Connect-AzAccount -ServicePrincipal -TenantId $TenantId -Credential $Credential
    

    참고 항목

    cmdlet이 Connect-AzAccount 인식되지 않는다는 오류 메시지가 표시되면 다음 cmdlet을 실행하여 설치합니다.

    Install-Module -Name Az -Repository PSGallery -Force
    
  3. 로그인한 서비스 주체에 대해 올바른 구독에 로그인했는지 확인합니다. 로그인한 구독의 이름 및 ID와 구독의 관련 테넌트 ID를 가져오려면 다음 cmdlet을 실행합니다.

    Get-AzContext | Select-Object -ExpandProperty Subscription
    

    올바른 구독이 무엇인지 잘 모르는 경우 예를 들어 작업 영역 탐색 모음에서 사용자 >이름 Azure Portal 을 클릭하여 Azure Databricks 작업 영역에 대한 구독 ID를 가져올 수 있습니다. 표시되는 Azure Databricks 작업 영역 리소스 페이지에서 사이드바에서 개요를 클릭합니다. 그런 다음 구독 ID가 포함된 구독 ID 필드를 찾습니다.

    Azure Portal에 액세스할 수 없지만 Azure Databricks 계정 콘솔에 액세스할 수 있는 경우 다음과 같이 Azure Databricks 작업 영역에 대한 올바른 구독을 얻을 수 있습니다.

    1. 작업 영역 탐색 모음의 사용자 이름 다음에 있는 작업 영역의 프로그래밍 방식 이름을 기록해 둡다.
    2. 작업 영역 탐색 모음에서 사용자 이름 >관리 계정을 클릭합니다.
    3. 사이드바에서 작업 영역을 클릭합니다.
    4. 작업 영역 필터링 상자에 작업 영역의 프로그래밍 방식 이름을 입력하고 키를 누릅니Enter다.
    5. 결과 목록에서 작업 영역의 프로그래밍 이름을 클릭합니다.
    6. 구독 ID가 포함된 구독 필드를 기록해 둡니다.

    다른 구독으로 전환해야 하는 경우 올바른 구독 이름 또는 ID를 지정하기 위해 매개 변수를 -Subscription 사용하여 -Name Set-AzContext cmdllet을 실행합니다.

    Set-AzContext -Name "<subscription-name>"
    
    # Or ...
    
    Set-AzContext -Subscription <subscription-id>
    

    다음 메시지가 표시되면 잘못된 테넌트에 로그인합니다. 올바른 테넌 The subscription of '<subscription-id>' doesn't exist in cloud 'AzureCloud'. 트에 로그인하려면 올바른 테넌트 ID를 지정하는 옵션을 사용하여 -Tenant cmdlet을 다시 실행 Connect-AzAccount 해야 합니다.

    명령을 curl -v <per-workspace-URL>/aad/auth 실행하고 출력 < location: https://login.microsoftonline.com/00000000-0000-0000-0000-000000000000(여기서 00000000-0000-0000-0000-000000000000 테넌트 ID)을 확인하여 Azure Databricks 작업 영역에 대한 테넌트 ID를 가져올 수 있습니다. Azure Portal에서 구독 및 테넌트 ID 가져오기도 참조하세요.

    Connect-AzAccount -Tenant <tenant-id>