onde posso encontrar o usuário neste erro do IIS 'Falha no login do usuário' IIS APPOOL\Web2'

onde posso encontrar o usuário neste erro do IIS 'Falha no login do usuário' IIS APPOOL\Web2'

Eu encontro o seguinte erro:

Cannot open database "testbase" requested by the login. The login failed.
Login failed for user 'IIS APPPOOL\Web2'.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.Data.SqlClient.SqlException: Cannot open database "testbase" requested by the login. The login failed.
Login failed for user 'IIS APPPOOL\Web2'.

Então, onde posso dar permissão Web2 a esse usuário? (A propósito, o servidor não possui esse usuário, Web2mas existe uma pasta chamada Web2localizada na pasta wwwroot.)

Procuro respostas, mas todas falharam da seguinte forma:

[1] Adicione o usuário IUSRà pasta e conceda permissão de leitura.

[2]http://www.codekicks.com/2008/11/cannot-open-database-northwind.html

[3]http://blog.sqlauthority.com/2009/08/20/sql-server-fix-error-cannot-open-database-requested-by-the-login-the-login-failed-login-failed-for- usuário-nt-autoridade-serviço de rede/

Responder1

Você precisa adicionar um usuário ao SQL Server com o nome de usuário "IIS APPPOOL\Web2" e conceder a esse usuário acesso ao banco de dados. Observe que você vainãoveja este nome de usuário na pesquisa, mas vocêpoderveja-o mudar para sublinhado se você clicar em "verificar nomes".

O usuário realmente não existe na máquina, exceto para gerenciar as permissões do pool de aplicativos.

Como alternativa, você pode configurar o pool de aplicativos para ser executado como um usuário diferente.

Para mais informações, vejahttp://blogs.iis.net/webdevelopertips/archive/2009/10/02/tip-98-did-you-know-the-default-application-pool-identity-in-iis-7-5-windows- 7-alterado-de-networkservice-to-apppoolidentity.aspxehttp://learn.iis.net/page.aspx/624/application-pool-identities/


Aqui está um exemplo da lista de logins do SQL Server:

Usuários do SQL Server

Aqui está um exemplo de lista de logins de um banco de dados:

Usuários de banco de dados

Aqui estão os detalhes do usuário do banco de dados: (Observe que ambas as caixas têm o mesmo nome. A segunda caixa deve corresponder a um nome de login da lista Logins do SQL Server.)

Detalhes do usuário do banco de dados


Você também pode tentar usar código em vez da GUI:

USE [master]
GO
CREATE LOGIN [IIS APPPOOL\Web2] FROM WINDOWS WITH DEFAULT_DATABASE=[testbase]
GO

USE [testbase]
GO
CREATE USER [IIS APPPOOL\Web2] FOR LOGIN [IIS APPPOOL\Web2]
GO
EXEC sp_addrolemember N'db_owner', N'IIS APPPOOL\Web2'
GO

Atribuí permissões de proprietário, mas seu aplicativo pode conseguir obter permissões mais baixas. Geralmente é considerado uma boa prática conceder as permissões mais baixas possíveis.

informação relacionada