Sicurezza dall'accesso di codice per applicazioni ClickOnce

Le applicazioni ClickOnce sono basate su .NET Framework e sono soggette ai vincoli di sicurezza dall'accesso di codice. Per poter scrivere correttamente le applicazioni ClickOnce, è quindi importante comprendere le implicazioni di questo tipo di sicurezza.

La sicurezza dall'accesso di codice è un meccanismo di .NET Framework che consente di limitare l'accesso del codice alle risorse e alle operazioni protette. È necessario configurare le autorizzazioni di sicurezza dall'accesso di codice per l'applicazione ClickOnce in modo da utilizzare l'area appropriata per il percorso del programma di installazione dell'applicazione. Nella maggior parte dei casi, è possibile scegliere l'area Internet per un set limitato di autorizzazioni o l'area Intranet locale per un set di autorizzazioni più ampio.

Autorizzazioni di sicurezza dall'accesso di codice predefinite per le applicazioni ClickOnce

Per impostazione predefinita, quando un'applicazione ClickOnce viene eseguita o installata in un computer client, all'applicazione vengono assegnate autorizzazioni di attendibilità totale.

  • Un'applicazione con autorizzazioni di attendibilità totale ha accesso illimitato alle risorse, inclusi il file system e il Registro di sistema, con il rischio che l'applicazione e il sistema dell'utente finale siano sfruttati da codice dannoso.

  • Quando un'applicazione richiede autorizzazioni di attendibilità totale, è possibile che all'utente finale venga richiesto di concedere autorizzazioni all'applicazione. Ciò significa l'applicazione non fornisce effettivamente un'esperienza ClickOnce e il prompt potrebbe confondere un utente non esperto.

    Nota

    Quando si installa un'applicazione da supporti rimovibili, ad esempio un CD-ROM, non viene visualizzato alcun prompt per l'utente.L'amministratore della rete può inoltre configurare i criteri di rete in modo che, in caso di installazione di un'applicazione da una fonte attendibile, il prompt non venga visualizzato.Per ulteriori informazioni, vedere Cenni preliminari sulla distribuzione di applicazioni attendibili.

Per limitare le autorizzazioni per un'applicazione ClickOnce, è possibile modificare le autorizzazioni di sicurezza dall'accesso di codice dell'applicazione in modo da richiedere l'area più adatta alle autorizzazioni richieste dall'applicazione. Nella maggior parte dei casi è possibile selezionare l'area dalla quale viene distribuita l'applicazione. Ad esempio, se l'applicazione in questione è un'applicazione aziendale, è possibile utilizzare l'area Intranet locale. Se l'applicazione in questione è un'applicazione Internet, è possibile utilizzare l'area Internet.

Configurazione delle autorizzazioni di sicurezza

È sempre opportuno configurare l'applicazione ClickOnce in modo da richiedere l'area appropriata per limitare le autorizzazioni di sicurezza dall'accesso di codice. Per configurare le autorizzazioni di sicurezza, è possibile utilizzare la scheda Sicurezza di Progettazione progetti.

Nella scheda Sicurezza di Progettazione progetti è disponibile la casella di controllo Attiva le impostazioni di sicurezza ClickOnce. Quando si seleziona questa casella di controllo, le richieste delle autorizzazioni di sicurezza vengono aggiunte al manifesto di distribuzione dell'applicazione. Durante l'installazione, all'utente viene richiesto di concedere le autorizzazioni, se le autorizzazioni richieste superano quelle predefinite per la zona da cui viene distribuita l'applicazione. Per ulteriori informazioni, vedere Procedura: abilitare le impostazioni di sicurezza ClickOnce.

Alle applicazioni distribuite da percorsi differenti vengono concessi automaticamente livelli di autorizzazioni diversi. Quando un'applicazione viene distribuita da Internet, ad esempio, riceve un set di autorizzazioni molto limitato. Quando l'applicazione viene installata da una Intranet locale riceve più autorizzazioni, mentre in caso di installazione da CD-ROM riceve autorizzazioni di attendibilità totale.

