Door het systeem toegewezen beheerde identiteit uitschakelen voor een Azure Automation-account

U kunt een door het systeem toegewezen beheerde identiteit in Azure Automation uitschakelen met behulp van Azure Portal of rest API.

Uitschakelen met behulp van Azure Portal

U kunt de door het systeem toegewezen beheerde identiteit uitschakelen vanuit Azure Portal, ongeacht hoe de door het systeem toegewezen beheerde identiteit oorspronkelijk is ingesteld.

  1. Meld u aan bij de Azure-portal.

  2. Navigeer naar uw Automation-account en selecteer Identiteit onder Account Instellingen.

  3. Selecteer op het tabblad Toegewezen systeem onder de knop Status de optie Uit en selecteer Vervolgens Opslaan. Wanneer u wordt gevraagd om te bevestigen, selecteert u Ja.

De door het systeem toegewezen beheerde identiteit is uitgeschakeld en heeft geen toegang meer tot de doelresource.

Uitschakelen met behulp van REST API

Hieronder ziet u de syntaxis en voorbeeldstappen.

Aanvraagtekst

Met de volgende aanvraagbody wordt de door het systeem toegewezen beheerde identiteit uitgeschakeld en worden alle door de gebruiker toegewezen beheerde identiteiten verwijderd met behulp van de HTTP PATCH-methode .

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

Als er meerdere door de gebruiker toegewezen identiteiten zijn gedefinieerd om deze te behouden en alleen de door het systeem toegewezen identiteit te verwijderen, moet u elke door de gebruiker toegewezen identiteit opgeven met behulp van een door komma's gescheiden lijst. In het onderstaande voorbeeld wordt de HTTP PATCH-methode gebruikt.

{ 
"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": {}
        }
    }
}

Hier volgt de REST API-aanvraag-URI van de service om de PATCH-aanvraag te verzenden.

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

voorbeeld

Voer de volgende stappen uit.

  1. Kopieer en plak de hoofdtekst van de aanvraag, afhankelijk van de bewerking die u wilt uitvoeren, in een bestand met de naam body_remove_sa.json. Sla het bestand op uw lokale computer of in een Azure-opslagaccount op.

  2. Meld u interactief aan bij Azure met behulp van de cmdlet Verbinding maken-AzAccount en volg de instructies.

    # 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. Geef een geschikte waarde op voor de variabelen en voer vervolgens het script uit.

    $subscriptionID = "subscriptionID"
    $resourceGroup = "resourceGroupName"
    $automationAccount = "automationAccountName"
    $file = "path\body_remove_sa.json"
    
  4. In dit voorbeeld wordt de PowerShell-cmdlet Invoke-RestMethod gebruikt om de PATCH-aanvraag naar uw Automation-account te verzenden.

    # 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
    

    Afhankelijk van de syntaxis die u hebt gebruikt, is de uitvoer: UserAssigned of leeg.

Volgende stappen