Usare identità gestite per Azure con Azure Data Lake Storage

Azure Data Lake Storage fornisce un modello di sicurezza a più livelli. Questo modello ti consente di proteggere e controllare il livello di accesso agli account di archiviazione richiesti dalle applicazioni e dagli ambienti aziendali, in base al tipo e al sottoinsieme di reti o risorse usate. Quando vengono configurate le regole di rete, solo le applicazioni che richiedono dati tramite il set di reti specificato o tramite il set di risorse di Azure specificato possono accedere a un account di archiviazione. Puoi limitare l'accesso all'account di archiviazione alle richieste provenienti da indirizzi IP, intervalli IP, subnet specificati in una rete virtuale di Azure (VNet) o in istanze di risorse di alcuni servizi di Azure.

Le identità gestite per Azure, in precedenza note come identità del servizio gestita (MSI), consentono di gestire i segreti. I clienti di Microsoft Dataverse che usano le funzionalità di Azure creano un'identità gestita (nell'ambito della creazione di criteri aziendali) che può essere usata per uno o più ambienti Dataverse. Questa identità gestita, che sarà fornita nel tuo tenant, viene quindi utilizzata da Dataverse per accedere al data lake di Azure.

Con le identità gestite, l'accesso all'account di archiviazione è limitato alle richieste provenienti dall'ambiente Dataverse associato al tuo tenant. Quando Dataverse si connette all'archiviazione per tuo conto, include informazioni di contesto aggiuntive per dimostrare che la richiesta proviene da un ambiente sicuro e affidabile. Questo permette all'archiviazione di concedere l'accesso a Dataverse al tuo account di archiviazione. Le identità gestite vengono utilizzate per firmare le informazioni di contesto al fine di stabilire l'attendibilità. In questo modo, si aggiunge sicurezza a livello di applicazione oltre alla sicurezza di rete e infrastruttura fornita da Azure per le connessioni tra servizi di Azure.

Prima di iniziare

  • È richiesta interfaccia della riga di comando di Azure sul computer locale. Scaricare e installare
  • Sono necessari i moduli di PowerShell seguenti. Se non li hai, apri PowerShell ed esegui questi comandi:
    • Modulo Azure PowerShell: Install-Module -Name Az
    • Il modulo PowerShell di Azure Az.Resources: Install-Module -Name Az.Resources
    • Modulo PowerShell per amministratore di Power Platform:Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
  • Clonare il repository PowerApps-Samples in GitHub in un percorso in cui è possibile eseguire i comandi di PowerShell: git clone https://github.com/microsoft/PowerApps-Samples.git. Gli script sono organizzati in sottocartelle in powershell/managed-identities/Source. Esegui ogni script dalla sottocartella specifica, ad esempio Source\Identity.
  • Ti consigliamo di creare un nuovo contenitore di archiviazione nello stesso gruppo di risorse di Azure per eseguire l'onboarding di questa funzionalità.

Important

  • Il metodo di connessione tramite identità gestita per Azure per connettere Dataverse a un account di archiviazione di Azure e a un'area di lavoro di Azure Synapse non è attualmente disponibile per i clienti nei cloud nazionali, ad esempio Government Community Cloud (GCC), GCC High e China.
  • Non spostare gli script dalle cartelle. Gli script si basano su percorsi relativi e file condivisi nella struttura del repository.

Abilita i criteri aziendali per la sottoscrizione di Azure selezionata

Important

Devi disporre dell'accesso al ruolo Proprietario della sottoscrizione di Azure per completare questa attività. Ottieni il tuo ID della sottoscrizione di Azure dalla pagina panoramica per il gruppo di risorse di Azure.

  1. Apri interfaccia della riga di comando di Azure con "Esegui come amministratore" e accedi alla tua sottoscrizione di Azure utilizzando il comando: az login Maggiori informazioni: Accedi con interfaccia della riga di comando di Azure
  2. (Facoltativo) Se hai più sottoscrizioni di Azure, assicurati di eseguire Update-AzConfig -DefaultSubscriptionForLogin { Azure subscription id } per aggiornare la sottoscrizione predefinita.
  3. In PowerShell, vai alla Source directory all'interno del repository clonato come parte di Prima di iniziare.
  4. Per abilitare i criteri aziendali per la sottoscrizione Azure selezionata, eseguire lo script di PowerShell ./SetupSubscriptionForPowerPlatform.ps1.
    • Immetti l'ID sottoscrizione di Azure.

Crea un criterio aziendale

Important

Devi disporre dell'accesso al ruolo Proprietario del gruppo di risorse di Azure per completare questa attività. Ottieni l'ID sottoscrizione di Azure, la Posizione e il nome del Gruppo di risorse dalla pagina di panoramica per il gruppo di risorse di Azure.

  1. In PowerShell passare alla Source\Identity sottocartella ed eseguire lo script per creare i criteri aziendali:

    cd <path-to-repo>\powershell\managed-identities\Source\Identity
    .\CreateIdentityEnterprisePolicy.ps1
    
    • Immetti l'ID sottoscrizione di Azure.
    • Specificare il nome del gruppo di risorse Azure.
    • Immetti il nome del criterio aziendale preferito.
    • Specificare la posizione del gruppo di risorse Azure.
  2. Salva la versione di ResourceId dopo la creazione della policy.

