Esempio di tecnologia della protezione dall'accesso di codice
Aggiornamento: novembre 2007
In questo esempio viene illustrata la protezione dall'accesso di codice, un meccanismo utilizzato per concedere o negare l'accesso alle risorse all'interno di una chiamata al metodo. È possibile, ad esempio, che l'accesso al disco sia consentito al codice creato da Microsoft ma non a quello creato da un'altra società. Questo controllo viene imposto anche se il codice di entrambe le società viene utilizzato all'interno di una singola applicazione. In questo esempio vengono eseguiti alcuni tentativi di accesso a un file su disco e a una variabile di ambiente. Prima di ciascun tentativo, vengono modificate le autorizzazioni relative all'accesso di codice in modo da verificare gli effetti delle modifiche. Per ulteriori informazioni sulla protezione dall'accesso di codice, vedere i commenti nei file di codice sorgente.
Per informazioni sull'utilizzo degli esempi, vedere i seguenti argomenti:
Per compilare l'esempio utilizzando il prompt dei comandi
Spostarsi in una delle sottodirectory specifiche del linguaggio della directory CAS, utilizzando il prompt dei comandi.
Digitare msbuild PermissionsCS.sln o msbuild.exe PermissionsVB.sln, a seconda del linguaggio di programmazione che si desidera utilizzare. Ad esempio, nella directory C:\Documents and Settings\Nome utente\Documenti\Samples\Technologies\CAS\VB digitare msbuild.exe PermissionsVB.sln dalla riga di comando per compilare la versione Visual Basic.
Per compilare l'esempio utilizzando Visual Studio
Aprire Esplora risorse, quindi spostarsi in una delle sottodirectory specifiche del linguaggio della directory CAS.
Fare doppio clic sull'icona relativa al file PermissionsCS.sln o PermssionsVB.sln, a seconda del linguaggio di programmazione che si desidera utilizzare, per aprire il file in Visual Studio 2005.
Scegliere Compila soluzione dal menu Compila.
L'applicazione verrà generata nella sottodirectory predefinita \bin o \bin\Debug.
Per eseguire l’esempio
Nella finestra del prompt dei comandi spostarsi nella directory contenente il nuovo file eseguibile.
Digitare Permissions.exe dalla riga di comando.
Nota: |
---|
L'esempio compila un'applicazione console. Per visualizzare l'output dell'applicazione, è necessario avviarla ed eseguirla in una finestra del prompt dei comandi. |
Requisiti
Versione di .NET Framework: 2.0, 1.1
Osservazioni
Nell'esempio vengono utilizzate le seguenti tecnologie e classi.
Protezione
PermissionSet - Consente di gestire un insieme di autorizzazioni e di asserire o negare l'autorizzazione nello stack.
CodeAccessPermission - Viene utilizzata per i relativi metodi statici RevertDeny e RevertAssert, che annullano gli effetti delle funzioni Assert e Deny.
FileIOPermission - Consente di gestire l'autorizzazione per l'invio di richieste relative al file system, ad esempio richieste di lettura e di scrittura.
EnvironmentPermission - Consente di gestire l'autorizzazione per l'accesso alle variabili di ambiente.
I/O
FileStream- Consente di aprire, leggere e scrivere i file nell'esempio.
Path- Consente di ottenere il percorso completo di un file. Questa informazione è particolarmente importante quando si utilizza la classe FileIOPermission, poiché la protezione del sistema è basata sul percorso completo di un file.
Variabili di ambiente
- Environment- Consente di leggere le variabili di ambiente relative al processo.