Hello-
I've just upgraded one of my sites to DNN 5.2.1 and ran into an error I'm finding interesting:
Upgrade Status Report
00:00:01.359 - Upgrading to Version: 05.02.01
00:00:07.296 - Executing Script: 05.02.01.SqlDataProvider Error! (see 05.02.01.log for more information)
00:00:18.812 - Executing Application Upgrades: 05.02.01
...
When I view the site logs via Host > Host Settings and select '05.02.01' from the 'View Upgrade Log for Version:' drop down list, I'm presented with the following:
System.Data.SqlClient.SqlException: Cannot find the user '$h@unW@1k3r', because it does not exist or you do not have permission.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlCommand.RunExecuteNonQueryTds(String methodName, Boolean async)
at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)
at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(SqlConnection connection, CommandType commandType, String commandText, SqlParameter[] commandParameters)
at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText, SqlParameter[] commandParameters)
at Microsoft.ApplicationBlocks.Data.SqlHelper.ExecuteNonQuery(String connectionString, CommandType commandType, String commandText)
at DotNetNuke.Data.SqlDataProvider.GrantStoredProceduresPermission(String Permission, String LoginOrRole)
GRANT EXECUTE TO [$h@unW@1k3r]
This seems wrong as user $h@unW@1k3r is the user defined in the connection string and is the same user that has been used since the site went live almost 5 years ago.
FYI - $h@unW@1k3r isn't the real user defined in my DB. However, I'm guessing someone might get a kick out of that :)