CodeAccessPermission.Assert Yöntem

Tanım

Yığında daha yüksek arayanlara kaynağa erişim izni verilmemiş olsa bile, çağıran kodun bu yöntemi çağıran kod aracılığıyla bir izin talebiyle korunan kaynağa erişebileceğini bildirir. kullanmak Assert() güvenlik sorunları oluşturabilir.

public:
 virtual void Assert();
public void Assert();
abstract member Assert : unit -> unit
override this.Assert : unit -> unit
Public Sub Assert ()

Uygulamalar

Özel durumlar

Çağıran kodda yok Assertion.

-veya-

Geçerli çerçeve için zaten etkin Assert() bir çerçeve var.

Açıklamalar

Çağrı yığını genellikle aşağı doğru büyüyen olarak temsil edilir, böylece çağrı yığınında daha düşük çağrı yığını çağrı yöntemlerinde daha yüksek yöntemler bulunur. Çağrısı, Assert çağrı yığınında daha düşük bir yığın yürüyüşünün, bu yöntemi çağıran kodun ötesinde çağrı yığınında ilerlemesini önler. Bu nedenle, çağrı yığınında daha yüksek arayanlar bir kaynağa erişmek için gerekli izinlere sahip olmasalar bile, gerekli izin üzerinde bu yöntemi çağıran kod aracılığıyla yine de erişebilirler. Onay, yalnızca çağıran Assert kodun onaylayan izin için güvenlik denetimini geçirmesi durumunda geçerlidir.

çağrısı Assert , çağıran kod çağırana geri dönene kadar etkilidir. Bir çerçevede yalnızca bir tane Assert etkin olabilir. Çerçevede etkin Assert bir öğe olduğunda çağrılmaya Assert çalışıldığında sonuç olarak elde ediliyorSecurityException. Etkin RevertAssertRevertAllbir öğesini çağırmak veya Assert kaldırmak için.

Assert bu izin için bir talep başarılı olmadığından verilmemiş bir izin için yoksayılır. Ancak, çağrı yığınında daha düşük kod bu izni çağırırsaDemand, yığın kılavuzu çağırmaya SecurityExceptionçalışan koda ulaştığında bir Assert oluşturulur. Bunun nedeni, çağıran Assert kodun denenmesine Assert rağmen izin verilmemiş olmasıdır.

Caution

Çağırma, Assert çağrı zincirindeki tüm kodlara belirtilen kaynağa erişim izni verilmesi gereksinimini ortadan kaldırdığından, yanlış veya uygunsuz kullanıldığında güvenlik sorunlarına neden olabilir. Bu nedenle, çok dikkatli kullanılmalıdır.

Devralanlara Notlar

Bu yöntemi geçersiz kılamazsınız.

Şunlara uygulanır

Ayrıca bkz.