Con il rilascio del Creators Update, Microsoft ha anche presentato una nuova edizione di Windows chiamata Windows 10 S. Questa nuova edizione è stata creata in modo specifico per una tipologia di utenti che vogliono il massimo per quanto riguarda sicurezza e performance, infatti, al contrario delle altre edizioni come Windows 10 Home e Pro, permette la sola esecuzione di applicazioni in sandbox provenienti dal Windows Store. Inoltre, poiché il tutto è regolato da integrity checks tramite Device Guard, sarà impossibile eseguire anche alcune applicazioni più utili al mondo degli sviluppatori, come il prompt dei comandi, regedit e, ovviamente, Visual Studio.
Le applicazioni della Universal Windows Platform sono, almeno in teoria, perfettamente in grado di girare all'interno di questa nuova modalità, ma la stessa cosa non può essere detta con tanta sicurezza per le applicazioni distribuite sullo Store dopo la conversione con il Desktop Bridge.
Per effettuare i test specifici per la nostra applicazione è necessario essere in possesso di un device fisico come Surface Laptop. Poiché non tutti gli sviluppatori hanno accesso ai devici fisici e considerando che lo Store dà per scontato che l'applicazione sarà compatibile anche con questa modalità, Microsoft ha rilasciato alcuni certificati che forzano le policy di Windows 10 S, in modo che sia possibile effettuare gli opportuni test, scaricabili qui: https://go.microsoft.com/fwlink/?linkid=849018
All'interno del pacchetto si trovano tre certificati diversi:
- SiPolicy_Audit: applica una modalità di compatibilità forzando la Audit mode policy, ovvero permette l'esecuzione di applicazioni anche se non sono compatibili con Windows 10 S e ci consente di verificare tramite l'Event Viewer di Windows se si sono verificati errori;
- SiPolicy_Enforced: applica la modalità di esecuzione standard forzando la Production mode policy, in questo modo verrà simulato esattamente il comportamento ottenuto da un device Windows 10 S;
- SiPolicy_DevModeEx_Enforced: applica la stessa policy di produzione ma consente anche l'esecuzione di applicazioni firmate con un certificato di test.
L'installazione delle policy è molto semplice e consiste solo nel rinominare il certificato scelto, tra quelli elencati qui sopra, nel file "SiPolicy.p7b" e di copiarlo nella cartella C:\Windows\System32\CodeIntegrity\. In questo modo, dopo il riavvio di Windows, la modalità scelta verrà eseguita.
Considerando che queste policy sono molto stringenti e che, intervenendo anche a livello di driver di sistema, possono generare problemi su tutto quello che abbiamo installato in precedenza sul PC, è fortemente consigliato il test su un ambiente dedicato, magari su una macchina virtuale.
Per eliminare la policy invece, è sufficiente tornare nel percorso di installazione, eliminare il certificato .p7b e riavviare il sistema operativo.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare una custom property in GitHub
Gestire domini wildcard in Azure Container Apps
Eseguire query manipolando le liste contenute in un oggetto mappato verso una colonna JSON
Ottimizzare le pull con Artifact Cache di Azure Container Registry
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Eseguire una ricerca avanzata per recuperare le issue di GitHub
Effettuare il binding di date in Blazor
Disabilitare automaticamente un workflow di GitHub (parte 2)
Rinnovare il token di una GitHub App durante l'esecuzione di un workflow
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Migrare una service connection a workload identity federation in Azure DevOps
Migliorare la sicurezza dei prompt con Azure AI Studio
I più letti di oggi
- Microsoft aggiorna WinFS beta 1 per VS 2005
- Utilizzare CLEditor per consentire l'input di HTML in ASP.NET MVC
- Build 2015: segui con noi tutte le novità per gli sviluppatori in diretta da San Francisco
- VS 2005 e SQL Server 2005 Express da scaricare
- WS-I approva Basic Profile 1.0
- Utilizzare il metodo reduce in JavaScript