2008-08-02 21 views
36

İlk terbiyeli web uygulamamı paylaştığım ana bilgisayara yüklediğimde, uykusuz geceler demek istedim. Sorun şu ki, kesinlikle benim orta güven için başvurumu geliştirmemiştim (ya da ne olduğuna dair herhangi bir ipucu vardı).Orta Güven'de Web.Config dosyasına nasıl yazılır?

Tüm sorunları azalttım, bir tanesini kurtardım.

Yönetici için bir bağlantı kurucusu ve diğer tercihlerini belirleyebilmesi için bir yükleyici yazmıştım, ancak orta güvende bir web.config dosyasına yazmanın bir yolunu bulamıyorum. Herkesin bir çözümü var mı, yoksa tercihleri ​​başka bir dosyaya koymalı mıyım?

+0

Tek çözüm: http://www.4guysfromrolla.com/articles/100307-1.aspx –

cevap

19

Bu aslında IIS'nin Low düzeyi gibi geliyor. Öyleyse, yalnızca web.config dosyasını değil, herhangi bir dosyaya yazamayacaksınız. İşte

IIS yardım dosyasından seviyeleri şunlardır: (dahili)

  • Tam - kısıtlamasız izinleri belirtir. İşletim sistemi güvenliğine tabi herhangi bir kaynağa erişmek için ASP.NET uygulama izinlerini verir. Tüm ayrıcalıklı işlemler desteklenir.
    • Çağrı yönetilmeyen kod: -
    • Yüksek (web_hightrust.config) uygulaması varsayılan olarak aşağıdaki şeylerden birini yapamaz demektir kod erişim güvenliğinin, yüksek düzeyde belirtir.
    • Servis verilen bileşenleri arayın.
    • Olay günlüğüne yazın.
    • Erişim Mesaj Kuyrukta servis kuyrukları.
    • ODBC, OleDb veya Oracle veri kaynaklarına erişme.
  • Orta (web_mediumtrust.config) - Yüksek Güven Seviyesi kısıtlamalara ek olarak, ASP.NET uygulaması varsayılan olarak aşağıdaki şeylerin hiçbirini yapamaz, yani kod erişim güvenliğinin, orta düzeyini belirtir:
    • Uygulama dizininin dışındaki dosyalara erişme.
    • Kayıt defterine erişin.
    • Ağ veya Web servis çağrıları yapın.
        : -
    • Düşük (web_lowtrust.config) Orta Güven Seviyesi kısıtlamalara ek olarak, uygulama varsayılan olarak aşağıdaki şeylerin hiçbirini yapamaz, yani kod erişim güvenliğinin seviyesini düşük belirtir
    • Dosya sistemine yazın.
    • Assert yöntemini çağırın.
  • Minimal (web_minimaltrust.config) - Uygulamanın sadece yürütme izinleri demektir kod erişim güvenliğinin asgari düzeye belirtir.

Sana bir yükleyici sahip ölü seti vardır varsa kullanıcı yerel ve FTP kadar sonra kurtarabilir bellekte bir web.config yaratmanızı tavsiye ederim.

+0

Web uygulama klasöründeki yazma izinlerini ayarlamadığınızda, Microsoft Web Installer'da bu şekilde çalışır. – Sergiu

İlgili konular