Condivisione di una libreria con codice parzialmente attendibile

Aggiornamento: novembre 2007

Prima che le librerie condivise possano essere chiamate da codice parzialmente attendibile sono necessari diversi passaggi. Per informazioni preliminari su questo problema, vedere Utilizzo di librerie da codice parzialmente attendibile. È possibile attivare l'accesso parzialmente attendibile alle librerie completando le tre attività riportate di seguito.

Assegnazione di nomi sicuri agli assembly

Prima che sia possibile condividere la libreria tramite la Global Assembly Cache o utilizzarla come componente scaricato, è necessario creare un nome sicuro. Per fornire un nome sicuro alla libreria, completare le attività riportate di seguito, descritte in Creazione e utilizzo degli assembly con nome sicuro.

  1. Creare una coppia di chiavi.

  2. Utilizzare l'Assembly Linker (Al.exe) o un attributo di assembly per applicare la coppia di chiavi alla libreria.

Disattivazione della pretesa LinkDemand

Per disattivare la richiesta LinkDemand implicita che blocca la chiamata alle librerie condivise da parte di codice parzialmente attendibile, applicare l'attributo AllowPartiallyTrustedCallersAttribute a livello di assembly del codice.

Nell'esempio di codice riportato di seguito viene dimostrato come applicare l'attributo AllowPartiallyTrustedCallersAttribute a una libreria condivisa.

[Visual Basic]

<assembly:AllowPartiallyTrustedCallersAttribute()>
[assembly:AllowPartiallyTrustedCallersAttribute()] 

Quando è presente questo attributo, tutti gli altri controlli di protezione continuano a funzionare come al solito, inclusi gli eventuali attributi della protezione dichiarativa a livello di classe o di metodo. Questo attributo blocca solo l'applicazione della pretesa LinkDemand implicita.

Condivisione della libreria

Dopo avere completato le precedenti attività, è possibile condividere la libreria inserendola nella Global Assembly Cache. Per ulteriori informazioni, vedere Installazione di un assembly nella Global Assembly Cache.

Nota:

Per consentire a chiamanti parzialmente attendibili di chiamare classi o membri selezionati nella libreria, è possibile specificare pretese per tali classi o membri. Per ulteriori informazioni, vedere Necessità di un livello di attendibilità totale per i tipi interni a un assembly AllowPartiallyTrustedCallersAttribute.

Vedere anche

Concetti

Utilizzo di librerie da codice parzialmente attendibile

Altre risorse

Protezione dall'accesso di codice