Felügyelt identitás az Azure Data Factoryhez

A következőkre vonatkozik: Azure Data Factory Azure Synapse Analytics

Tipp.

Próbálja ki a Data Factoryt a Microsoft Fabricben, amely egy teljes körű elemzési megoldás a nagyvállalatok számára. A Microsoft Fabric az adattovábbítástól az adatelemzésig, a valós idejű elemzésig, az üzleti intelligenciáig és a jelentéskészítésig mindent lefed. Ismerje meg, hogyan indíthat új próbaverziót ingyenesen!

Ez a cikk segít megérteni a felügyelt identitást (korábbi nevén Felügyeltszolgáltatás-identitás/MSI) és az Azure Data Factory működését.

Megjegyzés:

We recommend that you use the Azure Az PowerShell module to interact with Azure. See Install Azure PowerShell to get started. To learn how to migrate to the Az PowerShell module, see Migrate Azure PowerShell from AzureRM to Az.

Áttekintés

Managed identities eliminate the need to manage credentials. A felügyelt identitások biztosítják az identitást a szolgáltatáspéldánynak, amikor olyan erőforrásokhoz csatlakozik, amely támogatja a Microsoft Entra-hitelesítést. For example, the service can use a managed identity to access resources like Azure Key Vault, where data admins can securely store credentials or access storage accounts. A szolgáltatás felügyelt identitást használ a Microsoft Entra-tokenek lekéréséhez.

There are two types of supported managed identities:

  • System-assigned: You can enable a managed identity directly on a service instance. Ha engedélyezi a rendszer által hozzárendelt felügyelt identitást a szolgáltatás létrehozása során, a Microsoft Entra létrehoz egy identitást, amely az adott szolgáltatáspéldány életciklusához van társítva. A rendszer működése alapján csak az adott Azure-erőforrás használhatja ezt az identitást ahhoz, hogy tokeneket kérjen le a Microsoft Entra ID-ből. So when the resource is deleted, Azure automatically deletes the identity for you.
  • User-assigned: You may also create a managed identity as a standalone Azure resource. Létrehozhat egy felhasználó által hozzárendelt felügyelt identitást, és hozzárendelheti egy adat-előállító egy vagy több példányához. In user-assigned managed identities, the identity is managed separately from the resources that use it.

Managed identity provides the below benefits:

  • Store credential in Azure Key Vault, in which case-managed identity is used for Azure Key Vault authentication.
  • Access data stores or computes using managed identity authentication, including Azure Blob storage, Azure Data Explorer, Azure Data Lake Storage Gen1, Azure Data Lake Storage Gen2, Azure SQL Database, Azure SQL Managed Instance, Azure Synapse Analytics, REST, Databricks activity, Web activity, and more. Check the connector and activity articles for details.
  • Managed identity is also used to encrypt/decrypt data and metadata using the customer-managed key stored in Azure Key Vault, providing double encryption.

Rendszer által hozzárendelt felügyelt identitás

Megjegyzés:

A rendszer által hozzárendelt felügyelt identitást máshol "felügyelt identitásnak" is nevezik a dokumentációban és a Data Factory Studióban a visszamenőleges kompatibilitás érdekében. Kifejezetten megemlítjük a "felhasználó által hozzárendelt felügyelt identitást" a hivatkozáskor.

Rendszer által hozzárendelt felügyelt identitás létrehozása

A rendszer által hozzárendelt felügyelt identitás a következőképpen jön létre:

  • Amikor az Azure Portalon vagy a PowerShellen keresztül hoz létre adat-előállítót, a felügyelt identitás mindig automatikusan létrejön.
  • Adat-előállító SDK-n keresztül történő létrehozásakor a felügyelt identitás csak akkor jön létre, ha az "Identity = new FactoryIdentity()" értéket adja meg a gyári objektumban létrehozásra." Lásd a .NET gyorsútmutató – Adat-előállító létrehozása című témakört.
  • Amikor REST API-val hoz létre adat-előállítót, a felügyelt identitás csak akkor jön létre, ha megadja az "identitás" szakaszt a kérelem törzsében. Tekintse meg a példát a REST rövid útmutatójában – data factory létrehozása.

Ha úgy találja, hogy a szolgáltatáspéldány nem rendelkezik felügyelt identitással a felügyelt identitás lekérése után, explicit módon létrehozhat egyet úgy, hogy programozott módon frissíti az identitás kezdeményezőjével:

Megjegyzés:

  • A felügyelt identitás nem módosítható. A már felügyelt identitással rendelkező szolgáltatáspéldány frissítése nem lesz hatással, és a felügyelt identitás változatlan marad.
  • Ha olyan szolgáltatáspéldányt frissít, amely már rendelkezik felügyelt identitással anélkül, hogy a gyári objektumokban megadja az "identity" paramétert, vagy nem adja meg az "identitás" szakaszt a REST-kérelem törzsében, hibaüzenet jelenik meg.
  • Szolgáltatáspéldány törlésekor a társított felügyelt identitás is törlődik.

