Felügyelt identitás Azure Data Factory és Azure Synapse

A KÖVETKEZŐKRE VONATKOZIK: Azure Data Factory Azure Synapse Analytics

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

Megjegyzés

Ez a cikk az Azure Az PowerShell-modult használja, amely az Azure-ral való interakcióhoz ajánlott PowerShell-modul. Az Az PowerShell-modul használatának megkezdéséhez lásd az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.

Áttekintés

A felügyelt identitások nem igénylik a hitelesítő adatok kezelését. A felügyelt identitások identitást biztosítanak a szolgáltatáspéldány számára, amikor Azure Active Directory (Azure AD) hitelesítést támogató erőforrásokhoz csatlakoznak. A szolgáltatás például felügyelt identitással férhet hozzá az olyan erőforrásokhoz, mint az Azure Key Vault, ahol az adatadminisztrátor biztonságosan tárolhatja a hitelesítő adatokat, vagy hozzáférhet a tárfiókokhoz. A szolgáltatás a felügyelt identitással szerzi be az Azure AD-jogkivonatokat.

A támogatott felügyelt identitások kétféleképpen használhatók:

  • Rendszer által hozzárendelt: A felügyelt identitásokat közvetlenül egy szolgáltatáspéldányon engedélyezheti. Ha a szolgáltatás létrehozása során engedélyezi a rendszer által hozzárendelt felügyelt identitást, a szolgáltatáspéldány életciklusához kapcsolódó identitás jön létre az Azure AD-ben. Terv szerint csak az Azure-erőforrás használhatja ezt az identitást tokenek lekéréséhez az Azure AD-ből. Így az erőforrás törlésekor az Azure automatikusan törli az Identitást. Azure Synapse Analytics megköveteli, hogy a Synapse-munkaterülettel együtt létre kell hozni egy rendszer által hozzárendelt felügyelt identitást.
  • Felhasználó által hozzárendelt: A felügyelt identitásokat önálló Azure-erőforrásként is létrehozhatja. Létrehozhat egy felhasználó által hozzárendelt felügyelt identitást, és hozzárendelheti egy adat-előállító vagy Synapse-munkaterület egy vagy több példányához. A felhasználó által hozzárendelt felügyelt identitásokban az identitást az azt használó erőforrásoktól elkülönítve kezeli a rendszer.

A felügyelt identitás az alábbi előnyöket nyújtja:

  • Tárolja a hitelesítő adatokat az Azure Key Vault, amely esetben felügyelt identitást használ az Azure Key Vault hitelesítéshez.
  • Felügyelt identitásalapú hitelesítéssel rendelkező adattárak vagy számítások elérése, beleértve az Azure Blob Storage,az 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-tevékenység, webes tevékenység stb. A részletekért tekintse meg az összekötőt és a tevékenységekkel foglalkozó cikkeket.
  • A felügyelt identitás az Adatok és metaadatok titkosítására/visszafejtésére is használható az Azure Key Vault-ben tárolt, ügyfél által felügyelt kulccsal, dupla titkosítást biztosítva.

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, a Data Factory Studióban és Synapse Studio felhasználói felületén 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 adat-előállítót vagy Synapse-munkaterületet hoz létre Azure Portal vagy PowerShell használatával, a felügyelt identitás mindig automatikusan létrejön.
  • Amikor adat-előállítót vagy munkaterületet hoz létre az SDK-n keresztül, a felügyelt identitás csak akkor jön létre, ha az "Identity = new FactoryIdentity()" értéket adja meg a gyári objektumban, vagy identitás = új ManagedIdentity értéket a Synapse-munkaterület objektumában létrehozásra." Lásd a példát a .NET rövid útmutatójában – Adat-előállító létrehozása.
  • Adat-előállító vagy Synapse-munkaterület REST API-val történő létrehozásakor 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 – adat-előállító létrehozása.

Ha úgy találja, hogy a szolgáltatáspéldányhoz nincs hozzárendelve felügyelt identitás a felügyelt identitás lekérése után, explicit módon létrehozhat egyet az identitás kezdeményezőjével való programozott frissítéssel:

Megjegyzés

  • A felügyelt identitás nem módosítható. A már felügyelt identitással rendelkező szolgáltatáspéldányok frissítése nem lesz hatással, és a felügyelt identitás változatlan marad.
  • Ha frissít egy olyan szolgáltatáspéldányt, amely már rendelkezik felügyelt identitással anélkül, hogy meg kell adnia az "identity" paramétert a gyári vagy munkaterületi objektumokban, vagy nem adja meg az "identitás" szakaszt a REST-kérelem törzsében, hibaüzenet jelenik meg.
  • Amikor töröl egy szolgáltatáspéldányt, 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 megjelenik 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 kísérel meg 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érés 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 felügyelt identitás automatikusan létrejön, az "identitás" szakasz pedig ennek megfelelően lesz kitöltve.

{
    "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-sablon használatával

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() függvénnyel. 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 Azure Portal vagy programozott módon is lekérheti. Az alábbi szakaszok néhány mintát mutatnak be.

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 Azure Portal használatával

A felügyelt identitás adatait a Azure Portal –> az adat-előállító vagy a Synapse-munkaterület –> tulajdonságai között találja.

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

  • Felügyelt identitás objektumazonosítója
  • Felügyelt identitás bérlője (csak Azure Data Factory)

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

Engedélyek megadásához kövesse az alábbi lépéseket. Részletes lépésekért lásd: Azure-szerepkörök hozzárendelése a Azure Portal használatával.

  1. Válassza a Hozzáférés-vezérlés (IAM) lehetőséget.

  2. Válassza a Hozzáadás>Szerepkör-hozzárendelés hozzáadása lehetőséget.

    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 kiválasztása lehetőséget.

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

  5. A Rendszer által hozzárendelt felügyelt identitás területen válassza a Data Factoryt, majd válasszon ki egy adat-előállítót. Ezt az identitást az objektumazonosító vagy az adat-előállító 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 Véleményezés + hozzárendelés lapon válassza a Véleményezés + hozzárendelés lehetőséget a szerepkör hozzárendeléséhez.

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ó lekéréséhez másolja a fenti egyszerű azonosítót, majd futtassa az alábbi Azure Active Directory parancsot paraméterként az egyszerű azonosítóval.

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 a 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.

Hívja meg az alábbi API-t a kérelemben:

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

Válasz: Az alábbi példában látható módon kap választ. 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 felhasználó által hozzárendelt felügyelt identitások Azure Active Directory hozhatók létre, törölhetők és kezelhetők. További információ: Szerepkör létrehozása, listázása, törlése vagy hozzárendelése felhasználó által hozzárendelt felügyelt identitáshoz a Azure Portal használatával.

Felhasználó által hozzárendelt felügyelt identitás használatához először létre kell hoznia a hitelesítő adatokat a szolgáltatáspéldányban az UAMI számára.

Következő lépések

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 áttekintésében, amelyeken Azure Data Factory és Azure Synapse felügyelt identitása alapul.