Note

Quanto segue sono gli input di posizione validi supportati per la creazione del criterio. Seleziona la posizione per te più appropriata.

Località disponibili per la politica aziendale

Stati Uniti EUAP

Stati Uniti

Sudafrica

Regno Unito

Australia

Corea

Giappone

India

Francia

Europa

Asia

Norvegia

Germania

Svizzera

Canada

Brasile

Emirati Arabi Uniti

Singapore

Concedere l'accesso in lettura alla policy aziendale tramite Azure

Gli amministratori di Dynamics 365 e Power Platform possono accedere all'interfaccia di amministrazione di Power Platform per assegnare ambienti ai criteri aziendali. Per accedere ai criteri aziendali, è necessaria l'appartenenza come amministratore di Azure Key Vault per concedere il ruolo Reader agli amministratori di Dynamics 365 o Power Platform. Una volta concesso il ruolo lettore, gli amministratori di Dynamics 365 o Power Platform vedranno i criteri aziendali nel centro di amministrazione di Power Platform.

Solo gli amministratori di Dynamics 365 e Power Platform a cui è stato assegnato il ruolo di lettore per la policy aziendale possono "aggiungere un ambiente" alla policy. Altri amministratori di Dynamics 365 e PowerPlatform potrebbero essere in grado di visualizzare il criterio aziendale, ma vedranno un messaggio di errore quando provano ad aggiungere l'ambiente.

Important

Devi disporre delle autorizzazioni di Microsoft.Authorization/roleAssignments/write, ad esempio Amministratore accessi utente o Proprietario per completare questa attività.

  1. Accedi al portale di Azure.
  2. Ottieni l'ObjectID dell'utente amministratore di Dynamics 365 Power Platform.
    1. Vai all'area Utenti.
    2. Aprire l'utente amministratore di Dynamics 365 o Power Platform.
    3. Nella pagina della panoramica per l'utente, copia ObjectID.
  3. Ottieni l'ID delle politiche aziendali:
    1. Vai a Resource Graph Explorer di Azure.
    2. Esegui questa query: resources | where type == 'microsoft.powerplatform/enterprisepolicies'Esegui la query da Azure Resource Graph Explorer
    3. Scorri a destra della pagina dei risultati e seleziona il collegamento Vedi dettagli.
    4. Nella pagina Dettagli, copia l'ID.
  4. Aprire interfaccia della riga di comando di Azure ed eseguire il comando seguente, sostituendo il <objId> con il ObjectID dell'utente e il <EP Resource Id> con l'ID dei criteri dell'organizzazione.
    • New-AzRoleAssignment -ObjectId <objId> -RoleDefinitionName Reader -Scope <EP Resource Id>

Connettere un criterio aziendale all'ambiente Dataverse

Important

Per completare questa attività, è necessario disporre del ruolo di amministratore di Power Platform o di amministratore di Dynamics 365. Devi disporre del ruolo Lettore per i criteri aziendali per completare questa attività.

  1. Ottieni l'ID ambiente Dataverse.
    1. Accedi all'interfaccia di amministrazione di Power Platform.
    2. Seleziona Gestisci>Ambienti, quindi apri l'ambiente.
    3. Nella sezione Dettagli, copia l'ID dell'ambiente.
  2. Source\Identity Dalla sottocartella eseguire questo script di PowerShell:./NewIdentity.ps1
    • Immetti l'ID ambiente Dataverse.
    • Immetti ResourceId.
      StatusCode = 202 indica che il collegamento è stato creato correttamente.
  3. Accedi all'interfaccia di amministrazione di Power Platform.
  4. Seleziona Gestisci>Ambienti, quindi apri l'ambiente specificato in precedenza.
  5. Nell'area Operazioni recenti, seleziona Cronologia completa per convalidare la connessione della nuova identità.

Configurare l'accesso di rete per Azure Data Lake Storage Gen2

Important

Devi disporre del ruolo Proprietario di Azure Data Lake Storage Gen2 per completare questa attività.

  1. Accedi al portale di Azure.

  2. Apri l'account di archiviazione connesso al tuo profilo Azure Collegamento a Synapse per Dataverse.

  3. Nel riquadro di spostamento a sinistra, seleziona Rete. Quindi nella scheda Firewall e reti virtuali seleziona le impostazioni seguenti:

    1. Abilitata da reti virtuali e indirizzi IP selezionati.
    2. In Istanze di risorsa seleziona Consenti ai servizi di Azure nell'elenco di servizi attendibili di accedere a questo account di archiviazione
  4. Seleziona Salva.

Configurare l'accesso di rete all'area di lavoro Azure Synapse

Important

