问题
I've been trying for just over a month to connect an ASP script here to a SQL Server database
but each time I use this connection string:Data Source=dbServer01;Initial Catalog=POS123;Integrated Security=SSPI;User ID=domain\usr;Password=pwd;
It ignores the user I specify and takes the machine name to authenticate the connection, which obviously fails.
so I change the Integrated Security value to False, like this:Data Source=dbServer01;Initial Catalog=POS123;Integrated Security=False;User ID=domain\usr;Password=pwd;
I then get an error: Login Failed for user "domain\usr" which is impossible because it works when we test the connection with it in the odbc admin app.
I asked the help of a senior and he said it's taking the user name as a database user name, but we need to make it use windows authentication, and specify which user to use. I remember reading about this a month ago and finding that there was no way to specify a user and password when connecting using windows authentication with this version of ASP.NET. I'm going to kill myself soon If I can't get this script to connect, someone save me please!
回答1:
You've got at least 2 3 options here:
- Create an App Pool on your web server which runs as
domain/usr
and then assign your app to this app pool, and use integrated security. Your connection string will beData Source=dbServer01;Initial Catalog=POS123;Integrated Security=SSPI;
- i.e. drop the username and password - these are inherent in the AppPool's identity. - or (assuming Mixed Mode security is enabled) ask your DBA's to create a new SQL User (just called
usr
) with the same permissions asdomain/usr
and then change your connection string to standard security, withUser Id=usr
- If you enable impersonation (here and here), you can use the domain credential without changing the app pool identity. Note the point about securing cleartext passwords, and IME this typically also requires additional configuration to avoid the double-hop issue.
来源:https://stackoverflow.com/questions/17547045/how-to-connect-to-ms-sql-server-database-from-asp-using-windows-authentication-s