TypeBuilder.IsSecurityTransparent Tulajdonság

Definíció

Olyan értéket kap, amely jelzi, hogy az aktuális típus transzparens-e, ezért nem hajthat végre kritikus műveleteket.

public:
 virtual property bool IsSecurityTransparent { bool get(); };
public override bool IsSecurityTransparent { get; }
member this.IsSecurityTransparent : bool
Public Overrides ReadOnly Property IsSecurityTransparent As Boolean

Tulajdonság értéke

trueha a típus biztonsági transzparens; egyéb esetben. false

Kivételek

Az aktuális dinamikus típus nem a metódus meghívásával CreateType() lett létrehozva.

Megjegyzések

A IsSecurityCritical, IsSecuritySafeCriticalés IsSecurityTransparent tulajdonságok a típus átlátszósági szintjét jelentik a közös nyelvi futtatókörnyezet (CLR) alapján. Ezeknek a tulajdonságoknak a kombinációi a következő táblázatban láthatók:

Biztonsági szint IsSecurityCritical IsSecuritySafeCritical IsBiztonságiÁtlátható
Létfontosságú true false false
Biztonságkritikus true true false
Transparent false false true

Ezeknek a tulajdonságoknak a használata sokkal egyszerűbb, mint egy szerelvény biztonsági széljegyzeteinek és típusainak vizsgálata, az aktuális megbízhatósági szint ellenőrzése és a futtatókörnyezet szabályainak duplikálása.

A futtatókörnyezet megkezdi az átláthatósági szintek kiértékelését a szerelvényen. Ha például a dinamikus szerelvény biztonsági szempontból kritikus, a rendszer figyelmen kívül hagyja a típusok megjegyzéseit, és minden típus biztonsági szempontból kritikus fontosságú.

Alapértelmezés szerint a dinamikus szerelvény örökli az azt kibocsátó szerelvény átlátszóságát. Ezt az alapértelmezett értéket felülbírálhatja a AppDomain.DefineDynamicAssembly(AssemblyName, AssemblyBuilderAccess, IEnumerable<CustomAttributeBuilder>), AppDomain.DefineDynamicAssembly(AssemblyName, AssemblyBuilderAccess, String, Boolean, IEnumerable<CustomAttributeBuilder>)vagy AppDomain.DefineDynamicAssembly(AssemblyName, AssemblyBuilderAccess, String, Evidence, PermissionSet, PermissionSet, PermissionSet, Boolean, IEnumerable<CustomAttributeBuilder>) metódus túlterhelésével és a biztonsági attribútumok megadásával. Ezzel nem emelheti a biztonsági szinteket; vagyis a transzparens kód nem bocsáthat ki biztonsági szempontból kritikus vagy biztonsági szempontból biztonságos-kritikus kódot. Az attribútumokat a dinamikus szerelvény létrehozásakor kell megadni, vagy csak akkor lépnek érvénybe, ha a szerelvényt lemezre menti és újra betölti.

Note

Az alapértelmezett öröklés a futtatókörnyezet átláthatóságának értékelésére korlátozódik. A rendszer nem alkalmaz attribútumokat a dinamikus szerelvényre. Ha biztonsági attribútumokat szeretne hozzáadni, saját maga kell alkalmaznia őket.

A tükröződés kibocsátásáról és az átláthatóságról további információt a Tükröződés kibocsátás biztonsági problémái című témakörben talál. Az átláthatóságról további információt a biztonsági módosítások című témakörben talál.

A következőre érvényes:

Lásd még