이 문서에서는 Automation 계정으로 관리 ID를 사용할 때 발생할 수 있는 문제에 대한 솔루션에 대해 설명합니다. Automation 계정에서 관리 ID를 사용하는 방법에 대한 일반적인 내용은 Azure Automation 계정 인증 개요 참조하세요.
시나리오: 시스템이 할당한 관리 ID가 있는 Runbook이 400 오류 메시지와 함께 실패함
문제
시스템이 할당한 관리 ID가 있는 Runbook이 unable to acquire for tenant organizations with error ManagedIdentityCredential authentication failed. Managed System Identity not found! Status 400 (Bad Request) 오류로 인해 실패합니다.
원인
시스템 할당 관리 ID를 만든 후 사용 권한을 할당하지 않았습니다.
해결
시스템 할당 관리 ID에 적절한 권한을 할당해야 합니다. Azure Automation 계정에 시스템 할당 관리 ID 사용
시나리오: Runbook의 관리 ID는 Azure 대해 인증할 수 없습니다.
문제
Runbook에서 관리 ID를 사용하는 경우 다음과 같은 오류가 발생합니다. connect-azaccount : ManagedIdentityCredential authentication failed: Failed to get MSI token for account d94c0db6-5540-438c-9eb3-aa20e02e1226 and resource https://management.core.windows.net/. Status: 500 (Internal Server Error)
원인
다음과 같은 경우에 이러한 문제가 발생할 수 있습니다.
원인 1: 아직 생성되지 않은 Automation 계정의 시스템 관리 ID를 사용하고 있어서, 해당 항목이 Azure에 인증한 뒤
Code Connect-AzAccount -IdentityAzure 또는 하이브리드 Runbook Worker에서 Runbook을 실행하려고 할 때 문제가 발생합니다.Cause 2: Automation 계정에 사용자 관리 ID가 할당되어 있으며, 시스템 관리 ID가 할당되지 않았습니다.
Code Connect-AzAccount -Identity이로 인해 Azure 가상 머신 Hybrid Runbook Worker에서 runbook을 실행하고 Azure에 인증하려고 할 때 Azure VM 시스템 관리 ID를 사용합니다.
해결
Resolution 1: Automation 계정 시스템 관리 ID를 만들고 Azure 리소스에 대한 액세스 권한을 부여해야 합니다.
해결 방법 2: 요구 사항에 맞게 다음을 수행할 수 있습니다.
- Automation 계정 시스템 관리 ID를 만들고 이를 사용하여 인증합니다.
또는 - Automation 계정 사용자가 할당한 관리 ID를 삭제합니다.
- Automation 계정 시스템 관리 ID를 만들고 이를 사용하여 인증합니다.
시나리오: Automation 계정에 추가할 사용자가 할당한 관리 ID를 찾을 수 없음
문제
Automation 계정에 사용자가 할당한 관리 ID를 추가하려고 합니다. 그러나 Automation 블레이드에서 계정을 찾을 수 없습니다.
원인
이 문제는 사용자에게 할당된 관리 ID를 Automation 블레이드에서 보기 위한 다음의 권한이 없을 경우에 발생합니다.
Microsoft.ManagedIdentity/userAssignedIdentities/*/readMicrosoft.ManagedIdentity/userAssignedIdentities/*/assign/action
참고
위의 권한은 기본적으로 관리 ID 운영자 및 관리 ID 기여자에 부여됩니다.
해결
Automation 계정에 사용자 할당 관리 ID를 추가할 수 있는 ID 운영자 역할 권한이 있는지 확인합니다.
시나리오: Runbook이 “this.Client.SubscriptionId는 null일 수 없습니다.”라는 오류 메시지와 함께 실패함
문제
관리 ID Connect-AzAccount -Identity를 사용하는 Runbook은 Azure 개체를 관리하려고 시도하지만, 작업에 실패하며 다음 오류가 기록됩니다. this.Client.SubscriptionId cannot be null.
get-azvm : 'this.Client.SubscriptionId' cannot be null. At line:5 char:1 + get-azvm + ~~~~~~~~ + CategoryInfo : CloseError: (:) [Get-AzVM], ValidationException + FullyQualifiedErrorId : Microsoft.Azure.Commands.Compute.GetAzureVMCommand
원인
이 문제는 관리 ID(또는 Runbook에 사용된 다른 계정)에 구독에 액세스할 수 있는 권한이 부여되지 않은 경우에 발생할 수 있습니다.
해결
관리 아이덴티티(또는 런북에 사용되는 다른 계정)에 구독에서 적절한 역할의 구성원 자격을 부여합니다. 자세한 정보
시나리오: 계정에 대한 MSI 토큰을 가져오지 못함
문제
Automation 계정에서 사용자 할당 관리 ID로 작업하는 경우 Failed to get MSI token for account a123456b-1234-12a3-123a-aa123456aa0b와 유사한 오류가 표시됩니다.
원인
Automation 계정에 대해 시스템 할당 관리 ID를 사용하도록 설정하기 전에 사용자 할당 관리 ID를 사용합니다.
해결
Automation 계정에 대해 시스템 할당 관리 ID를 사용하도록 설정합니다. 그런 다음 사용자가 할당한 관리 ID를 사용합니다.
시나리오: Automation 계정으로 관리되는 ID를 사용하려고 시도했지만 실패했습니다.
문제
Automation 계정에서 관리 ID를 사용하려고 할 때 다음과 같은 오류가 발생합니다.
Connect-AzureRMAccount : An error occurred while sending the request. At line:2 char:1 + Connect-AzureRMAccount -Identity +
CategoryInfo : CloseError: (:) [Connect-AzureRmAccount], HttpRequestException + FullyQualifiedErrorId : Microsoft.Azure.Commands.Profile.ConnectAzureRmAccountCommand
원인
가장 일반적인 원인은 식별자를 사용하기 전에 활성화하지 않았기 때문입니다. 이를 확인하려면 영향을 받는 Automation 계정에서 다음 PowerShell runbook을 실행합니다.
$resource= "?resource=https://management.azure.com/"
$url = $env:IDENTITY_ENDPOINT + $resource
$Headers = New-Object "System.Collections.Generic.Dictionary[[String],[String]]"
$Headers.Add("X-IDENTITY-HEADER", $env:IDENTITY_HEADER)
$Headers.Add("Metadata", "True")
try
{
$Response = Invoke-RestMethod -Uri $url -Method 'GET' -Headers $Headers
}
catch
{
$StatusCode = $_.Exception.Response.StatusCode.value__
$stream = $_.Exception.Response.GetResponseStream()
$reader = New-Object System.IO.StreamReader($stream)
$responseBody = $reader.ReadToEnd()
Write-Output "Request Failed with Status: $StatusCode, Message: $responseBody"
}
ID(사용자 계정)를 사용하기 전에 활성화하지 않은 경우, 다음과 유사한 결과가 표시됩니다.
Request Failed with Status: 400, Message: {"Message":"No managed identity was found for Automation account xxxxxxxxxxxx"}
해결
관리 ID 서비스를 사용하려면 먼저 Automation 계정에 대한 ID를 사용하도록 설정해야 합니다. Azure Automation 계정에 대한 관리 ID를 사용할 수 있습니다 참조하세요.
다음 단계
이 문서에서 문제가 해결되지 않으면 다음 채널 중 하나를 시도하여 추가 지원을 받습니다.
- Azure 포럼 통해 Azure 전문가의 답변을 얻습니다.
- @AzureSupport에 연결하세요. Azure 커뮤니티를 올바른 리소스(답변, 지원 및 전문가)에 연결하기 위한 공식 Microsoft Azure 계정입니다.
- 해결되지 않은 문제에 대한 지원 사례를 열려는 경우 필수 진단 데이터를 수집한 후 엽니다. Microsoft Azure Automation 케이스를 열 때 수집할 데이터를 참조하세요.
- Azure 지원 인시던트를 제출합니다. Azure 지원 사이트로 이동하고 지원 받기를 선택하세요.