【问题标题】:Asp.net encrypt sqlConnectionString in sessionStateAsp.net 在 sessionState 中加密 sqlConnectionString
【发布时间】:2020-07-23 15:14:09
【问题描述】:

我在我的应用程序中使用 sessionState mode = "SQLServer"。有什么方法可以加密在 web.config 中传递的连接字符串?

【问题讨论】:

    标签: c# asp.net session-state


    【解决方案1】:

    要加密应用程序之间的 sql server 连接,您只需添加

    encrypt=true
    

    到连接字符串,例如:

    "Server=##.##.##.##,1092;Database=dbname;uid=username;pwd=password;encrypt=true"
    

    要加密 web.config 中的字符串,请参阅how-to-encrypt-connection-string-in-web.config

    【讨论】:

      【解决方案2】:

      我处于同样的位置,我也找不到任何答案。接受的答案也没有回应我认为提出的问题。经过一番研究,我做了以下解决问题并加密了 web.config 的 sessionState 节点 connectionString

      加密:

      您可以按照以下步骤加密 web.config 的特定部分:

      • administrator 运行命令提示符

      • 执行命令:

         cd C:\Windows\Microsoft.NET\Framework\v4.0.30319
        
      • 执行命令:

      ASPNET_REGIIS -pef "system.web/sessionState" "PhysicalPathOfWebsiteThatHasWebConfigFile"

      解密:

      同样,如果您想解密 web.config 中的特定节点,请按照上述相同步骤,在最后一步将 -pef 替换为 -pdf,该实用程序将解密特定节点

      以上命令说明:

      1. ASPNET_REGIIS:取自官方MSDN,您可以使用 ASP.NET IIS 注册工具 (Aspnet_regiis.exe) 来加密或解密 Web 配置文件的部分。处理 Web.config 文件时,ASP.NET 将自动解密加密的配置元素。 -pef 告诉您要使用它来加密 web.config 中的特定部分。它有其他用途,在官方MSDN中解释过

      2. system.web/sessionState 是您要加密的特定节点。

      3. PhysicalPathOfWebsiteThatHasWebConfigFile 是应用程序的物理路径(web.config 所在的位置)。请不要在路径末尾添加额外的“\”。

      其他参考链接:

      https://docs.microsoft.com/en-us/previous-versions/aspnet/zhhddkxy(v=vs.100)

      What does aspnet_regiis.exe do

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-04-19
        • 2010-11-01
        • 1970-01-01
        • 2018-01-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多