Güvenli Yazıcı Kullanımı

Güvenli Yazıcı Kullanımı Bu makalemizde güvenli yazıcı kullanımını sağlayan kod erişim güvenliği sınıfını inceleyeceğiz. Zorluk Derecesi: 1 2 3 4 5 Anahtar Sözcükler: Güvenli Yazıcı Kullanımı, Kod Erişim Güvenliği, İzin, Microsoft .NET Microsoft .NET Framework’te yazıcıya erişimleri kontrol edebilmek için PrintingPermission sınıfı tanımlanmıştır. System.Drawing.Printing altında yer alan PrintingPermission sınıfı CodeAccessPermission sınıfından türeyen, IUnrestrictedPermission arayüzünü destekleyen serileştirilebilir mühürlü bir sınıftır. Mühürlü sınıf, hiç bir sınıfın kendisinden türetilemeyeceğini ifade eder. Bu sınıfın erişilebilir tek bir özelliği vardır; Level, kodun yazıcıya olan erişim seviyesini belirtir. PrintingPermissionLevel enum’ı ile erişim seviyesi ifade edilir.Bu sınıfın erişilebilir metotları ise şunlardır; Assert, bu kodu çağıran kodun, erişimin bir yetki ile sınırlandırıldığı kaynağa her şekilde erişebileceğini ifadeeder. Bu kodun daha üst seviyesinde bu kodu çağıran tüm kodlara şartsız güvenilmesini sağlar. Assert kullanımı çoğu zaman güvenlik açıklarına yol açabilir, zorunlu kalınmadıkça kullanımı önerilmez. Copy, şu an ki izin nesnesinin birebir bir yeni bir kopyasını oluşturup geri döndürür. Demand, bu kodu çağıran kodların bu yetkiye sahip olup olmadığının denetimi için CLR’yi zorlar, eğer bu kodu çağıran kodlardan herhangi bir seviyede o yetki sağlanmamış ise güvenlik ihlalini belirtmek için SecurityException istisna fırlatılır. Deny, çağırma yığıtındaki bu kodu çağıran kodların bu kodu çağırmalarını engeller. Equals, iki nesnenin birbirine eşit olup olmadığını test eder. FromXml, ToXml metotuyla XML olarak ifade edilen nesneyi yeniden oluşturur. XML Serileştirme gibidir. GetHashCode, bellekteki o nesneye özgü bir hash kodu oluşturur. GetType, bu nesnenin tipini verir. Intersect, şu an ki izin nesnesiyle, belirtilen izinin kesişimini ifade eden başka bir izin nesnesi oluşturur. IsSubsetOf, şu an ki izin nesnesinin, belirtilen izinin bir alt kümesi olup olmadığını ifade eder. PermitOnly, bu metotu çağıran kodların bu izin nesnesi tarafından sınırlandırılmış kaynak dışındaki sınırlı kaynaklara erişmesini engeller. ToString, şu an ki nesneyi ifade eden bir metin oluşturur. ToXml, bu nesnenin tüm durumnu ifade FromXML metotuyla yeniden olşturulabilinecek bir XML oluşturur. Union, şu an ki izin nesnesiyle, belirtilen izinin birleşimini ifade eden başka bir izin nesnesi oluşturur.Şimdi de bu sınıfın örnek bir kullanımını inceleyelim.C#PrintDocument pDoc = new PrintDocument(); try { PrintingPermission perm = new PrintingPermission( PrintingPermissionLevel.AllPrinting); perm.Demand(); } catch (System.Security.SecurityException ex) { MessageBox.Show(ex.Message); return; } pDoc.Print();VB.NETDim pDoc As New PrintDocument Try Dim perm As New _ PrintingPermission( _ PrintingPermissionLevel.AllPrinting) perm.Demand() Catch ex As System.Security.SecurityException MessageBox.Show(ex.Message) Return End Try pDoc.Print()C++.NETPrinting::PrintDocument^ pDoc = gcnew Printing::PrintDocument(); try { PrintingPermission^ perm = gcnew PrintingPermission( PrintingPermissionLevel::AllPrinting); perm->Demand(); } catch(System::Security::SecurityException^ ex) { MessageBox::Show(ex->Message); return; } pDoc->Print(); Son Söz: Bir sonraki makalemizde görüşünceye kadar güvende kalın... İlgili Makaleler: Referanslar: Yazar : Yunus Emre ALPÖZENe-Posta : yunus.alpozen et msakademik.net

Döküman Arama

Başlık :

Kapat