MSSQL 错误 'The underlying provider failed on Open' IIS 部署

MSSQL Error 'The underlying provider failed on Open' IIS deployment

你好,我有一个使用 entity framework 的 API 网络服务运行没有问题,但是当我在同一台机器的 iis 中部署它时,我得到了这个执行:

Exception: The underlying provider failed on Open.Inner Exception: System.Data.SqlClient.SqlException (0x80131904): Login failed for user 'GRUPOTOTAL99\GTLTSISW13W10$'.\r\n   en 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, SqlAuthenticationProviderManager sqlAuthProviderManager)\r\n   en System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, DbConnectionPoolKey poolKey, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection, DbConnectionOptions userOptions)\r\n   en System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnectionPool pool, DbConnection owningObject, DbConnectionOptions options, DbConnectionPoolKey poolKey, DbConnectionOptions userOptions)\r\n   en System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)\r\n   en System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject, DbConnectionOptions userOptions, DbConnectionInternal oldConnection)\r\n   en System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, UInt32 waitForMultipleObjectsTimeout, Boolean allowCreate, Boolean onlyOneCheckConnection, DbConnectionOptions userOptions, DbConnectionInternal& connection)\r\n   en System.Data.ProviderBase.DbConnectionPool.TryGetConnection(DbConnection owningObject, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal& connection)\r\n   en System.Data.ProviderBase.DbConnectionFactory.TryGetConnection(DbConnection owningConnection, TaskCompletionSource`1 retry, DbConnectionOptions userOptions, DbConnectionInternal oldConnection, DbConnectionInternal& connection)\r\n   en System.Data.ProviderBase.DbConnectionInternal.TryOpenConnectionInternal(DbConnection outerConnection, DbConnectionFactory connectionFactory, TaskCompletionSource`1 retry, DbConnectionOptions userOptions)\r\n   en System.Data.SqlClient.SqlConnection.TryOpenInner(TaskCompletionSource`1 retry)\r\n   en System.Data.SqlClient.SqlConnection.TryOpen(TaskCompletionSource`1 retry)\r\n   en System.Data.SqlClient.SqlConnection.Open()\r\n   en System.Data.Entity.Infrastructure.Interception.InternalDispatcher`1.Dispatch[TTarget,TInterceptionContext](TTarget target, Action`2 operation, TInterceptionContext interceptionContext, Action`3 executing, Action`3 executed)\r\n   en System.Data.Entity.Infrastructure.Interception.DbConnectionDispatcher.Open(DbConnection connection, DbInterceptionContext interceptionContext)\r\n   en System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.<>c__DisplayClass1.<Execute>b__0()\r\n   en System.Data.Entity.SqlServer.DefaultSqlExecutionStrategy.Execute[TResult](Func`1 operation)\r\n   en System.Data.Entity.Core.EntityClient.EntityConnection.Open()\r\nClientConnectionId:9a382a4d-6baf-47f6-8283-f9eb07d6c73d\r\nError Number:18456,State:1,Class:14","data":null,"result":0}

它说登录失败,我可以更改任何选项或配置文件以使其正常工作吗?

这是我使用 windows 身份验证的连接字符串

<connectionStrings>
<add name="AutogestionEntities" connectionString="metadata=res://*/Models.EntityDB.csdl|res://*/Models.EntityDB.ssdl|res://*/Models.EntityDB.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=192.168.0.215\devinst01;initial catalog=Autogestion;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" /> 

您需要在 SQL 服务器中为 API 的应用程序池创建一个登录。