Per completare questa attività, è necessario disporre di un ruolo di amministratore Azure Synapse.

  1. Accedi al portale di Azure.
  2. Aprire l'area di lavoro Azure Synapse connessa al profilo Azure Synapse Link for Dataverse.
  3. Nel riquadro di spostamento a sinistra, seleziona Rete.
  4. Seleziona Consenti ai servizi e alle risorse di Azure di accedere a questa area di lavoro.
  5. Se sono presenti regole firewall IP create per tutti gli intervalli IP, eliminale per limitare l'accesso alla rete pubblica. Impostazioni di rete di Azure Synapse workspace
  6. Aggiungi una nuova regola firewall IP basata sull'indirizzo IP del client.
  7. Selezionare Salva una volta terminato. Ulteriori informazioni: Regole firewall IP di Azure Synapse Analytics

Important

Dataverse: è necessario avere il ruolo di sicurezza di amministratore di sistema Dataverse. Inoltre, le tabelle da esportare tramite Azure Collegamento a Synapse devono avere la proprietà Track changes abilitata. Altre informazioni: Opzioni avanzate

Azure Data Lake Storage Gen2: devi avere un account Azure Data Lake Storage Gen2 e accedere con il ruolo Proprietario e Collaboratore dati BLOB di archiviazione. L'account di archiviazione deve abilitare Spazio dei nomi gerarchico sia per la configurazione iniziale che per la sincronizzazione delta. Consenti l'accesso alla chiave dell'account di archiviazione è obbligatorio solo per la configurazione iniziale.

Area di lavoro Synapse: devi avere un'area di lavoro Synapse e accedere con il ruolo Amministratore Synapse in Synapse Studio. L'area di lavoro di Synapse deve trovarsi nella stessa area dell'account Azure Data Lake Storage Gen2. L'account di archiviazione deve essere aggiunto come servizio collegato all'interno di Synapse Studio. Per creare un'area di lavoro Synapse, vai a Creazione di un'area di lavoro Synapse.

Quando si crea il collegamento, Azure Collegamento a Synapse per Dataverse ottiene informazioni dettagliate sui criteri aziendali attualmente collegati nell'ambiente Dataverse e quindi memorizza nella cache l'URL del segreto client di identità per connettersi a Azure.

  1. Accedi a Power Apps e seleziona il tuo ambiente.
  2. Nel riquadro di spostamento a sinistra selezionare Azure Collegamento a Synapse e quindi selezionare + Nuovo collegamento. Se l'elemento non si trova nel riquadro del pannello laterale, seleziona …Altro, quindi l'elemento desiderato.
  3. Compila i campi appropriati, in base alla configurazione prevista. Seleziona Sottoscrizione, Gruppo di risorse e Account di archiviazione. Per connettere Dataverse a Synapse workspace, seleziona l'opzione Connettiti ad Azure Synapse workspace. Per la conversione dei dati in Delta Lake seleziona un pool Spark.
  4. Seleziona Seleziona criteri aziendali con identità del servizio gestito e quindi Avanti.
  5. Aggiungi le tabelle che desideri esportare, quindi seleziona Salva.

Note

Per rendere disponibile il comando Utilizza identità gestita in Power Apps, è necessario completare la configurazione precedente per connettere i criteri aziendali al tuo ambiente Dataverse. Ulteriori informazioni: Connessione di criteri aziendali all'ambiente Dataverse

  1. Vai a un profilo Collegamento a Synapse esistente da Power Apps (make.powerapps.com).
  2. Seleziona Utilizza identità gestita, quindi conferma. Utilizza il comando dell'identità gestita in Power Apps

Risoluzione dei problemi

Se vengono visualizzati errori 403 durante la creazione del collegamento:

  • Le identità gestite impiegano più tempo per concedere autorizzazioni temporanee durante la sincronizzazione iniziale. Attendi e riprova l'operazione più tardi.
  • Assicurati che l'archivio collegato non disponga del contenitore Dataverse esistente (dataverse-environmentName-organizationUniqueName) dello stesso ambiente.
  • È possibile identificare i criteri aziendali collegati e policyArmId eseguendo lo script di PowerShell ./GetIdentityEnterprisePolicyforEnvironment.ps1 dalla sottocartella Source\Identity, con il nome Azure Subscription ID e Nome gruppo di risorse.
  • È possibile scollegare la policy aziendale eseguendo lo script di PowerShell ./RevertIdentity.ps1 dalla sottocartella Source\Identity, utilizzando l'ID ambiente Dataverse e policyArmId.
  • È possibile rimuovere i criteri aziendali eseguendo lo script di PowerShell .\RemoveIdentityEnterprisePolicy.ps1 dalla Source\Identity sottocartella, con policyArmId.

Limitazione nota

Solo un criterio aziendale può connettersi contemporaneamente all'ambiente Dataverse. Se devi creare più collegamenti Azure Collegamento a Synapse con l'identità gestita abilitata, assicurati che tutte le risorse Azure collegate si trovino nello stesso gruppo di risorse.

Vedere anche

Che cos'è Azure Collegamento a Synapse per Dataverse?