Aboneliği farklı bir Microsoft Entra dizinine (kiracı) aktardıktan sonra Synapse Analytics çalışma alanını kurtarma

Bu makalede, aboneliğini farklı bir Microsoft Entra dizinine aktardıktan sonra Synapse Analytics çalışma alanının nasıl kurtarıldığı açıklanır. Synapse Analytics çalışma alanına, aboneliği farklı bir Microsoft Entra dizinine (kiracı) aktardıktan sonra erişilemez.

Taşıma sonrasında Synapse studio'yu başlatmayı denediğinizde şu hatayı görürsünüz: "Erişim olmadığından bir veya daha fazla kaynak yüklenemedi, hata kodu 403."

Screenshot of Synapse Studio Error 403 after tenant migration.

Synapse Analytics çalışma alanını kurtarmak için bir aboneliği kiracıya aktardıktan sonra bu makaledeki adımları izleyin.

Aboneliği farklı bir Microsoft Entra dizinine (kiracı) aktarmak, dikkatle planlanması ve yürütülmesi gereken karmaşık bir işlemdir. Azure Synapse Analytics için güvenlik sorumlularının (kimlikler) normal şekilde çalışması gerekir. Abonelik farklı bir kiracıya taşındığında tüm asıl kimlikler değişir, rol atamaları Azure kaynağından silinir ve sistem tarafından atanan yönetilen kimlikler bırakılır.

Aboneliği başka bir kiracıya aktarmanın etkisini anlamak için bkz. Azure aboneliğini farklı bir Microsoft Entra dizinine aktarma

Bu makalede, aboneliği kiracılar arasında taşıdıktan sonra Synapse Analytics çalışma alanını kurtarma adımları ele alınır.

Önkoşullar

  • Kiracı taşımanın etkilediği hizmet veya kaynaklar hakkında daha fazla bilgi edinmek için bkz . Azure aboneliğini farklı bir Microsoft Entra dizinine aktarma.
  • Microsoft Entra kullanıcıları, grupları ve yönetilen kimlikler için tüm rol atamalarını kaydedin. Bu bilgiler, kiracı taşındıktan sonra Azure Synapse Analytics ve ADLS 2. Nesil gibi Azure kaynaklarına gerekli izinleri atamak için kullanılabilir. Bkz . 1. Adım: Aktarıma hazırlanma
  • Microsoft Entra kullanıcıları için gerekli tüm izinleri ayrılmış ve sunucusuz SQL havuzuna kaydedin. Microsoft Entra kullanıcıları, kiracı taşındıktan sonra ayrılmış ve sunucusuz SQL havuzlarından silinir.

Synapse Analytics çalışma alanını kurtarma adımları

Aboneliği başka bir kiracıya aktardıktan sonra Azure Synapse Analytics çalışma alanını kurtarmak için aşağıdaki adımları izleyin.

  1. Sistem Atanan Yönetilen Kimliğini devre dışı bırakın ve yeniden etkinleştirin. Bu makalenin devamında daha fazla bilgi bulabilirsiniz.
  2. Synapse Analytics çalışma alanında ve gerekli Azure kaynaklarında gerekli Microsoft Entra kullanıcılarına, gruplarına ve yönetilen kimliklerine Azure RBAC (rol tabanlı erişim denetimi) izinleri atayın.
  3. SQL Active Directory yöneticisini ayarlayın.
  4. Ayrılmış ve sunucusuz SQL havuzları için yeni Microsoft Entra kiracısında eşdeğer kullanıcılarını ve gruplarını temel alarak Microsoft Entra kullanıcılarını ve gruplarını yeniden oluşturun.
  5. Microsoft Entra kullanıcılarına Azure RBAC, Synapse Analytics çalışma alanına gruplar atayın. Bu adım, çalışma alanı kurtarıldıktan sonraki ilk adım olmalıdır. Bu adım olmadan, Microsoft Entra kullanıcılarının çalışma alanında izinlere sahip olmaması nedeniyle Synapse Studio'yu başlatmak 403 ileti atar:
    {"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. AdLS 2. Nesil gibi çalışma alanı yapıtlarında kullanılan tüm kaynaklara Microsoft Entra kullanıcılarına, gruplarına, hizmet sorumlularına Azure RBAC rolleri atayın. ADLS 2. Nesil'de Azure RBAC hakkında daha fazla bilgi için bkz. Rol tabanlı erişim denetimi (Azure RBAC).
  7. Microsoft Entra kullanıcılarına ve gruplarına Synapse RBAC rol atamaları ekleyin. Daha fazla bilgi için bkz. Synapse Studio'da Synapse RBAC rol atamalarını yönetme
  8. Ayrılmış ve sunucusuz SQL havuzunda tüm Microsoft Entra oturum açma bilgilerini ve kullanıcılarını yeniden oluşturun. Daha fazla bilgi için bkz. Azure Synapse Analytics'te SQL Kimlik Doğrulaması
  9. Kullanıcı tarafından atanan tüm yönetilen kimliği yeniden oluşturun ve Kullanıcı tarafından atanan yönetilen kimliği Synapse Analytics çalışma alanına atayın. Daha fazla bilgi için bkz. Azure Data Factory ve Azure Synapse'te kimlik bilgileri

Dekont

Aşağıdaki adımların yalnızca aboneliğin başarıyla başka bir kiracıya taşındığını onayladıktan sonra yürütüldiğinden emin olun.

Synapse Analytics çalışma alanı için sistem tarafından atanan yönetilen kimliği devre dışı bırakma ve yeniden etkinleştirme

Bu bölümde, Azure Synapse Analytics çalışma alanınız için Sistem tarafından atanan Yönetilen Kimliği devre dışı bırakmak ve yeniden etkinleştirmek için Azure CLI veya Azure PowerShell'in nasıl kullanılacağı gösterilmektedir. Azure CLI veya Azure PowerShell'de aşağıdaki adımları göz önünde bulundurun.

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

Bu sonraki örnek, çalışma alanı için Sistem Tarafından Atanan Yönetilen Kimlik'i devre dışı bırakır.

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

Çalışma alanı provisioningState Başarılı olmalı ve önceki komut yürütüldükten sonra kimlik türü Yok olmalıdır. Aşağıdaki komutu yürütürseniz değer provisioningState Sağlama olarak gösterilebilir ve durumu Başarılı olarak değiştirmek birkaç dakika sürebilir. provisioningState Çalışma alanı için Sistem Tarafından Atanan Yönetilen Kimliği yeniden etkinleştirmeden önce değerinin Başarılı olması gerekir.

Sağlama durumunu ve kimlik türünü almak üzere çalışma alanının durumunu almak için aşağıdaki kod parçacığını kullanın:

az rest --method GET --uri $uri

Elde edilen JSON aşağıdakine benzer olmalıdır:

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

Sonraki komut, çalışma alanı için Sistem Tarafından Atanan Yönetilen Kimliği yeniden etkinleştirir:

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

Sonraki komut çalışma alanı durumunu alır. provisioningState Değer Başarılı olmalıdır. Değer provisioningState Sağlama yerine Başarılı olarak değişir. Kimlik türü SystemAssigned olarak değiştirilir.

az rest --method GET --uri $uri

Sonraki adımlar