Share via


DynamicMethod.IsSecurityTransparent Özellik

Tanım

Geçerli dinamik yöntemin geçerli güven düzeyinde saydam olup olmadığını belirten bir değer alır ve bu nedenle kritik işlemler gerçekleştiremez.

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

Özellik Değeri

true dinamik yöntem geçerli güven düzeyinde güvenlik saydamsa; aksi takdirde , false.

Özel durumlar

Dinamik yöntemin bir yöntem gövdesi yoktur.

Açıklamalar

IsSecurityCritical, IsSecuritySafeCriticalve IsSecurityTransparent özellikleri, ortak dil çalışma zamanı (CLR) tarafından belirlenen dinamik yöntemin saydamlık düzeyini bildirir. Bu özelliklerin birleşimleri aşağıdaki tabloda gösterilmiştir:

Güvenlik düzeyi IsSecurityCritical IsSecuritySafeCritical IsSecurityTransparent
Kritik true false false
Güvenli kritik true true false
Geçirgen false false true

Bu özelliklerin kullanılması, derlemenin ve türlerinin güvenlik ek açıklamalarını incelemekten, geçerli güven düzeyini denetlemekten ve çalışma zamanının kurallarını çoğaltmaya çalışmaktan çok daha basittir.

Dinamik bir yöntemin saydamlığı, ilişkili olduğu modüle bağlıdır. Dinamik yöntem modül yerine bir türle ilişkiliyse, saydamlığı türü içeren modüle bağlıdır. Dinamik yöntemler güvenlik ek açıklamalarına sahip olmadığından ilişkili modül için varsayılan saydamlık atanır.

  • Anonim olarak barındırılan dinamik yöntemler, bunları içeren sistem tarafından sağlanan modül saydam olduğundan her zaman saydamdır.

  • Güvenilen bir derlemeyle (yani, genel derleme önbelleğine yüklenen tanımlayıcı adlı bir derleme) ilişkili dinamik yöntemin saydamlığı aşağıdaki tabloda açıklanmıştır.

    Derleme ek açıklaması Düzey 1 saydamlığı Düzey 2 saydamlığı
    Tamamen saydam Geçirgen Geçirgen
    Tamamen kritik Kritik Kritik
    Karma saydamlık Geçirgen Geçirgen
    Güvenlik belirsiz Güvenli-kritik Kritik

    Örneğin, bir dinamik yöntemi, düzey 2 karma saydamlığı olan mscorlib.dll içindeki bir türle ilişkilendirirseniz, dinamik yöntem saydamdır ve kritik kodu yürütemez. Saydamlık düzeyleri hakkında bilgi için bkz . Saydam Güvenlik Kodu, Düzey 1 ve Güvenlik-Saydam Kod, Düzey 2.

    Not

    Dinamik bir yöntemin, System.dll gibi güvenlik belirsiz bir güvenilir düzey 1 derlemesindeki bir modülle ilişkilendirilmesi, güvenin yükseltilmesine izin vermez. Dinamik yöntemi çağıran kodun izin kümesi System.dll izin kümesini içermiyorsa (yani tam güven), SecurityException dinamik yöntem çağrıldığında oluşturulur.

  • Kısmen güvenilen bir derlemeyle ilişkili dinamik bir yöntemin saydamlığı, derlemenin nasıl yüklendiğine bağlıdır. Derleme kısmi güvenle yüklenirse (örneğin, korumalı bir uygulama etki alanına), çalışma zamanı derlemenin güvenlik ek açıklamalarını yoksayar. Derleme ve dinamik yöntemler de dahil olmak üzere tüm türleri ve üyeleri saydam olarak değerlendirilir. Çalışma zamanı, yalnızca kısmi güven derlemesi tam güven ile yüklendiğinde (örneğin, bir masaüstü uygulamasının varsayılan uygulama etki alanına) güvenlik ek açıklamalarına dikkat eder. Bu durumda, çalışma zamanı dinamik yönteme derlemenin ek açıklamalarına göre yöntemler için varsayılan saydamlığı atar.

Yansıma yayma ve saydamlık hakkında daha fazla bilgi için bkz. Yansıma Yaymada Güvenlik Sorunları. Saydamlık hakkında daha fazla bilgi için bkz . Güvenlik Değişiklikleri.

Şunlara uygulanır

Ayrıca bkz.