【问题标题】:SQL Server Authentication for asp.net web app用于 asp.net Web 应用程序的 SQL Server 身份验证
【发布时间】:2013-07-24 16:36:27
【问题描述】:

我正在开发一个将托管在 godaddy 上的 asp.net mvc 4 网络应用程序。我有开发使用 Active Directory 完成身份验证的 Intranet 应用程序的经验。

我的问题是有没有办法让 Windows 身份验证为像 godaddy 这样的主机工作?我知道这可以通过创建一个所谓的“虚拟帐户”然后以该身份运行应用程序池来完成,但由于我无法访问这些类型的选项,还有哪些其他方法(如果有)可用?

我花了很多时间在谷歌上搜索,但找不到任何可以回答我的问题的东西。到目前为止我找到的最好的解释是这个

"the best way to connect sql server (Windows authentication vs SQL Server authentication) for asp.net app"

我知道我可以只使用 SQL Server 身份验证,但我遇到的主要问题是必须在某人可以访问的连接字符串(加密或其他方式)中指定密码。如果我在应用程序代码中使用密码,则每次更改密码时都必须重新编译。甚至上述 SO 问题的答案都表示使用 SQL Server 身份验证不好。

如果没有办法让 Windows 身份验证工作,那么安全使用连接字符串进行 sql server 身份验证的最佳方法是什么?

任何帮助将不胜感激。

更新:好的,我刚打电话给 godaddy,他们不允许 Windows 身份验证。这个问题对于有类似问题的人可能仍然有帮助,特别是如果我们可以探索各种方法来保护连接字符串。

【问题讨论】:

  • 为什么不请教老爹支持者呢?我的猜测是,如果您使用的是共享服务器,您将无法启用 Windows 身份验证。
  • @rontornambe 你是对的。

标签: asp.net sql-server database entity-framework asp.net-mvc-4


【解决方案1】:

回答您的问题:安全地使用连接字符串进行 sql server 身份验证的最佳方法是什么

我认为最好的方法是在 web.config 本身中加密整个 <ConnectionString>

此链接:http://www.beansoftware.com/ASP.NET-Tutorials/Encrypting-Connection-String.aspx 擅长以编程方式和使用命令行工具解释加密过程。

或参考 MSDN here

加密后,您可以照常访问您的连接字符串:

string conn = ConfigurationManager.ConnectionStrings["cn1"].ConnectionString;

您不必在应用程序中编写任何代码来解密此连接字符串,ASP.NET 会自动对其进行解密。

【讨论】:

    猜你喜欢
    • 2023-03-11
    • 2011-01-26
    • 2020-03-04
    • 2011-08-14
    • 1970-01-01
    • 1970-01-01
    • 2022-10-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多