Rendszer által hozzárendelt felügyelt identitás létrehozása a PowerShell használatával

Hívja meg a Set-AzDataFactoryV2 parancsot, majd láthatja, hogy az újonnan létrehozott "Identity" mezők:

PS C:\> Set-AzDataFactoryV2 -ResourceGroupName <resourceGroupName> -Name <dataFactoryName> -Location <region>

DataFactoryName   : ADFV2DemoFactory
DataFactoryId     : /subscriptions/<subsID>/resourceGroups/<resourceGroupName>/providers/Microsoft.DataFactory/factories/ADFV2DemoFactory
ResourceGroupName : <resourceGroupName>
Location          : East US
Tags              : {}
Identity          : Microsoft.Azure.Management.DataFactory.Models.FactoryIdentity
ProvisioningState : Succeeded

Rendszer által hozzárendelt felügyelt identitás létrehozása a REST API használatával

Megjegyzés:

Ha olyan szolgáltatáspéldányt próbál frissíteni, amely már rendelkezik felügyelt identitással anélkül, hogy megadja az identitásparamétert a gyári objektumban, vagy megad egy identitásszakaszt a REST-kérelem törzsében, hibaüzenet jelenik meg.

Hívja meg az alábbi API-t a kérelem törzsének "identity" szakaszával:

PATCH https://management.azure.com/subscriptions/<subsID>/resourceGroups/<resourceGroupName>/providers/Microsoft.DataFactory/factories/<data factory name>?api-version=2018-06-01

Kérelem törzse: add "identity": { "type": "SystemAssigned" }.

{
    "name": "<dataFactoryName>",
    "location": "<region>",
    "properties": {},
    "identity": {
        "type": "SystemAssigned"
    }
}

Válasz: a rendszer automatikusan létrehozza a felügyelt identitást, és ennek megfelelően kitölti az "identitás" szakaszt.

{
    "name": "<dataFactoryName>",
    "tags": {},
    "properties": {
        "provisioningState": "Succeeded",
        "loggingStorageAccountKey": "**********",
        "createTime": "2017-09-26T04:10:01.1135678Z",
        "version": "2018-06-01"
    },
    "identity": {
        "type": "SystemAssigned",
        "principalId": "765ad4ab-XXXX-XXXX-XXXX-51ed985819dc",
        "tenantId": "72f988bf-XXXX-XXXX-XXXX-2d7cd011db47"
    },
    "id": "/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.DataFactory/factories/<dataFactoryName>",
    "type": "Microsoft.DataFactory/factories",
    "location": "<region>"
}

Rendszer által hozzárendelt felügyelt identitás létrehozása Azure Resource Manager-sablonnal

Sablon: add "identity": { "type": "SystemAssigned" }.

{
    "contentVersion": "1.0.0.0",
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "resources": [{
        "name": "<dataFactoryName>",
        "apiVersion": "2018-06-01",
        "type": "Microsoft.DataFactory/factories",
        "location": "<region>",
        "identity": {
            "type": "SystemAssigned"
        }
    }]
}

Rendszer által hozzárendelt felügyelt identitás létrehozása az SDK használatával

Hívja meg a create_or_update függvényt az Identity=new FactoryIdentity() használatával. Mintakód a .NET használatával:

Factory dataFactory = new Factory
{
    Location = <region>,
    Identity = new FactoryIdentity()
};
client.Factories.CreateOrUpdate(resourceGroup, dataFactoryName, dataFactory);

Rendszer által hozzárendelt felügyelt identitás lekérése

A felügyelt identitást lekérheti az Azure Portalról vagy programozott módon. A következő szakaszok néhány mintát mutatnak.

Tipp.

Ha nem látja a felügyelt identitást, hozzon létre felügyelt identitást a szolgáltatáspéldány frissítésével.

Rendszer által hozzárendelt felügyelt identitás lekérése az Azure Portal használatával

A felügyelt identitásadatok az Azure Portalon – az adat-előállítóban –>> a tulajdonságok között találhatók.

Shows the Azure portal with the system-managed identity object ID and Identity Tenant for an Azure Data Factory.

  • Felügyelt identitásobjektum azonosítója
  • Felügyelt identitás bérlője

A felügyelt identitásadatok a felügyelt identitáshitelesítést támogató társított szolgáltatás létrehozásakor is megjelennek, például az Azure Blob, az Azure Data Lake Storage, az Azure Key Vault stb.

