Condividi tramite


Crittografare le credenziali per gli archivi dati locali in Azure Data Factory

APPLICABILE A: Azure Data Factory Azure Synapse Analytics

Suggerimento

Data Factory in Microsoft Fabric è la nuova generazione di Azure Data Factory, con un'architettura più semplice, un'intelligenza artificiale predefinita e nuove funzionalità. Se non si ha familiarità con l'integrazione dei dati, iniziare con Fabric Data Factory. I carichi di lavoro di Azure Data Factory esistenti possono eseguire l'aggiornamento a Fabric per accedere a nuove funzionalità tra data science, analisi in tempo reale e creazione di report.

È possibile crittografare e archiviare le credenziali per qualsiasi archivio dati locale (servizi collegati con informazioni riservate) in un computer con runtime di integrazione self-hosted.

Nota

È consigliabile usare il modulo Az PowerShell Azure per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo Az PowerShell, vedere Migrate Azure PowerShell da AzureRM ad Az.

Si passa un file di definizione JSON con le credenziali al
Cmdlet New-AzDataFactoryV2LinkedServiceEncryptedCredential per produrre un file di definizione JSON di output con le credenziali crittografate. Quindi, è possibile utilizzare la definizione JSON aggiornata per creare i servizi collegati.

Creare un servizio collegato con credenziali crittografate

Questo esempio illustra come creare un servizio collegato a un'origine dati SQL Server locale con credenziali crittografate.

Creare la descrizione del file JSON del servizio collegato iniziale

Creare un file JSON denominato SqlServerLinkedService.json con il contenuto seguente:

Sostituire <servername>, <databasename>, <username> e <password> con i valori per il SQL Server prima di salvare il file. Inoltre, sostituire <integration runtime name> con il nome del runtime di integrazione.

{
    "properties": {
        "type": "SqlServer",
        "typeProperties": {
            "connectionString": "Server=<servername>;Database=<databasename>;User ID=<username>;Password=<password>;Timeout=60"
        },
        "connectVia": {
            "type": "integrationRuntimeReference",
            "referenceName": "<integration runtime name>"
        },
        "name": "SqlServerLinkedService"
    }
}

Crittografare le credenziali

Per crittografare i dati sensibili dal payload JSON in un runtime di integrazione self-hosted locale, eseguire New-AzDataFactoryV2LinkedServiceEncryptedCredential e passare il payload JSON. Questo cmdlet assicura che le credenziali vengano crittografate utilizzando DPAPI e archiviate nel nodo del runtime di integrazione self-hosted in locale. Il payload di output contenente il riferimento crittografato alle credenziali può essere reindirizzato a un altro file JSON (in questo caso "encryptedLinkedService.json").

Assicurarsi che siano soddisfatti i prerequisiti seguenti:

  • L'opzione accesso remoto è abilitata nel runtime di integrazione self-hosted.
  • PowerShell 7.0 o versione successiva viene usato per eseguire il cmdlet .
New-AzDataFactoryV2LinkedServiceEncryptedCredential -DataFactoryName $dataFactoryName -ResourceGroupName $ResourceGroupName -IntegrationRuntimeName 'test-selfhost-ir' -DefinitionFile ".\SQLServerLinkedService.json" > encryptedSQLServerLinkedService.json

Usare JSON con credenziali crittografate

A questo punto, utilizzare il file JSON di output del comando precedente contenente le credenziali crittografate per impostare il SqlServerLinkedService.

Set-AzDataFactoryV2LinkedService -DataFactoryName $dataFactoryName -ResourceGroupName $ResourceGroupName -Name "EncryptedSqlServerLinkedService" -DefinitionFile ".\encryptedSqlServerLinkedService.json"

Per informazioni sulle considerazioni relative alla sicurezza per lo spostamento dei dati, vedere Considerazioni relative alla sicurezza per lo spostamento dei dati.