Per iniziare la configurazione delle autorizzazioni, nella scheda Sicurezza è possibile selezionare una zona di sicurezza dall'elenco a discesa Zona. Se l'applicazione potrà essere distribuita da più zone, si consiglia di selezionare quella che prevede il numero minore di autorizzazioni. Per ulteriori informazioni, vedere Procedura: impostare un'area di sicurezza per un'applicazione ClickOnce.

Le proprietà che è possibile impostare dipendono dal set di autorizzazioni. Non tutti i set di autorizzazioni dispongono di proprietà configurabili. Per ulteriori informazioni sull'elenco completo delle autorizzazioni che l'applicazione può richiedere, vedere System.Security.Permissions. Per ulteriori informazioni sull'impostazione delle autorizzazioni per un'area personalizzata, vedere Procedura: impostare le autorizzazioni personalizzate per un'applicazione ClickOnce.

Debug di un'applicazione con autorizzazioni limitate

In qualità di sviluppatore, è probabile che si utilizzi il computer di sviluppo con autorizzazioni di attendibilità completa. In tal caso, pertanto, durante il debug dell'applicazione non vengono visualizzate le stesse eccezioni di sicurezza visibili agli utenti quando accedono con autorizzazioni limitate.

Per intercettare queste eccezioni, è necessario eseguire il debug dell'applicazione con le stesse autorizzazioni dell'utente finale. È possibile attivare il debug con autorizzazioni limitate nella scheda Sicurezza di Progettazione progetti.

Quando si esegue il debug di un'applicazione con autorizzazioni limitate, le eccezioni vengono generate per qualsiasi richiesta di sicurezza del codice non abilitata nella scheda Sicurezza. Verrà inoltre visualizzato il supporto eccezioni, in cui vengono forniti suggerimenti su come modificare il codice al fine di impedire l'eccezione.

In aggiunta, durante la scrittura del codice, gli eventuali membri non inclusi nelle autorizzazioni di sicurezza configurate verranno disabilitati sfruttando la funzionalità IntelliSense nell'editor di codice.

Per ulteriori informazioni, vedere Procedura: eseguire il debug di un'applicazione ClickOnce con autorizzazioni limitate.

Autorizzazioni di sicurezza per le applicazioni ospitate da browser

In Visual Studio sono disponibili i tipi di progetto seguenti per le applicazioni di Windows Presentation Foundation (WPF):

  • Applicazione Windows WPF

  • Applicazione browser WPF

  • Libreria di controlli personalizzati WPF

  • Libreria di servizio WPF

Tra questi tipi di progetto, solo le applicazioni browser WPF sono ospitate da browser e richiedono impostazioni speciali di distribuzione e di sicurezza. Le impostazioni di sicurezza predefinite per queste applicazioni sono le seguenti:

  • Attiva le impostazioni di sicurezza ClickOnce

  • È un'applicazione parzialmente attendibile

  • Area Internet (con il set di autorizzazioni predefinito per le applicazioni browser WPF selezionato)

Nella finestra di dialogo Impostazioni di sicurezza avanzate, la casella di controllo Esegui debug dell'applicazione con il set di autorizzazioni selezionato è selezionata e disabilitata. Questa condizione è dovuta al fatto che non è possibile disattivare il debug della zona per le applicazioni ospitate da browser. Per ulteriori informazioni, vedere Panoramica delle applicazioni browser XAML di WPF.

Vedere anche

Attività

Procedura: abilitare le impostazioni di sicurezza ClickOnce

Procedura: impostare un'area di sicurezza per un'applicazione ClickOnce

Procedura: impostare le autorizzazioni personalizzate per un'applicazione ClickOnce

Procedura: eseguire il debug di un'applicazione ClickOnce con autorizzazioni limitate

Riferimenti

Pagina Sicurezza, Progettazione progetti

Concetti

Protezione di applicazioni ClickOnce

Cenni preliminari sulla distribuzione di applicazioni attendibili