Aracılığıyla paylaş


Azure Otomasyonu hesabı için sistem tarafından atanan yönetilen kimliği devre dışı bırakma

Azure portalını veya REST API'yi kullanarak sistem tarafından atanan yönetilen kimliği Azure Otomasyonu devre dışı bırakabilirsiniz.

Azure portalı kullanarak devre dışı bırakma

Sistem tarafından atanan yönetilen kimliğin başlangıçta nasıl ayarlandığından bağımsız olarak Azure portalından sistem tarafından atanan yönetilen kimliği devre dışı bırakabilirsiniz.

  1. Azure Portal’ında oturum açın.

  2. Otomasyon hesabınıza gidin ve Hesap Ayarları'nın altında Kimlik'i seçin.

  3. Sistem tarafından atanan sekmesindeki Durum düğmesinin altında Kapalı'yı ve ardından Kaydet'i seçin. Onaylamanız istendiğinde Evet'i seçin.

Sistem tarafından atanan yönetilen kimlik devre dışı bırakıldı ve artık hedef kaynağa erişimi yok.

REST API kullanarak devre dışı bırakma

Söz dizimi ve örnek adımlar aşağıda verilmiştır.

Request body

Aşağıdaki istek gövdesi, sistem tarafından atanan yönetilen kimliği devre dışı bırakır ve HTTP PATCH yöntemini kullanarak kullanıcı tarafından atanan yönetilen kimlikleri kaldırır.

{ 
 "identity": { 
   "type": "None" 
  } 
}

Kullanıcı tarafından atanmış birden çok kimlik tanımlıysa bunları korumak ve yalnızca sistem tarafından atanan kimliği kaldırmak için kullanıcı tarafından atanan her kimliği virgülle ayrılmış liste kullanarak belirtmeniz gerekir. Aşağıdaki örnekte HTTP PATCH yöntemi kullanılır.

{ 
"identity" : {
    "type": "UserAssigned",
    "userAssignedIdentities": {
        "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/firstIdentity": {},
        "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/secondIdentity": {}
        }
    }
}

Aşağıda hizmetin PATCH isteğini göndermek için REST API istek URI'sini bulabilirsiniz.

PATCH https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/resource-group-name/providers/Microsoft.Automation/automationAccounts/automation-account-name?api-version=2020-01-13-preview

Örnek

Aşağıdaki adımları gerçekleştirin.

  1. Gerçekleştirmek istediğiniz işleme bağlı olarak istek gövdesini kopyalayıp adlı body_remove_sa.jsonbir dosyaya yapıştırın. Dosyayı yerel makinenize veya bir Azure depolama hesabına kaydedin.

  2. Connect-AzAccount cmdlet'ini kullanarak Azure'da etkileşimli olarak oturum açın ve yönergeleri izleyin.

    # Sign in to your Azure subscription
    $sub = Get-AzSubscription -ErrorAction SilentlyContinue
    if(-not($sub))
    {
        Connect-AzAccount
    }
    
    # If you have multiple subscriptions, set the one to use
    # Select-AzSubscription -SubscriptionId "<SUBSCRIPTIONID>"
    
  3. Değişkenler için uygun bir değer sağlayın ve betiği yürütür.

    $subscriptionID = "subscriptionID"
    $resourceGroup = "resourceGroupName"
    $automationAccount = "automationAccountName"
    $file = "path\body_remove_sa.json"
    
  4. Bu örnekte, Patch isteğini Otomasyon hesabınıza göndermek için Invoke-RestMethod PowerShell cmdlet'i kullanılır.

    # build URI
    $URI = "https://management.azure.com/subscriptions/$subscriptionID/resourceGroups/$resourceGroup/providers/Microsoft.Automation/automationAccounts/$automationAccount`?api-version=2020-01-13-preview"
    
    # build body
    $body = Get-Content $file
    
    # obtain access token
    $azContext = Get-AzContext
    $azProfile = [Microsoft.Azure.Commands.Common.Authentication.Abstractions.AzureRmProfileProvider]::Instance.Profile
    $profileClient = New-Object -TypeName Microsoft.Azure.Commands.ResourceManager.Common.RMProfileClient -ArgumentList ($azProfile)
    $token = $profileClient.AcquireAccessToken($azContext.Subscription.TenantId)
    $authHeader = @{
        'Content-Type'='application/json'
        'Authorization'='Bearer ' + $token.AccessToken
    }
    
    # Invoke the REST API
    Invoke-RestMethod -Uri $URI -Method PATCH -Headers $authHeader -Body $body
    
    # Confirm removal
    (Get-AzAutomationAccount `
        -ResourceGroupName $resourceGroup `
        -Name $automationAccount).Identity.Type
    

    Kullandığınız söz dizimine bağlı olarak çıkış: UserAssigned veya boş olur.

Sonraki adımlar