2013-02-22 27 views
7

Windows Azure'dan paylaşılan bir web sitesi kullanıyorum. Web.config'in bölümlerini şifrelemek isterim, ancak şu hatayı alıyorum:Web.config dosyasını şifreleyin Windows Azure

'RsaProtectedConfigurationProvider' sağlayıcısı kullanılarak şifresini çözemedim. Sağlayıcıdan hata mesajı: RSA anahtar kutusu açılamadı.

Sitemde bu dosyayı şifreleyecek bir sayfam var ve bunu yapıyor, ancak birkaç saat sonra bu hatayı alıyorum. Makine anahtarımı Azure'a göndermem gerekiyor mu yoksa kullanabileceğim bir tane var mı?

benim yapılandırma dosyasını şifrelemek için, bu kodu kullanın:

/// <summary> 
    /// About view for the website. 
    /// </summary> 
    /// <returns>Action Result.</returns> 
    public ActionResult About() 
    { 
     Configuration objConfig = 
      WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath); 
     AppSettingsSection objAppsettings = 
      (AppSettingsSection)objConfig.GetSection("appSettings"); 
     if (!objAppsettings.SectionInformation.IsProtected) 
     { 
      objAppsettings.SectionInformation.ProtectSection(
          "RsaProtectedConfigurationProvider"); 
      objAppsettings.SectionInformation.ForceSave = true; 
      objConfig.Save(ConfigurationSaveMode.Modified); 
     } 

     return View(); 
    } 
+0

Bunu nasıl şifrelediğinizi/şifresini çözdüğünüzden emin değilim, ancak Azure'daki makine anahtarı yerel olarak sahip olduğunuzdan farklı olacaktır. Ve her örneğin farklı bir makine anahtarına sahip olacağına inanıyorum. Ancak bunu şifreliyorsunuz, bunu akılda tutmak zorunda kalacaksınız. Bu şifreleme/şifre çözme işlemini nasıl yaptığınıza dair daha fazla bilgi verebilir misiniz? – Jaxidian

+0

Bazı yeni kod ekledim, teşekkürler. Şifreli kodun birkaç saat çalıştığını, sonra kırıldığını fark ettim. Görünüşe göre, kodum anahtar üzerinde olan yeni bir örneğe gönderiliyor. –

cevap

4

Size aradığınızı tam olarak olmayabilir, ancak zamanında AppSettings'i üzerine yazmak Azure gösterge tablosunda Yapılandırma sekmesini kullanabilirsiniz böylece web.config, herhangi bir gerçek hassas veriyi kaydetmez. Bu sorunuzun sırasında mevcut olsaydı

http://www.windowsazure.com/en-us/manage/services/web-sites/how-to-configure-websites/#howtochangeconfig

App Settings – Specify name/value pairs that will be loaded by your web application on start up. For .NET sites, these settings will be injected into your .NET configuration AppSettings at runtime, overriding existing settings. For PHP and Node sites these settings will be available as environment variables at runtime.

İlgili konular