Microsoft Power Platform è la piattaforma utilizzata per la creazione di soluzioni innovative e digitali tra le più importanti degli ultimi 10 anni. Automazioni (Power Automate), applicazioni (Power Apps), report (Power BI) e assistenti virtuali (Copilot Studio) permettono di facilitare il lavoro nelle aziende; ma come viene gestita la sicurezza?
Power Platform e Entra ID lavorano insieme per garantire un ambiente sicuro e conforme.
In quest’articolo, esploreremo come queste due tecnologie si integrano per fornire una sicurezza robusta, analizzando gli aspetti chiave e le best practice.
Segregazione dei dati
Quando, ad esempio, sviluppo una applicazione in Power Apps, ci sono vari livelli di sicurezza applicabili direttamente dall’interno, in fase di condivisione di essa con altri utenti e sulla fonte dati. Partiamo dal concetto primario: un importante fattore di sicurezza è quello di avere accesso al tenant su cui è ospitata/creata l’applicazione e l’utilizzo di autenticazione multi fattore.
Microsoft Entra ID gestisce gli utenti attraverso l’autenticazione multifattoriale (MFA).
L’utente owner dell’applicazione condivide la stessa con altri utenti con 2 possibili scelte:
- User: che può solo utilizzare l’app.
- Co-Owner: che può utilizzare, editare e condividere l’app (ma non cancellarla).
Una volta effettuato l’accesso, ci troviamo all’interno dell’app e anche qui l’owner, preventivamente, può decidere se gli “user” possono visualizzare tutti gli screen o circoscrivere ad un perimetro limitato l’app.
Immaginiamo di avere una tabella dove ci sono date, fatturato, tipologia (Prodotti e Servizi) e la region (per comodità ITA e Estero).
Con una semplice formula, legata alla “gallery”, che mostra i records, possiamo restringere il perimetro di ciò che potremmo far visualizzare all’utente.
If(User().Email = “p.asnaghi@mail.com”, Tabella1, Filter(Tabella1, ‘PRODOTTI\SERVIZI’=”PRODOTTI”))
Infatti, inserendo questa formula nella funzione Items della “gallery” possiamo rendere dinamica la visualizzazione e la differenza è come segue. Sulla sinistra, abbiamo la nostra tabella non filtrata, mentre sulla destra è filtrata in modo dinamico rispettando delle permission all’interno dell’app.
Gestione permessi su Database
La fonte dati che visualizzeremo all’interno dell’app ha ovviamente tutta una sua gestione. Non importa quale data source avremo a disposizione (SQL, Dataverse, Business Central etc), ma come gestiremo i permessi su questi ambienti. Ognuno ha le sue logiche, ma il concetto madre è quello che possiamo e dobbiamo dare un perimetro di sicurezza anche qui, decidendo “chi vede cosa”.
Azure Key Vault
Una volta creata l’app, se il nostro intento è quello di pubblicarla sui digital store, ecco che ci viene in supporto Azure Key Vault. Questo è un servizio che aiuta a proteggere le chiavi crittografiche e le “secrets” utilizzate dalle applicazioni e dai servizi cloud; permette anche la gestione centralizzata delle chiavi di sicurezza, dei certificati e delle informazioni sensibili.
Ipotizziamo che la nostra app sia pronta ad essere pubblicata e resa disponibile nativamente per i device mobili. Attraverso il processo guidato di “wrapping” di Power Apps l’app verrà “pacchettizzata” e configurata per la pubblicazione ed è a questo punto entra in gioco Azure Key Vault.
Infatti, durante il processo di wrapping con Power Apps, Azure Key Vault svolge un ruolo cruciale nella firma digitale automatica del pacchetto dell’app mobile. Ecco come funziona:
- Archiviazione sicura: Azure Key Vault memorizza in modo sicuro le chiavi di crittografia e i certificati necessari per firmare il pacchetto dell’app.
- Firma automatica: durante il wrapping, il wizard utilizza Azure Key Vault per accedere alle chiavi e ai certificati e firmare automaticamente il pacchetto dell’app.
- Protezione delle chiavi: Azure Key Vault protegge le chiavi di crittografia utilizzando chiavi di crittografia principali (Key Encryption Keys, KEK) che sono state precedentemente archiviate nel vault.
Questo processo garantisce che le app siano firmate in modo sicuro e conforme agli standard richiesti per la distribuzione su piattaforme mobili.
Case Study
Un altro scenario potrebbe essere quello dove l’azienda “X” viene acquisita dall’azienda “Y”. Immaginandoci che, per questioni burocratiche, la migrazione degli utenti avvenga poi nel tempo, c’è comunque la necessità di condividere l’app interessata a tutti i nuovi utenti. Questi utenti dell’azienda “X”, quindi, non essendo ancora all’interno del tenant dell’azienda “Y” devono essere gestiti come “Guests”.
All’interno di Entra ID, sarà necessario aggiungere tali utenti, assegnando le eventuali licenze, configurando la parte di permission prima analizzata.
Conclusioni
L’integrazione tra Microsoft Power Platform e Entra ID rappresenta una soluzione potente per garantire la sicurezza in ambienti aziendali digitali. Utilizzando le funzionalità avanzate di autenticazione, gestione degli accessi, protezione dei dati e monitoraggio delle minacce, le aziende possono creare applicazioni e flussi di lavoro sicuri e conformi, proteggendo al contempo le loro risorse e dati sensibili.