c# - Integrated Security=SSPI 是否需要管理员组中的 Windows 用户?

标签 c# sql-server-2008

我在使用普通用户和 sql express 数据库测试我的 c# WinForms 应用程序时遇到问题。我认为连接字符串中的 SSPI 是问题所在。

编辑:问题是连接无法打开。这是我以普通用户身份登录时遇到的异常(我没有以管理员用户身份正确打开它)。

Login failed for user 'AsusWin7-64\SomeUser'. at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() 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, TimeoutTimer timeout, SqlConnection owningObject) at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout) at System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, 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()

最佳答案

标题中提出的问题的答案是否定的,SSPI 不需要管理员组中的 Windows 用户。您遇到的失败/错误的确切性质是什么?

*编辑:*您需要确保 SQL Express 数据库配置为接受 Windows 集成身份验证,然后将该本地计算机用户定义到数据库中,并具有相应数据库的权限(一个或多个)、表格和程序。

关于c# - Integrated Security=SSPI 是否需要管理员组中的 Windows 用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15422791/

相关文章:

sql-server - SQL Server 2008 数据库镜像疯狂

c# - 有没有一种工具可以自动从用户控件生成网页控件? (包括 HTML 标记)

c# - Common.Logging 包更新与 Log4Net 不兼容

c# - 对子类的子类使用鉴别器

c# - 从sql调用过程

sql-server-2008 - 如何将值从动态 SQL 存储过程返回到 Entity Framework ?

根据收费日期选择有效成本费率的 SQL 查询

c# - ListBox VirtualizingStackPanel.VirtualizationMode ="Recycling"在 Windows Phone 7.5 中不起作用

sql - 在 SQL Server 中选择 if 条件值

sql-server - 将多行合并到多列列表中