Şu anda bir MVC site
oluşturduğumuz bir projem var. Sitenin, özel işlevsellik sağlamak için üçüncü taraf dll'nin takılması gerektiğinden, kod erişim güvenliğini kullanması gerekir. Şimdi bu meclislerin tam güvene sahip olmasını istemiyoruz ve bu nedenle, .NET 4.0
'daki yeni güvenlik modelini kullanmak istemiyoruz. Bu gereklilikler nedeniyle, tüm montajlarımızı adlandırarak ve bunları gac'a yüklüyoruz. Bu montajlardan bazıları SecuritySafeCritical ve SecurityCritical türleri ve üyeleriyle karıştırılmış SecurityTransparent.Web sitesi derlemelerini yeni kod güvenlik modeliyle güvenli hale getirme
SecurityTransparent ve SecurityCritical derlemeleri, türleri ve üyeleri, bizim tarafımızdan olduğu gibi üçüncü taraf montaj geliştiricileri tarafından kullanılabilir.
Şimdi AllowPartiallyTrustedCallers
özniteliği ile işaretlenmiş bir montaj ikamet eden bir sınıftan miras Global.asax
dosyası ile bu sorun var.
Bu sınıf, HttpApplication
öğesinden devralınır.
web.config
'ümde, güven düzeyi şu anda Yüksek olarak ayarlanmıştır.
aşağıdaki hatayı alıyorum:
Inheritance security rules violated by type: 'ASP.global_asax'. Derived types must either match the security accessibility of the base type or be less accessible
Güvenlik modeli kullanılarak ve HttpApplication
sınıf SecurityTransparent daha sıkı kural olması gerektiğini ne zaman çünkü devralma kuralları sanırım.
Özel sınıfımı SecuritySafeCritical
özniteliğiyle işaretlemeyi denedim, ancak şanssız.
Umarız bazılarınızın bu soruna bir çözümü vardır.