Aracılığıyla paylaş


Azure Otomasyonu yönetilen kimlik sorunlarını giderme

Bu makalede, Otomasyon hesabınızla yönetilen kimlik kullanırken karşılaşabileceğiniz sorunların çözümleri açıklanmıştır. Otomasyon hesaplarıyla yönetilen kimlik kullanma hakkında genel bilgi için bkz. Azure Otomasyonu hesap kimlik doğrulamasına genel bakış.

Senaryo: Sistem tarafından atanan yönetilen kimliğe sahip runbook 400 hata iletisiyle başarısız oluyor

Sorun

Sistem tarafından atanan yönetilen kimliğe sahip runbook şu hatayla başarısız oluyor: unable to acquire for tenant organizations with error ManagedIdentityCredential authentication failed. Managed System Identity not found! Status 400 (Bad Request)

Neden

Sistem tarafından atanan yönetilen kimliği oluşturduktan sonra izin atamadınız.

Çözüm

Sistem tarafından atanan yönetilen kimlik için uygun izinleri atadığınızdan emin olun. Azure Otomasyonu hesabı için sistem tarafından atanan yönetilen kimlik kullanma

Senaryo: Runbook'taki Yönetilen Kimlik, Azure'da kimlik doğrulaması yapamıyor

Sorun

Runbook'unuzda Yönetilen Kimlik kullanırken şu şekilde bir hata alırsınız: 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)

Neden

Bu durum şu durumlarda oluşabilir:

  • Neden 1: Henüz oluşturulmamış olan ve Azure'da kimlik doğrulaması yapmaya ve Code Connect-AzAccount -Identity Azure'da veya Karma Runbook Çalışanı üzerinde runbook çalıştırmaya çalışan Otomasyon hesabı Sistem Yönetilen Kimliği'ni kullanırsınız.

  • Neden 2: Otomasyon hesabına Sistem Tarafından Yönetilen Kimlik değil kullanıcı tarafından yönetilen kimlik atanmıştır ve - Code Connect-AzAccount -Identity Azure VM Sistem Yönetilen Kimliği'ni kullanarak Azure sanal makinesi Karma Runbook Çalışanı üzerinde bir runbook çalıştırmaya çalışır.

Çözüm

  • 1. Çözüm: Otomasyon Hesabı Sistem Yönetilen Kimliği'ni oluşturmalı ve Azure Kaynaklarına erişim vermelisiniz.

  • 2. Çözüm: Gereksinimlerinize uygun olarak şunları yapabilirsiniz:

    • Otomasyon Hesabı Sistem Yönetilen Kimliği'ni oluşturun ve kimlik doğrulaması için kullanın.
      Veya
    • Otomasyon Hesabı Kullanıcı Tarafından Atanan Yönetilen Kimlik'i silin.

Senaryo: Otomasyon hesabına eklemek için kullanıcı tarafından atanan yönetilen kimlik bulunamıyor

Sorun

Otomasyon hesabına kullanıcı tarafından atanan bir yönetilen kimlik eklemek istiyorsunuz. Ancak, hesabı Otomasyon dikey penceresinde bulamıyorsunuz.

Neden

Bu sorun, kullanıcı tarafından atanan yönetilen kimliği Otomasyon dikey penceresinde görüntülemek için aşağıdaki izinlere sahip olmadığınızda oluşur.

  • Microsoft.ManagedIdentity/userAssignedIdentities/*/read
  • Microsoft.ManagedIdentity/userAssignedIdentities/*/assign/action

Not

Yukarıdaki izinler varsayılan olarak Yönetilen Kimlik operatörüne ve Yönetilen Kimlik Katkıda Bulunanı'na verilir.

Çözüm

Otomasyon hesabınıza kullanıcı tarafından atanan yönetilen kimliği eklemek için Kimlik Operatörü rol izniniz olduğundan emin olun.

Senaryo: Runbook şu hatayla başarısız oluyor: "Bu. Client.SubscriptionId null olamaz." hata iletisi

Sorun

Azure nesnelerini yönetmeye çalışan yönetilen kimlik Bağlan-AzAccount -Identity kullanan runbook'unuz başarıyla çalışamıyor ve aşağıdaki hatayı günlüğe kaydedemiyor -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

Neden

Yönetilen Kimliğe (veya runbook'ta kullanılan başka bir hesaba) aboneliğe erişim izni verilmediğinde bu durum oluşabilir.

Çözüm

Yönetilen Kimliğe (veya runbook'ta kullanılan başka bir hesaba) abonelik üzerinde uygun bir rol üyeliği verin. Daha fazla bilgi edinin

 Azure Rol atamalarının atandığını gösteren ekran görüntüsü.

Rol ataması eklemeyi gösteren ekran görüntüsü.

Senaryo: Hesap için MSI belirteci alınamaz

Sorun

Otomasyon hesabınızda kullanıcı tarafından atanan yönetilen kimlikle çalışırken şuna benzer bir hata alırsınız: Failed to get MSI token for account a123456b-1234-12a3-123a-aa123456aa0b.

Neden

Otomasyon hesabınız için sistem tarafından atanan yönetilen kimliği etkinleştirmeden önce kullanıcı tarafından atanan yönetilen kimliği kullanma.

Çözüm

Otomasyon hesabınız için sistem tarafından atanan yönetilen kimliği etkinleştirin. Daha sonra, kullanıcı tarafından atanan yönetilen kimliği kullanın.

Senaryo: Yönetilen kimliği Otomasyon hesabıyla kullanma girişimi başarısız oluyor

Sorun

Otomasyon hesabınızda yönetilen kimliklerle çalışmak istediğinizde aşağıdaki gibi bir hatayla karşılaşabilirsiniz:

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

Neden

Bunun en yaygın nedeni, kullanmayı denemeden önce kimliği etkinleştirmemiş olmanızdır. Bunu doğrulamak için etkilenen Otomasyon hesabında aşağıdaki PowerShell runbook'unu çalıştırın.

$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"
}

Sorun gerçekten de kullanmaya çalışmadan önce kimliği etkinleştirmemiş olmanız ise şuna benzer bir sonuç görmeniz gerekir:

Request Failed with Status: 400, Message: {"Message":"No managed identity was found for Automation account xxxxxxxxxxxx"}

Çözüm

Yönetilen kimlik hizmetini kullanabilmeniz amacıyla, otomasyon hesabınız için bir kimliği etkinleştirmeniz gerekir. Bkz. Azure Otomasyonu hesabınız için yönetilen kimliği etkinleştirme

Sonraki adımlar

Bu makale sorununuzu çözmezse ek destek için aşağıdaki kanallardan birini deneyin:

  • Azure Forumları aracılığıyla Azure uzmanlarından yanıt alın.
  • @AzureSupport ile Bağlan. Bu, Azure topluluğunun doğru kaynaklara bağlanmasına yönelik resmi Microsoft Azure hesabıdır: yanıtlar, destek ve uzmanlar.
  • bir Azure desteği olayı dosyala. Azure desteği sitesine gidin ve Destek Al'ı seçin.