We're having some users get the following message, periodically, when using an internal, home-grown SQL Server application.
"You do not have sufficient credentials in SQL Server to use this program. Please contact the system admin."
Now I've searched all over the place, and I cannot find ANYTHING referencing this message. I see lots that reference one that uses the word "privileges", but not one with the word "credentials". I have no idea what this is about, or why no one else has, apparently, ever seen this message. I have no idea what this is about, or what to do about it. (I'm attaching a screen shot of the message.)
Not sure it's a custom message, per se. We'll have to talk with the developer, who is aware of the problem so we'd have thought she might have mentioned something if she knew she coded it. Who knows. But your last suggestion is along the lines of what we're thinking. We think it's a problem with the NETLOGON service, which is throwing events showing that it is losing its connection. It eventually regains it, though. We're trying a few things to see if we can figure out what's going on. I'll keep you posted. Thanks. (I'm a network guy, not a database guy.)
Vitor Montalvão
It's not a SQL Server error message so it must really be a custom error from the application. Look what it says: "You do not have sufficient credentials in SQL Server to use this program. Please contact the system admin."
With more than 20 years experience, I know what NETLOGON is..
This was the short form of:
Explain why do you think the NETLOGON process has something to do with it.
Cause "SQL Server credentials" - either SQL Authentication or Windows Authentication - has nothing to do with NETLOGON.
SQL Authentication means additional user/password credentials, Windows Authentication means Kerberos delegation. Any error here should throw a different error message.
Nakul Vachhrajani
Can you ask the developer if they are checking for any specific permissions that a user must have on the database? Also, if the user needs access on any system databases?
It is very easy to use a function or access a view that needs either administrator rights or at least access to more than one database. In the production deployment, users are fairly restricted and typically have only the required access to the required database. Hence, if the application is trying to use something that's locked out for the user, the application may be throwing this custom error about "SQL Server Credentials".
@ste5an - No offense intended. It's something that we have noticed a possible correlation with, on the machines that have problems. We were thinking that, if that service crashes on those machines, they might lose their ability to authenticate to the SQL server, which might trigger the error. That was the thought. Now maybe it's incorrect, but I didn't think it was entirely crazy.
Based on this discussion, we did go back to the developer, who did acknowledge that the original error was her own text. She said that it is being triggered by an underlying connection error to SQL Server. The error she thinks it's tied to is one that says:
Failed to open a connection to the database
"A network-related or instance-specific error occurred while establishing a connection the SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error 0 - the wait operation times out.)"
Check the connections and try again.
The problems we see are:
It's not happening on all machines. And even the ones it does seem to affect, don't have it happen all the time, or even at the same time.
It doesn't happen consistently.
We've checked cables to the affected computers. They all test out fine.
So it seems to be a "connection" issue, but there doesn't seem to be a connection problem. We were thinking about whether changing timeout periods might help. But mostly, we're lost as to how to explain this problem. Any other thoughts?
Vitor Montalvão
Changing the timeout won't solve this. You said that's not happening on all machines but in those machines that are happening, they have any difference from the others?