Ошибка входа для пользователя 'sa'.Причина: не связан с доверенным SQL - PullRequest
1 голос
/ 28 декабря 2011

Я разрабатываю службу Windows для передачи данных из одной удаленной базы данных в другую базу данных.

При попытке подключиться к базе данных появляется следующая ошибка.Эта строка подключения отлично работает из веб-приложения.

Я получаю эту ошибку только при попытке подключиться к базе данных с помощью службы Windows.

System.Data.SqlClient.SqlException: Login failed for user 'sa'. Reason: Not associated with a trusted SQL Server connection.
   at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
   at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
   at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
   at System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
   at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject)
   at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, Int64 timerStart)
   at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
   at System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
   at System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
   at System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
   at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
   at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
   at System.Data.SqlClient.SqlConnection.Open()
   at WindowsService.Program.timer1_Elapsed(Object sender, EventArgs e) in E:\Trigger\WindowsService\WindowsService\Program.cs:line 93

Строка подключения, которую я использую:

SqlConnection con = new SqlConnection("Data Source=TAG2;Initial Catalog=A10;User ID=sa; pwd=root;Integrated Security=False");"

Ответы [ 3 ]

3 голосов
/ 28 декабря 2011

Сервер sql, скорее всего, установлен в режим «только аутентификация Windows».

См. Эту ссылку MSDN , чтобы устранить ошибку.

1 голос
/ 04 декабря 2013

В качестве установки по умолчанию, я думаю, она разрешена только для проверки подлинности Windows. Однако, используя Sql Server Management Studio (если используется), вы можете включить Sql Server Authentication. Перейдите по ссылке здесь http://cherupally.blogspot.com.au/2009/04/user-is-not-associated-with-trusted-sql.html

0 голосов
/ 28 декабря 2011

Попробуйте проверить настройки в вашей базе данных - вам, вероятно, нужно изменить методы аутентификации с «Только Windows» на «Аутентификация SQL»

Вы можете прочитать подробнее здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...