Delen via


Synapse Analytics-werkruimte herstellen na het overdragen van een abonnement naar een andere Microsoft Entra-directory (tenant)

In dit artikel wordt beschreven hoe u de Synapse Analytics-werkruimte herstelt nadat het abonnement is overgedragen naar een andere Microsoft Entra-map. De Synapse Analytics-werkruimte is niet toegankelijk nadat een abonnement is overgedragen naar een andere Microsoft Entra-map (tenant).

Wanneer u na de verplaatsing de Synapse-studio probeert te starten, ziet u de volgende fout: 'Kan een of meer resources niet laden vanwege geen toegang, foutcode 403'.

Screenshot of Synapse Studio Error 403 after tenant migration.

Volg de stappen in dit artikel na het overdragen van een abonnement in de tenant om de Synapse Analytics-werkruimte te herstellen.

Het overdragen van een abonnement naar een andere Microsoft Entra-directory (tenant) is een complex proces dat zorgvuldig moet worden gepland en uitgevoerd. Azure Synapse Analytics vereist dat beveiligingsprinciplen (identiteiten) normaal werken. Wanneer een abonnement wordt verplaatst naar een andere tenant, worden alle principal-id's gewijzigd, worden roltoewijzingen verwijderd uit de Azure-resource en worden door het systeem toegewezen beheerde identiteiten verwijderd.

Zie Een Azure-abonnement overdragen naar een andere Microsoft Entra-directory voor meer informatie over de impact van het overdragen van een abonnement naar een andere tenant

In dit artikel worden de stappen beschreven die nodig zijn voor het herstellen van een Synapse Analytics-werkruimte na het verplaatsen van het abonnement tussen tenants.

Vereisten

  • Zie Een Azure-abonnement overdragen naar een andere Microsoft Entra-directory voor meer informatie over services of resources die worden beïnvloed door tenants verplaatsen.
  • Sla alle roltoewijzingen op voor Microsoft Entra-gebruikers, -groepen en beheerde identiteiten. Deze informatie kan worden gebruikt om de vereiste machtigingen toe te wijzen aan Azure-resources, zoals Azure Synapse Analytics en ADLS Gen2 nadat de tenant is verplaatst. Zie stap 1: Voorbereiden op de overdracht
  • Sla alle machtigingen op die nodig zijn voor Microsoft Entra-gebruikers in een toegewezen en serverloze SQL-pool. Microsoft Entra-gebruikers worden verwijderd uit de toegewezen en serverloze SQL-pools na de verplaatsing van de tenant.

Stappen voor het herstellen van de Synapse Analytics-werkruimte

Nadat u het abonnement hebt overgedragen naar een andere tenant, volgt u de onderstaande stappen om de Azure Synapse Analytics-werkruimte te herstellen.

  1. Schakel het systeem Toegewezen beheerde identiteit uit en schakel het opnieuw in. Meer informatie verderop in dit artikel.
  2. Wijs machtigingen voor Azure RBAC (op rollen gebaseerd toegangsbeheer) toe aan de vereiste Microsoft Entra-gebruikers, -groepen en beheerde identiteiten in de Synapse Analytics-werkruimte en de vereiste Azure-resources.
  3. Stel de SQL Active Directory-beheerder in.
  4. Maak Microsoft Entra-gebruikers en -groepen opnieuw op basis van de equivalente gebruikers en groepen in de nieuwe Microsoft Entra-tenant voor de toegewezen en serverloze SQL-pools.
  5. Wijs Azure RBAC toe aan Microsoft Entra-gebruikers en -groepen voor de Synapse Analytics-werkruimte. Deze stap moet de eerste stap zijn na het herstellen van de werkruimte. Zonder deze stap genereert het starten van Synapse Studio 403-berichten, omdat Microsoft Entra-gebruikers geen machtigingen hebben voor de werkruimte:
    {"error":{"code":"Unauthorized","message":"The principal '<subscriptionid>' does not    have the required Synapse RBAC permission to perform this action. Required permission:    Action: Microsoft.Synapse/workspaces/read, Scope: workspaces/tenantmove-ws-1/*."}}
    
  6. Wijs Azure RBAC-rollen toe aan Microsoft Entra-gebruikers, -groepen en -service-principals voor alle resources die worden gebruikt in de werkruimteartefacten, zoals ADLS Gen2. Zie Toegangsbeheer op basis van rollen (Azure RBAC) voor meer informatie over Azure RBAC in ADLS Gen2.
  7. Voeg Synapse RBAC-roltoewijzingen toe aan Microsoft Entra-gebruikers en -groepen. Zie Synapse RBAC-roltoewijzingen beheren in Synapse Studio voor meer informatie.
  8. Maak alle Microsoft Entra-aanmeldingen en -gebruikers opnieuw in een toegewezen en serverloze SQL-pool. Zie SQL-verificatie in Azure Synapse Analytics voor meer informatie.
  9. Maak alle door de gebruiker toegewezen beheerde identiteit opnieuw en wijs door de gebruiker toegewezen beheerde identiteit toe aan de Synapse Analytics-werkruimte. Zie Referenties in Azure Data Factory en Azure Synapse voor meer informatie.

