Eu criei uma conta de login no meu servidor localhost\sql2008 (ex. User123)
Mapeado para base de dados (padrão)
O modo de autenticação no SQL Server está definido para ambos (Windows e SQL)
Mas o login no SQL Server falha com a seguinte mensagem (para User123)
Nota: Verifique várias vezes se o UserName / Password foi digitado correctamente.
Detalhes do erro:
Login falhou para o usuário 'User123' (Net.SqlClient Data Provider)
Nome do servidor : localhost\sql2008 Error Número: 18456 Severidade : 14 Estado : 1 Número de linha : 65536
qualquer ajuda nisto, por favor.
Você precisa habilitar a Autenticação SQL Server:
Por padrão, a mensagem de erro de falha de login não é nada além de uma conexão de usuário cliente ter sido recusada pelo servidor devido a um descompasso de credenciais de login. A primeira tarefa que você pode verificar é se esse usuário tem privilégios relevantes naquela instância do SQL Server e na base de dados relevante também, isso é bom. Obviamente, se os privilégios necessários não foram definidos, então você precisa corrigir esse problema, concedendo privilégios relevantes para o login desse usuário.
Embora se esse usuário tiver concessões relevantes no banco de dados & servidor se o servidor encontrar quaisquer problemas de credenciais para esse login, então ele irá impedir em conceder a autenticação de volta ao SQL Server, o cliente irá receber a seguinte mensagem de erro:
Msg 18456, Level 14, State 1, Server <ServerName>, Line 1
Login failed for user '<Name>'
Ok agora o que, olhando para a mensagem de erro você sente que isto não é descritivo para entender o Nível & estado. Por padrão o erro do Sistema Operacional irá mostrar 'State' como 1 independentemente da natureza dos problemas na autenticação do login. Então para investigar mais, você também precisa olhar o log de erro da instância relevante do SQL Server para mais informações sobre Severidade & estado deste erro. Você pode olhar para uma entrada correspondente no log como:
2007-05-17 00:12:00.34 Logon Error: 18456, Severity: 14, State: 8.
or
2007-05-17 00:12:00.34 Logon Login failed for user '<user name>'.
Como definido acima da Severidade e do Amplificador; as colunas de estado sobre o erro são fundamentais para encontrar a reflexão precisa para a origem do problema. No número de erro 8 acima para estado indica falha de autenticação devido ao descasamento de senha. Os livros online referem-se: Por padrão, mensagens definidas pelo usuário de gravidade inferior a 19 não são enviadas para o log de aplicativos do Microsoft Windows quando elas ocorrem. As mensagens definidas pelo usuário de gravidade inferior a 19 não acionam, portanto, alertas do SQL Server Agent.
Sung Lee, Program Manager in SQL Server Protocols (Dev.team) delineou mais informações sobre a descrição do estado de erro: Os estados de erro comuns e suas descrições são fornecidos na tabela a seguir:
ERROR STATE ERROR DESCRIPTION
------------------------------------------------------------------------------
2 and 5 Invalid userid
6 Attempt to use a Windows login name with SQL Authentication
7 Login disabled and password mismatch
8 Password mismatch
9 Invalid password
11 and 12 Valid login but server access failure
13 SQL Server service paused
18 Change password required
Well I'm not finished yet, what would you do in case of error:
2007-05-17 00:12:00.34 Logon Login failed for user '<user name>'.
Você pode ver que não há nenhuma severidade ou nível de estado definido a partir daquela instância do SQL Server's log de erros. Então a próxima opção de solução de problemas é olhar para o log de segurança do Event Viewer's [editar porque a captura de tela está faltando, mas você obtém o
ideia, procure no registo de eventos por eventos interessantes].
Eu tinha este mesmo problema, por mais que o meu fosse porque eu não tinha't definido a autenticação do servidor para "SQL Server e modo de autenticação do Windows" (que você tinha) Eu só queria mencioná-lo aqui no caso de alguém o ter perdido na sua pergunta.
Você pode acessar isso por