LeDaouk
asked on
ERROR [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user
Hi Experts,
I have 2 servers using win 2003 server and IIS 6.0 and ASP.NET 2.0.50727
and I have this code for an ODBC Connection
Dim CN As New Data.Odbc.OdbcConnection
CN.ConnectionString = ProviderName=System.Data.O DBC;DSN=OD BCNAME;Dat abase=DATA BASENAME;I ntegrated Security=True;Persist Security Info=True;TRUSTED_CONNECTI ON=YES;
CN.Open()
It is working on a server and on the other it is gaving the following error:
ERROR [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.
ERROR [01S00] [Microsoft][ODBC SQL Server Driver]Invalid connection string attribute
ERROR [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.
ERROR [01S00] [Microsoft][ODBC SQL Server Driver]Invalid connection string attribute
And the ODBC on both servers is tested and works normaly and serveral applications using VB6 and VB.net and Crystal reports 7.
So, what is the problem?
- ASP.NET configuration?
- IIS Configuration?
- Server Configuration?
- Project configuration?
any Ideas?
I have 2 servers using win 2003 server and IIS 6.0 and ASP.NET 2.0.50727
and I have this code for an ODBC Connection
Dim CN As New Data.Odbc.OdbcConnection
CN.ConnectionString = ProviderName=System.Data.O
CN.Open()
It is working on a server and on the other it is gaving the following error:
ERROR [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.
ERROR [01S00] [Microsoft][ODBC SQL Server Driver]Invalid connection string attribute
ERROR [28000] [Microsoft][ODBC SQL Server Driver][SQL Server]Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.
ERROR [01S00] [Microsoft][ODBC SQL Server Driver]Invalid connection string attribute
And the ODBC on both servers is tested and works normaly and serveral applications using VB6 and VB.net and Crystal reports 7.
So, what is the problem?
- ASP.NET configuration?
- IIS Configuration?
- Server Configuration?
- Project configuration?
any Ideas?
ASKER
thanx Tim,
I triet to use SQL Server connection It gave me the same problem.
So how to do it by code?
I triet to use SQL Server connection It gave me the same problem.
So how to do it by code?
LeDaouk,
Ok, first start with a
Imports System.Data.SqlClient
Then instead of your odbc connection and related stuff use:
Dim CN as SqlConnection = New SqlConnection
CN.ConnectionString = "Data Source=<SERVERNAME>;Initia l Catalog=<DATABASENAME>;Use r ID=<SQLUSERID>;Password=<P ASSWORD>;"
CN.Open()
You can then use the SQL specific SqlCommand, SqlDataReader etc in place of your ODBCCommand and ODBCDataReader objects.
Tim
Ok, first start with a
Imports System.Data.SqlClient
Then instead of your odbc connection and related stuff use:
Dim CN as SqlConnection = New SqlConnection
CN.ConnectionString = "Data Source=<SERVERNAME>;Initia
CN.Open()
You can then use the SQL specific SqlCommand, SqlDataReader etc in place of your ODBCCommand and ODBCDataReader objects.
Tim
ASKER
I tried this befrore and It gave the same result.
(Sorry But I'm new in ASP.NET)
(Sorry But I'm new in ASP.NET)
LeDaouk,
That's ok, I assume you are giving the correct sql server username and password here, not a domain user account. You could try for now with the sa user (if you know this) and then set up a specific user with the appropriate rights for your application when you know it works.
CN.ConnectionString = "Data Source=<SERVERNAME>;Initia l Catalog=<DATABASENAME>;Use r ID=sa;Password=sapwd;"
Tim
That's ok, I assume you are giving the correct sql server username and password here, not a domain user account. You could try for now with the sa user (if you know this) and then set up a specific user with the appropriate rights for your application when you know it works.
CN.ConnectionString = "Data Source=<SERVERNAME>;Initia
Tim
ASKER
I tried now :
CN.ConnectionString = "Data Source=<SERVERNAME>;Initia l Catalog=<DATABASENAME>;Use r ID=sa;Password=sapwd;Trust ed_Connect ion = yes;"
and I had the following error:
Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.
is there somthing that I should do in the sqlserver?
CN.ConnectionString = "Data Source=<SERVERNAME>;Initia
and I had the following error:
Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.
is there somthing that I should do in the sqlserver?
LeDaouk,
How do you have the server configured? Windows authentication only or mixed mode authentication? If windows only then you need to change that.
Tim
How do you have the server configured? Windows authentication only or mixed mode authentication? If windows only then you need to change that.
Tim
ASKER
mixed
and I told the application with the same ODBC is working on a server and it is not on another
and I told the application with the same ODBC is working on a server and it is not on another
ASKER
I had the sam problem when I tried to run the application on a Windows XP IIS.
is there something common between these 2 cases?
is there something common between these 2 cases?
do you add account aspnet to SQLServer?
In SQLServer, Try set aspnet 's permisson to Sysadmin!
In SQLServer, Try set aspnet 's permisson to Sysadmin!
ASKER
do u mean to create a user called aspnet in sqlserver or I have to add an account called aspnet from somewhere to sqlserver???
Account aspnet is account built-in for execute asp.net apps
you have to add an account called aspnet from your computer (not create new)
you have to add an account called aspnet from your computer (not create new)
ASKER
I tried this now but nothing happen
and I tried to configure the ODBC to use a sql server account and I had the same problem
and I tried to configure the ODBC to use a sql server account and I had the same problem
ASKER
note that the sql server is installed on a remote server
so A SERVER (IIS) and B SERVER (IIS) and C SERVER (SQL SERVER)
the application on the server A is working but on the Server B is not working
so A SERVER (IIS) and B SERVER (IIS) and C SERVER (SQL SERVER)
the application on the server A is working but on the Server B is not working
you try add an account called aspnet to SQLServer from Server B (ex: ServerB\Aspnet)
ASKER
yep but i Failed, and error popup: usernot found
I tried to add the aspnet one on the C, it was successfully added but the application still not working.
and note that there is no ASPNET user for the server A.
Is there something in web.config I should do???
I tried to add the aspnet one on the C, it was successfully added but the application still not working.
and note that there is no ASPNET user for the server A.
Is there something in web.config I should do???
ASKER
aaaaaaaaaaaaaaa
I found it
it was the internet Data connector not Allowed on the IIS on B server.
Thanx any way guys.
I found it
it was the internet Data connector not Allowed on the IIS on B server.
Thanx any way guys.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
A bunch of things really, ASP.NET firstly provides a built-in set of SQL specific objects which will perform better than using ODBC.
Secondly, the reason it fails is that the aspnet worker process is probably running under the default ASPNET local user account. This causes integrated security to fail. There are basically two ways around this. Either you need your asp.net application to impersonate a valid domain user or you need to use sql standard security to make the connection.
Using impersonation is effectively relaxing the security on your IIS server as an unauthorised user may be able to gain access using the credentials supplied by the application.
Using SQL authentication may expose the password for that sql user though this may be less of a risk and it can of course be obfuscated.
Tim Cottee