seting adress of SQL server to localhost or

Hi Experts

I have 2 servers, one (A) for asp application, the other (B) for sql server
when i connect A to B i use a SQL connection string  suck like :

GetConnection = "DRIVER={SQL Server}; Server=IP ADDRESS; Database=xxxxx; UID=yyyyyyy; PWD=zzzzzz"

The problem is revealing the IP in the connection string makes my server unsecure

I would like to set a connection string like that

GetConnection = "DRIVER={SQL Server}; Server=; Database=xxxxx; UID=yyyyyyy; PWD=zzzzzz"

Knowing that is the local host addresse of server A, how can i make it point to SQL server B

Who is Participating?
hbzConnect With a Mentor Commented:

It will work for computers on the same network, of course.  The IP addresses were likely something like  You say that you don't want to expose the IP of the server (but you are comfortable exposing the username and password).  There are a few solutions:

1) Set up a DSN on your application server
2) If the machine is not on the same network, then set up an entry in the HOSTS file to resolve an arbitrary computer name to any IP you choose
3) There may be other solutions with VPN?

- hbz
You can't reference ANOTHER server by the localhost IP address. You can, however, reference it by named instance (SQLSERVERNAME\INSTANCENAME)

Why don't you encrypt the connection string, and decrypt it before you use it?
If you are using ASP.NET, there are many ways to do this in the web.config

If you are using classic ASP and VB (in a dll) there are literally hundreds of examples on the internet on how to do this.
If you are not using a dll, create one - storing the logic for encryption/decryption in the page would be a really bad idea.

humer2000Author Commented:
i  want to use this method because my old ISP was using it and it works.
This method allows connection to SQL server only by members of the network (Servers)
Preventing people from connecting to SQL directly from their PC
Guy Hengel [angelIII / a3]Billing EngineerCommented:
>i  want to use this method because my old ISP was using it and it works.
it will ONLY work if the web server and the sql server are on the same computer, otherwise it cannot work. is a reserved ip address that means "myself" for the computer.
usually, an entry in the hosts files resolved localhost to that ip address, but that is not necessary.

as hbz noted, you need to use a IP address or Name of a server, where you can play with the hosts file
usuaally, the web server is in a DMZ, while the sql server is behind the DMZ (if you don't know what it is, ask a network admin: DMZ is a De-Militarized Zone, special term in networking)
and a firewall that explicitely opens the route between the web server and the sql server for only those ports that the sql server will need (usually 1, and the port is configurable).

humer2000Author Commented:
Hi hbz

i have follwoed solution 1,  Seting up a DSN on my application server
and it works fine
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.