Error: login failed for user, in entity framework 1.0
-
Hi all, In our ASP.Net application we are using Entity Framework 1.0, when I am trying to get data from entity framework, I am getting the following error (The underlying provider failed on Open and in inner exception login failed for user). And I am using SQL server 2008 R2 and Windows Authntication. In some forum, it is suggested to create User Id and Password for the AppPool and then add the same user id and password to the database also then change the connection string. That is not an option for me. My SQL Server is remote for my application from the development itself. I dont have local SQL Server, only client on my machine and Windows authentication is a must for me. Can anybody please help me in resolving this issue at Entity Framework side or .Net side insteam of changing something in the Database, because its not owned by us.
Important: After I debugged it for a while I found that Database value is coming as empty string for the context's connection string object. Is it expected behavior entity frame work. Please can some body explain me. What would cause entity framework to get database name as empty string? Please help me in resolving this issue. and whats the importance of , is the database value picked depending on this? Should I change its value if I just have the client on my machine and SQL Server Database instance is running on the remote server. But still I connect the SQL Server using Windows Authentication. Please somebody help me in resolving this.
And I am getting the following exception also: System.Data.EntityException: The underlying provider failed on Open. ---> System.Data.SqlClient.SqlException: Login failed for user 'WADS\LNIDPC002580D$'. 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.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirecte
-
Hi all, In our ASP.Net application we are using Entity Framework 1.0, when I am trying to get data from entity framework, I am getting the following error (The underlying provider failed on Open and in inner exception login failed for user). And I am using SQL server 2008 R2 and Windows Authntication. In some forum, it is suggested to create User Id and Password for the AppPool and then add the same user id and password to the database also then change the connection string. That is not an option for me. My SQL Server is remote for my application from the development itself. I dont have local SQL Server, only client on my machine and Windows authentication is a must for me. Can anybody please help me in resolving this issue at Entity Framework side or .Net side insteam of changing something in the Database, because its not owned by us.
Important: After I debugged it for a while I found that Database value is coming as empty string for the context's connection string object. Is it expected behavior entity frame work. Please can some body explain me. What would cause entity framework to get database name as empty string? Please help me in resolving this issue. and whats the importance of , is the database value picked depending on this? Should I change its value if I just have the client on my machine and SQL Server Database instance is running on the remote server. But still I connect the SQL Server using Windows Authentication. Please somebody help me in resolving this.
And I am getting the following exception also: System.Data.EntityException: The underlying provider failed on Open. ---> System.Data.SqlClient.SqlException: Login failed for user 'WADS\LNIDPC002580D$'. 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.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK) at System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, Int64 timerExpire, SqlConnection owningObject) at System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(String host, String newPassword, Boolean redirecte
Are the development machine and the DB server on the same domain?
Hesham A. Amin My blog twitter: @HeshamAmin
-
Are the development machine and the DB server on the same domain?
Hesham A. Amin My blog twitter: @HeshamAmin
Hi, No they are not on the same domain, so does it matter? Can you please tell me what should I do if they are not on the same domain? And we are using Windows authentication. Thanks in advance my friend.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
-
Hi, No they are not on the same domain, so does it matter? Can you please tell me what should I do if they are not on the same domain? And we are using Windows authentication. Thanks in advance my friend.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
Since the application pool user is not on the same domain, windows authentication won't work. How will SQL server know about your app pool user? It does not exist in Active Directory. You need to enable SQL authentication or make your machine join the domain which has the SQL server.
Hesham A. Amin My blog twitter: @HeshamAmin
-
Since the application pool user is not on the same domain, windows authentication won't work. How will SQL server know about your app pool user? It does not exist in Active Directory. You need to enable SQL authentication or make your machine join the domain which has the SQL server.
Hesham A. Amin My blog twitter: @HeshamAmin
Salam Eid Mabrook, But the same thing is working in Enterprise Library, why only the Entity Framework giving the problems. But I don't have control on the SQL Server completely. Just in case I am asking for the debugging reason, what could be the reason if we SQL Server and my machine is on the same domain. Because when I am logging in to the SQL Server I am logging without using any domain. May be its on the same domain. But Enterprise library is able to connect it without using any domain name. If I am in the same domain what could cause the entity framework to get the database name in the context objects connection. Thanks in advance.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
-
Salam Eid Mabrook, But the same thing is working in Enterprise Library, why only the Entity Framework giving the problems. But I don't have control on the SQL Server completely. Just in case I am asking for the debugging reason, what could be the reason if we SQL Server and my machine is on the same domain. Because when I am logging in to the SQL Server I am logging without using any domain. May be its on the same domain. But Enterprise library is able to connect it without using any domain name. If I am in the same domain what could cause the entity framework to get the database name in the context objects connection. Thanks in advance.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
Alikom AlSalam, Eid Mubarak :) Can you post the connection strings used in both cases? Does the DB admin allow public users on the database?
Hesham A. Amin My blog twitter: @HeshamAmin
-
Alikom AlSalam, Eid Mubarak :) Can you post the connection strings used in both cases? Does the DB admin allow public users on the database?
Hesham A. Amin My blog twitter: @HeshamAmin
-
Hi, Here are the connection strings.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
Can you try to change the EF connection to:
The difference between the connection strings is that the ENTLib connection connects to a named instance (LNIDDBTUMSQL24\STAYATWORK) while the EF connection connects to the default instance on LNIDDBTUMSQL24.
Hesham A. Amin My blog twitter: @HeshamAmin
-
Can you try to change the EF connection to:
The difference between the connection strings is that the ENTLib connection connects to a named instance (LNIDDBTUMSQL24\STAYATWORK) while the EF connection connects to the default instance on LNIDDBTUMSQL24.
Hesham A. Amin My blog twitter: @HeshamAmin
Hi, I did it, I just copied database on my local machine and tried to connect using the following connection strings. In the place of Datasource value it is coming correct, but in the place of Database its always coming as empty String. Did I do any mistake during the entity frameworks mapping to the database because when I debugged following values are coming while connecting to my local database server also context.Connection.Datasource="(local)\STAYATWORK" or ".\STAYATWORK", context.Connection.Database="". Something should be wrong. Do I need to change anything in this
should put the server name or something here. Following are the connection strings that I have used.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
-
Hi, I did it, I just copied database on my local machine and tried to connect using the following connection strings. In the place of Datasource value it is coming correct, but in the place of Database its always coming as empty String. Did I do any mistake during the entity frameworks mapping to the database because when I debugged following values are coming while connecting to my local database server also context.Connection.Datasource="(local)\STAYATWORK" or ".\STAYATWORK", context.Connection.Database="". Something should be wrong. Do I need to change anything in this
should put the server name or something here. Following are the connection strings that I have used.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
Try to add
Initial Catalog=STAYATWORK;
to the connection string.
Hesham A. Amin My blog twitter: @HeshamAmin
-
Try to add
Initial Catalog=STAYATWORK;
to the connection string.
Hesham A. Amin My blog twitter: @HeshamAmin
Hi, Yes I added but its doing the same thing, its showing the database name as empty string, is entity framework having any problem connecting the database using Windows authentication. Thats what I am seeing when googling. Should I switch to SQL Server authentication? For that I need to talk to DBA. Please help me.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
-
Try to add
Initial Catalog=STAYATWORK;
to the connection string.
Hesham A. Amin My blog twitter: @HeshamAmin
Hi, I found whats the problem is, if you can help me in solving it, it would be really great. When I am degging when Entity Framework class "StayAtWorkEntities" is trying to get the data from the SQL Server. There it is throwing exception, because application is trying to access the databse using "\" account instead of "\" account. But this "\" account, doesnt have access to the Database. Instead I have access to the database. Now is there any way to force IIS to run these two applications Web Application and a WCF Service under my user account "\". I am also admin on the Server is there any way to force IIS to do that, I have tried by changing the Application Pool Identity to "LocalSystem", "Network Service" in both the cases its running under the same user account "\" which doesnt have access rights to access the database.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
-
Hi, I found whats the problem is, if you can help me in solving it, it would be really great. When I am degging when Entity Framework class "StayAtWorkEntities" is trying to get the data from the SQL Server. There it is throwing exception, because application is trying to access the databse using "\" account instead of "\" account. But this "\" account, doesnt have access to the Database. Instead I have access to the database. Now is there any way to force IIS to run these two applications Web Application and a WCF Service under my user account "\". I am also admin on the Server is there any way to force IIS to do that, I have tried by changing the Application Pool Identity to "LocalSystem", "Network Service" in both the cases its running under the same user account "\" which doesnt have access rights to access the database.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA
User accounts were lost from your post, but you can configure IIS App pool to run using any windows account. as mentioned here[^]. But select "Custom Account"
Hesham A. Amin My blog twitter: @HeshamAmin
-
User accounts were lost from your post, but you can configure IIS App pool to run using any windows account. as mentioned here[^]. But select "Custom Account"
Hesham A. Amin My blog twitter: @HeshamAmin
Yeah Hesham, I got it solved thanks for your help I have set my Windows user account on my Application pool Identity. Yes it has reolved all the problems. Now its working fine. Thanks a lot once again.
Thanks & Regards, Abdul Aleem Mohammad St Louis MO - USA