我正在尝试在服务器中部署一个网站。但它不起作用——它说用户并没有权限。我试着在同一台服务器上从Visual studio运行它,没有任何更改,它运行得很好。我使用的是sql服务器身份验证,我还将用户设置为数据库所有者。
这是我得到的错误消息:
User does not have permission to perform this action.
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: User does not have permission to
perform this action.
Source Error:
An unhandled exception was generated during the execution of the current web request.
Information regarding the origin and location of the exception can be identified using
the exception stack trace below.
Stack Trace:
[SqlException (0x80131904): User does not have permission to perform this action.]
System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean
breakConnection) +6333696
System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning() +412
System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler,
SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject
stateObj) +1363
System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) +53
System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo,
String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject,
SqlConnectionString connectionOptions, TimeoutTimer timeout) +6348638
System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection
owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String
newPassword, Boolean redirectedUserInstance) +6348553
System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity,
SqlConnectionString connectionOptions, Object providerInfo, String newPassword,
SqlConnection owningObject, Boolean redirectedUserInstance) +352
System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions
options,
Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
+506
System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection
owningConnection, DbConnectionPool pool, DbConnectionOptions options) +49
System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
+6350358
System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
+78
System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
+1938
System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection
owningConnection) +89
System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection
outerConnection,
DbConnectionFactory connectionFactory) +6353246
System.Data.SqlClient.SqlConnection.Open() +300
System.Web.DataAccess.SqlConnectionHolder.Open(HttpContext context, Boolean
revertImpersonate) +150
System.Web.DataAccess.SqlConnectionHelper.GetConnection(String connectionString,
Boolean
revertImpersonation) +4712943
System.Web.Security.SqlMembershipProvider.GetPasswordWithFormat(String username,
Boolean
updateLastLoginActivityDate, Int32& status, String& password, Int32& passwordFormat,
String& passwordSalt, Int32& failedPasswordAttemptCount, Int32&
failedPasswordAnswerAttemptCount, Boolean& isApproved, DateTime& lastLoginDate,
DateTime&
lastActivityDate) +3729431
System.Web.Security.SqlMembershipProvider.CheckPassword(String username, String
password, Boolean updateLastLoginActivityDate, Boolean failIfNotApproved, String& salt,
Int32& passwordFormat) +189
System.Web.Security.SqlMembershipProvider.ValidateUser(String username, String
password)
+202
System.Web.UI.WebControls.Login.AuthenticateUsingMembershipProvider(
AuthenticateEventArgs e) +225
System.Web.UI.WebControls.Login.AttemptLogin() +166
System.Web.UI.WebControls.Login.OnBubbleEvent(Object source, EventArgs e) +93
System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +52
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean
includeStagesAfterAsyncPoint) +3707
我该怎么修?
错误是数据库权限错误。您是否在Web服务器所指向的sql server上设置了相应的权限?此外,如果连接字符串在web.config文件中,请确保它没有指向本地数据库实例。