网站适用于Visual Studio,但不适用于IIS(用户没有permision)

时间:2012-03-20 14:24:27

标签: database iis web-deployment

我正在尝试在服务器中部署网站。但它没有用,它说用户没有权限。我尝试从Visual Studio在同一台服务器上运行它,没有任何改变它工作正常。我正在使用sql sever身份验证,我还将用户设置为dbowner。

这是我正在获取的错误消息:

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

我该如何解决?

1 个答案:

答案 0 :(得分:1)

错误是数据库权限错误。您是否在Web服务器指向的sql server上设置了适当的权限?此外,如果连接字符串位于web.config文件中,请确保它不指向本地数据库实例。