Notitie

Zorg ervoor dat de volgende stappen pas worden uitgevoerd nadat u hebt bevestigd dat het abonnement is verplaatst naar een andere tenant.

De door het systeem toegewezen beheerde identiteit voor de Synapse Analytics-werkruimte uitschakelen en opnieuw inschakelen

In deze sectie wordt beschreven hoe u Azure CLI of Azure PowerShell gebruikt om de door het systeem toegewezen beheerde identiteit voor uw Azure Synapse Analytics-werkruimte uit te schakelen en opnieuw in te schakelen. Bekijk de volgende stappen in Azure CLI of Azure PowerShell.

$resourceGroupName="Provide the Resource group name"
$workspaceName="Provide the workspace name"
$subscriptionId="Provide the subscription Id"

$url = "https://management.azure.com/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.Synapse/workspaces/$workspaceName\?api-version=2021-06-01"

In dit volgende voorbeeld wordt door het systeem toegewezen beheerde identiteit voor de werkruimte uitgeschakeld.

az rest --method patch --headers  Content-Type=application/json   `
--url  $url `
--body '{ \"identity\":{\"type\":\"None\"}}'

Werkruimte provisioningState moet zijn geslaagd en het identiteitstype moet geen zijn nadat de voorgaande opdracht is uitgevoerd. Als u de volgende opdracht uitvoert, provisioningState wordt de waarde mogelijk weergegeven als Inrichten en duurt het enkele minuten om de status te wijzigen in Geslaagd. De waarde van het moet worden voltooid voordat de door het provisioningState systeem toegewezen beheerde identiteit voor de werkruimte opnieuw wordt ingeschakeld.

Als u de status van de werkruimte wilt ophalen om de inrichtingsstatus en het identiteitstype op te halen, gebruikt u het volgende codefragment:

az rest --method GET --uri $uri

De resulterende JSON moet vergelijkbaar zijn met:

   {
  "id": "/subscriptions/<subscriptionid>/resourceGroups/TenantMove-RG/providers/Microsoft Synapse/workspaces/tenantmove-ws",
  "identity": {
    "type": "None"
  },
  "location": "eastus",
  "name": "tenantmove-ws",
  "properties": {
    "connectivityEndpoints": {
      "dev": "https://tenantmove-ws.dev.azuresynapse.net",
      "sql": "tenantmove-ws.sql.azuresynapse.net",
      "sqlOnDemand": "tenantmove-ws-ondemand.sql.azuresynapse.net",
      "web": "https://web.azuresynapse.net?workspace=%2fsubscriptions%2<subscriptionid>b%2fresourceGroups%2fTenantMove-RG%2fproviders%2fMicrosoft.Synapse%2fworkspaces%2ftenantmove-ws"
    },
    "cspWorkspaceAdminProperties": {
      "initialWorkspaceAdminObjectId": "<object id>"
    },
    "defaultDataLakeStorage": {
      "accountUrl": "https://tenantmovedemowsstorage.dfs.core.windows.net",
      "filesystem": "demo",
      "resourceId": "/subscriptions/<subscriptionid>/resourceGroups/TenantMove-RG/providers/Microsoft.Storage/storageAccounts/tenantmovedemowsstorage"
    },
    "encryption": {
      "doubleEncryptionEnabled": false
    },
    "extraProperties": {
      "WorkspaceType": "Normal"
    },
    "managedResourceGroupName": "tenantmove-ws-managed-rg",
    "privateEndpointConnections": [],
    "provisioningState": "Succeeded",
    "publicNetworkAccess": "Enabled",
    "sqlAdministratorLogin": "sqladminuser",
    "trustedServiceBypassEnabled": false,
    "workspaceUID": "<workspace UID>"
  },
  "resourceGroup": "TenantMove-RG",
  "tags": {},
  "type": "Microsoft.Synapse/workspaces"
}

Met de volgende opdracht wordt de door het systeem toegewezen beheerde identiteit voor de werkruimte opnieuw ingeschakeld:

az rest --method patch --headers  Content-Type=application/json   `
--url  $url `
--body '{ \"identity\":{\"type\":\"SystemAssigned\"}}'

Met de volgende opdracht krijgt u de werkruimtestatus. De provisioningState waarde moet zijn geslaagd. De provisioningState waarde wordt gewijzigd van Inrichten in Geslaagd. Het identiteitstype wordt gewijzigd in SystemAssigned.

az rest --method GET --uri $uri

Volgende stappen