Az engedélyek megadásához kövesse az alábbi lépéseket. A részletes lépésekért tekintse meg az Azure-szerepköröknek az Azure Portalon történő hozzárendelését ismertető cikket.

  1. Select Access control (IAM).

  2. Select Add>Add role assignment.

    Screenshot that shows Access control (IAM) page with Add role assignment menu open.

  3. A Tagok lapon válassza a Felügyelt identitás, majd a Tagok kijelölése lehetőséget.

  4. Válassza ki az Azure-előfizetését.

  5. A Rendszer által hozzárendelt felügyelt identitás területen válassza a Data Factory lehetőséget, majd válasszon ki egy adat-előállítót. Ezt az identitást az objektumazonosító vagy a data factory neve (felügyelt identitás neve) is használhatja. A felügyelt identitás alkalmazásazonosítójának lekéréséhez használja a PowerShellt.

  6. A szerepkör hozzárendeléséhez a Felülvizsgálat + hozzárendelés lapon válassza a Felülvizsgálat + hozzárendelés lehetőséget.

Rendszer által hozzárendelt felügyelt identitás lekérése a PowerShell használatával

A rendszer visszaadja a felügyelt identitás egyszerű azonosítóját és bérlőazonosítóját, amikor egy adott szolgáltatáspéldányt kap az alábbiak szerint. Hozzáférés biztosítása a PrincipalId használatával:

PS C:\> (Get-AzDataFactoryV2 -ResourceGroupName <resourceGroupName> -Name <dataFactoryName>).Identity

PrincipalId                          TenantId
-----------                          --------
765ad4ab-XXXX-XXXX-XXXX-51ed985819dc 72f988bf-XXXX-XXXX-XXXX-2d7cd011db47

Az alkalmazásazonosítót az egyszerű azonosító fölé másolva, majd a Microsoft Entra ID parancs alatt futtatva szerezheti be paraméterként az egyszerű azonosítót.

PS C:\> Get-AzADServicePrincipal -ObjectId 765ad4ab-XXXX-XXXX-XXXX-51ed985819dc

ServicePrincipalNames : {76f668b3-XXXX-XXXX-XXXX-1b3348c75e02, https://identity.azure.net/P86P8g6nt1QxfPJx22om8MOooMf/Ag0Qf/nnREppHkU=}
ApplicationId         : 76f668b3-XXXX-XXXX-XXXX-1b3348c75e02
DisplayName           : ADFV2DemoFactory
Id                    : 765ad4ab-XXXX-XXXX-XXXX-51ed985819dc
Type                  : ServicePrincipal

Felügyelt identitás lekérése REST API használatával

A rendszer visszaadja a felügyelt identitás egyszerű azonosítóját és bérlőazonosítóját, amikor egy adott szolgáltatáspéldányt kap az alábbiak szerint.

Az alábbi API meghívása a kérelemben:

GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.DataFactory/factories/{factoryName}?api-version=2018-06-01

Válasz: A válasz az alábbi példában látható módon jelenik meg. Az "identitás" szakasz ennek megfelelően van kitöltve.

{
    "name":"<dataFactoryName>",
    "identity":{
        "type":"SystemAssigned",
        "principalId":"554cff9e-XXXX-XXXX-XXXX-90c7d9ff2ead",
        "tenantId":"72f988bf-XXXX-XXXX-XXXX-2d7cd011db47"
    },
    "id":"/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.DataFactory/factories/<dataFactoryName>",
    "type":"Microsoft.DataFactory/factories",
    "properties":{
        "provisioningState":"Succeeded",
        "createTime":"2020-02-12T02:22:50.2384387Z",
        "version":"2018-06-01",
        "factoryStatistics":{
            "totalResourceCount":0,
            "maxAllowedResourceCount":0,
            "factorySizeInGbUnits":0,
            "maxAllowedFactorySizeInGbUnits":0
        }
    },
    "eTag":"\"03006b40-XXXX-XXXX-XXXX-5e43617a0000\"",
    "location":"<region>",
    "tags":{

    }
}

Tipp.

A felügyelt identitás ARM-sablonból való lekéréséhez adjon hozzá egy kimeneti szakaszt az ARM JSON-ban:

{
    "outputs":{
        "managedIdentityObjectId":{
            "type":"string",
            "value":"[reference(resourceId('Microsoft.DataFactory/factories', parameters('<dataFactoryName>')), '2018-06-01', 'Full').identity.principalId]"
        }
    }
}

Felhasználó által hozzárendelt felügyelt identitás

A Microsoft Entra ID-ban létrehozhat, törölhet, kezelhet felhasználó által hozzárendelt felügyelt identitásokat. További részletekért lásd: Szerepkör létrehozása, listázása, törlése vagy hozzárendelése egy felhasználó által hozzárendelt felügyelt identitáshoz az Azure Portal használatával.

A felhasználó által hozzárendelt felügyelt identitás használatához először létre kell hoznia hitelesítő adatokat a UAMI szolgáltatáspéldányában.

Tekintse meg a következő témaköröket, amelyek bemutatják, hogy mikor és hogyan használható a felügyelt identitás:

Tekintse meg az Azure-erőforrások felügyelt identitásainak áttekintését az Azure-erőforrások felügyelt identitásainak hátteréről, amelyeken az Azure Data Factory felügyelt identitása alapul.

Lásd a felügyelt identitások korlátozásait , amelyek az Azure Data Factory felügyelt identitásaira is vonatkoznak.