Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

System.Data.SqlClient.SqlException: Cannot open database

Olá pessoal,

Estou tentando subir minha aplicação asp net mvc, só que agora que conseguir subir no IIS, quando tento logar no sistema com as credenciais, ele não está conseguindo conectar ao banco de dados, to aqui tentando a muito tempo e nada com muitas dicas na internet.

Segue erro da página completo:

Erro de Servidor no Aplicativo '/'.

Cannot open database "Cliente" requested by the login. The login failed.
Login failed for user 'WORKGROUP\DESKTOP-9GPMUV2$'.

Descrição: Ocorreu uma exceção sem tratamento durante a execução da atual solicitação da Web. Examine o rastreamento de pilha para obter mais informações sobre o erro e onde foi originado no código. 

Detalhes da Exceção: System.Data.SqlClient.SqlException: Cannot open database "Cliente" requested by the login. The login failed.
Login failed for user 'WORKGROUP\DESKTOP-9GPMUV2$'.

Erro de Origem: 


Linha 32: 
Linha 33:             Usuario usuarioLogin = null;
Linha 34:             bool senhaUsuario = false;
Linha 35:             
Linha 36:             foreach (var cliente in context.Cliente.ToList())

Arquivo de Origem: C:\Users\Lucas\source\repos\Recupera\ControlMVC\DAO\UsuarioDAO.cs    Linha: 34 

Rastreamento de Pilha: 


[SqlException (0x80131904): Cannot open database "Cliente" requested by the login. The login failed.
Login failed for user 'WORKGROUP\DESKTOP-9GPMUV2$'.]
   System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, SqlCredential credential, Object providerInfo, String newPassword, SecureString newSecurePassword, Boolean redirectedUserInstance, SqlConnectionString userConnectionOptions, SessionData reconnectSessionData, DbConnectionPool pool, String accessToken, Boolean applyTransientFaultHandling) +1380
   ... tem mais da stacktrace se precisar colo mais...
4 respostas

Olá Lucas,

como está a string de conexão que está sendo usada no IIS? Você passou o User Id e o Password do banco de dados usado pelo servidor?

Olá Lucas,

Estou usando o EF Core, minha string de conexão no projeto está assim :

optionsBuilder.UseSqlServer(@"Server=DESKTOP-9GPMUV2;Database=Cliente;Trusted_Connection=True;");

Já no IIS seria na aba "Cadeias de Conexão" certo? Se sim está assim:

Server=DESKTOP-9GPMUV2;Database=Cliente;Integrated Security=True
solução!

Você precisa criar uma permissão do usuário para o integrated security funcionar. Neste link o cara mostra como adicionar este nível de permissão para o IIS.

Valeu Lucas, me ajudou muito, eu consegui criar esse usuario do pool de aplicaticos no sgbd, e depois dei as permissões e passou! valeu de vdd ta muito travado nisso hahaha