Dela via


Inaktivera systemtilldelad hanterad identitet för Azure Automation-konto

Du kan inaktivera en systemtilldelad hanterad identitet i Azure Automation med hjälp av Azure-portalen eller med hjälp av REST API.

Inaktivera med Azure-portalen

Du kan inaktivera den systemtilldelade hanterade identiteten från Azure-portalen oavsett hur den systemtilldelade hanterade identiteten ursprungligen konfigurerades.

  1. Logga in på Azure-portalen.

  2. Gå till ditt Automation-konto och under Konto Inställningar väljer du Identitet.

  3. På fliken Systemtilldelat går du till knappen Status , väljer Av och väljer sedan Spara. När du uppmanas att bekräfta väljer du Ja.

Den systemtilldelade hanterade identiteten är inaktiverad och har inte längre åtkomst till målresursen.

Inaktivera med REST-API

Syntax- och exempelsteg finns nedan.

Begärandetext

Följande begärandetext inaktiverar den systemtilldelade hanterade identiteten och tar bort alla användartilldelade hanterade identiteter med hjälp av HTTP PATCH-metoden.

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

Om flera användartilldelade identiteter har definierats måste du ange varje användartilldelad identitet med kommaavgränsad lista för att behålla dem och endast ta bort den systemtilldelade identiteten. I exemplet nedan används HTTP PATCH-metoden.

{ 
"identity" : {
    "type": "UserAssigned",
    "userAssignedIdentities": {
        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/firstIdentity": {},
        "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroupName/providers/Microsoft.ManagedIdentity/userAssignedIdentities/secondIdentity": {}
        }
    }
}

Följande är tjänstens REST API-begärande-URI för att skicka PATCH-begäran.

PATCH https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resource-group-name/providers/Microsoft.Automation/automationAccounts/automation-account-name?api-version=2020-01-13-preview

Exempel

Utför följande steg.

  1. Kopiera och klistra in begärandetexten, beroende på vilken åtgärd du vill utföra, i en fil med namnet body_remove_sa.json. Spara filen på den lokala datorn eller på ett Azure-lagringskonto.

  2. Logga in på Azure interaktivt med cmdleten Anslut-AzAccount och följ anvisningarna.

    # 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. Ange ett lämpligt värde för variablerna och kör sedan skriptet.

    $subscriptionID = "subscriptionID"
    $resourceGroup = "resourceGroupName"
    $automationAccount = "automationAccountName"
    $file = "path\body_remove_sa.json"
    
  4. I det här exemplet används PowerShell-cmdleten Invoke-RestMethod för att skicka PATCH-begäran till ditt Automation-konto.

    # 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
    

    Beroende på vilken syntax du använde blir utdata antingen: UserAssigned eller tomma.

Nästa steg