IIS — развертывание веб-сайта ASP.NET и подключения к базе данных

У меня есть веб-сайт, написанный на ASP.NET, и я пытаюсь развернуть его на Windows 7.

Я успешно развернул веб-сайт, и он работает нормально, пока я не попытаюсь получить доступ к странице, которая подключается к базе данных. Следующая ошибка отображается:

Ошибка сервера в приложении ‘/’


Не удается открыть базу данных «Банк», запрошенную при входе в систему. Ошибка входа.
Ошибка входа для пользователя «IIS APPPOOL \ ASP.NET v4.0».
Описание: во время выполнения текущего веб-запроса произошло необработанное исключение. Пожалуйста, просмотрите трассировку стека для получения дополнительной информации об ошибке и о том, где она возникла в коде.

Сведения об исключении: System.Data.SqlClient.SqlException: Не удается открыть базу данных «Банк», запрошенную при входе в систему. Ошибка входа.
Ошибка входа для пользователя «IIS APPPOOL \ ASP.NET v4.0».

Ошибка источника:
Во время выполнения текущего веб-запроса было сгенерировано необработанное исключение. Информация о происхождении и местонахождении исключения может быть идентифицирована с помощью трассировки стека исключений ниже.

Трассировки стека:

[SqlException (0x80131904): Невозможно открыть базу данных «Банк», запрошенную при входе в систему. Ошибка входа.
Ошибка входа для пользователя «IIS APPPOOL \ ASP.NET v4.0».] System.Data.SqlClient.SqlInternalConnection.OnError (исключение SqlException, логическое прерывание соединения) +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 (логический список enO) +53
System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover (ServerInfo serverInfo, String newPassword, логический redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, время ожидания TimeoutTimer) +6366878
System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist (SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, логический redirectedUserInstance) +6366793
System.Data.SqlClient.SqlInternalConnectionTds..ctor (идентификатор DbConnectionPoolIdentity, SqlConnectionString connectionOptions, поставщик объектаInfo, строка newPassword, SqlConnection owningObject, логический redirectedUserInstance) +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 externalConnection, DbConnectionFactory connectionFactory) +6372110
System.Data.SqlClient.SqlConnection.Open () +300
SQL_Injection_Vulnerable.
System.Web.UI.WebControls.ImageButton.OnClick (ImageClickEventArgs e) +187
System.Web.UI.WebControls.ImageButton.RaisePostBackEvent (String eventArgument) +165
System.Web.UI.Page.ProcessRequestMain (логическое значение includeStagesBeforeAsyncPoint, логическое значение includeStagesAfterAsyncPoint) +3707


Информация о версии: Microsoft .NET Framework Версия: 4.0.30319; ASP.NET версия: 4.0.30319.272

Я использовал следующую процедуру для развертывания сайта в IIS:

  1. Перейти к рабочему столу / Код / Info_Leakage_Vulnerable
  2. Копировать Info_Leakage_Vulnerable
  3. Зайдите в C: / inetpub / wwwroot
  4. Вставьте туда папку
  5. Откройте меню «Пуск»
  6. Тип инетмгр
  7. Открыть HOME-PC / Сайты
  8. Щелкните правой кнопкой мыши Сайты и выберите Добавить веб-сайт.

Название сайта = Info_Leakage_Vulnerable

Пул приложений = ASP.NET версии 4

Физический путь = Путь к папке в C: / inetpub / wwwroot / Info_Leakage_Vulnerable

Порт = 1000

  1. Щелкните правой кнопкой мыши Info_Leakage_Vulnerable в меню веб-сайтов и выберите «Перейти к просмотру содержимого».
  2. Нажмите HomePage.aspx и нажмите Обзор

Сайт отлично работает в Visual Studio. Проблемы, с которыми я сталкиваюсь, возникают при запуске сайта из IIS. Как я могу решить проблему с подключением базы данных, пожалуйста? Спасибо

1

Решение

Выполнить запрос ниже в master база данных. Вы должны создать логин для IIS APPPOOL\ASP.NET v4.0

CREATE LOGIN [IIS APPPOOL\ASP.NET v4.0] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
GO

CREATE LOGIN [NT AUTHORITY\NETWORK SERVICE] FROM WINDOWS WITH DEFAULT_DATABASE=[master], DEFAULT_LANGUAGE=[us_english]
GO

Если проблема не устранена после выполнения запроса, выполните следующие действия.

  1. В IIS выберите ASP.NET v4.0 пул приложений из Applications Pools
  2. Щелкните правой кнопкой мыши на ASP.NET v4.0 -> Выбрать Advanced Settings...
  3. В разделе Модель процесса измените значение Identity на LocalSystem,
  4. IISReset

Надеюсь это поможет.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]