【问题标题】:Encrypt custom section in web.config - any improvements in net3.5 and higher?加密 web.config 中的自定义部分 - net3.5 及更高版本有什么改进吗?
【发布时间】:2011-04-26 14:55:04
【问题描述】:

任何来自 MS 或一些 MS MVP 的人?除了使用Using ASPNet_Regiis to encrypt custom configuration section - can you do it? 中的hack 之外,对web.config 中的特定自定义部分进行加密的任何改进

如今被黑客入侵的风险非常高,因此能够加密配置肯定有助于提高安全性。

任何人的信息,欢迎更新。

谢谢,X。

【问题讨论】:

    标签: .net encryption web-config


    【解决方案1】:

    不确定这是否是您问题的答案,但是当我遇到加密自定义配置部分的问题时,出现错误无法找到“类型”程序集。

    如果自定义部分只有具有多个属性的单个标记元素,我找到了建议使用 System.Configuration.SingleTagSectionHandler 的链接

    VaultOfThoughts link

    现在我可以使用“aspnet_regiis -pe”命令行加密自定义配置部分。

    【讨论】:

      【解决方案2】:

      我今天自己也遇到了这个问题,并且真的很难使用命令行工具 aspnet_regiis.exe 去任何地方

      我认为我的主要问题是我自己构建了一个自定义部分组,而不仅仅是一个部分,因此命令行工具并不想真正发挥作用。

      相反,我使用类似于以下的代码编写了一个仅限自己访问的网页

      Private Sub Encrypt()
          Dim cfg As Configuration = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath)
          Dim grp As ConfigurationSectionGroup = cfg.GetSectionGroup("MySectionGroup")
          Dim sect As ConfigurationSection
          For r As Integer = 0 To grp.Sections.Count - 1
              sect = grp.Sections(r)
              If Not sect.SectionInformation.IsProtected Then
                  sect.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider")
              End If
          Next
          cfg.Save()
      End Sub
      

      希望这有助于或至少为您指明正确的方向 :) 解密基本上与上述相反 (.UnprotectSection)

      【讨论】:

      • 我认为您在部署期间只进行了一次加密。您是否使用 msbuild 对其进行加密?此外,当访问配置部分时,您有自己的实现,例如某种单例,它负责解密。不错的简单解决方法,提示。
      • 不,我使用内置框架命令来访问自定义部分,就像未加密时一样。如果它受到保护而您没有更改任何代码,Asp.net 会在后台静默解码。
      猜你喜欢
      • 2011-03-31
      • 2014-05-31
      • 2013-05-07
      • 1970-01-01
      • 2018-03-31
      • 2014-07-05
      • 2010-11-12
      • 2012-08-31
      • 1970-01-01
      相关资源
      最近更新 更多