【发布时间】:2012-10-29 23:28:28
【问题描述】:
我有一个用 ASP.NET 编写的网站,并试图在 Windows 7 上部署它。
我已经成功部署了网站并且它工作正常,直到我尝试访问连接到数据库的页面。显示如下错误:
“/”应用程序中的服务器错误。
无法打开登录请求的数据库“银行”。登录失败。 用户“IIS APPPOOL\ASP.NET v4.0”登录失败。 说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Data.SqlClient.SqlException:无法打开登录请求的数据库“银行”。登录失败。 用户“IIS APPPOOL\ASP.NET v4.0”登录失败。
来源错误: 在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。
堆栈跟踪:
[SqlException (0x80131904): 无法打开登录请求的数据库“银行”。登录失败。 用户 'IIS APPPOOL\ASP.NET v4.0' 登录失败。] System.Data.SqlClient.SqlInternalConnection.OnError(SqlException 异常, Boolean breakConnection) +6351920 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() +412 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +1363 System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +53 System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout) +6366878 System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance) +6366793 System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity 标识,SqlConnectionString connectionOptions,对象 providerInfo,字符串 newPassword,SqlConnection owningObject,布尔重定向用户实例)+352 System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions 选项,对象 poolGroupProviderInfo,DbConnectionPool 池,DbConnection owningConnection)+831 System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection,DbConnectionPool 池,DbConnectionOptions 选项)+49 System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject) +6368598 System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject) +78 System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject) +2194 System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) +89 System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) +6372110 System.Data.SqlClient.SqlConnection.Open() +300 SQL_Injection_Vulnerable.LogIn.ImageButton_LogIn_Click(Object sender, ImageClickEventArgs e) in C:\Users\Matthew\Desktop\Thesis\Code\Vulnerability 6 - Information Leakage\Version 16 - Changed Connection Strings\Info_Leakage_Vulnerable\Info_Leakage_Vulnerable\LogIn.aspx.cs:51 System.Web.UI.WebControls.ImageButton.OnClick(ImageClickEventArgs e) +187 System.Web.UI.WebControls.ImageButton.RaisePostBackEvent(字符串事件参数)+165 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3707
版本信息:Microsoft .NET Framework 版本:4.0.30319; ASP.NET 版本:4.0.30319.272
我使用以下过程在 IIS 中部署网站:
- 转到桌面/代码/Info_Leakage_Vulnerable
- 复制 Info_Leakage_Vulnerable
- 转到 C:/inetpub/wwwroot
- 将文件夹粘贴到那里
- 打开开始菜单
- 输入 inetmgr
- 打开 HOME-PC/站点
- 右键单击站点,然后单击添加网站
站点名称 = Info_Leakage_Vulnerable
应用程序池 = ASP.NET 版本 4
物理路径 = C:/inetpub/wwwroot/Info_Leakage_Vulnerable 中文件夹的路径
端口 = 1000
- 右键单击网站菜单中的 Info_Leakage_Vulnerable,然后单击切换到内容视图
- 点击 HomePage.aspx 并点击浏览
该网站在 Visual Studio 中完美运行。从 IIS 运行网站时,我遇到的问题突然出现。请问如何解决数据库连接的问题?谢谢
【问题讨论】:
标签: c++ asp.net database connectivity