Windows 7 - Remote Desktop - multiple credentials

My home network consists of a couple Windows XP machines and a Windows 7 box. One of the Windows XP boxes is like a shared server accessed via Remote Desktop. I have an account on there and my gf has another.
Previously I was able to save RDC shortcuts to this shared server including credentials. So in order to access the server from a computer on the network, I just needed to open the shortcut. I thus would have two shortcuts, one for my account and one for my gf's.

In Windows 7, it seems to store credentials for a box based on machine name. I.e. I can only store one set of credentials per machine name. This seems incredibly stupid so my question is:
In Windows 7, is there some way to have RDC shortcuts that use different credentials to login to the same target box?


Solution 1:

After a bit of digging I have found your problem. The more recent versions of remote desktop don't save the password information in the RDP file. This is a change, probably due to security concerns. I'm not sure where this information is stored, but I do know that it is user specific information. That change has the affect of limiting the number of saved credentials per host machine (the XP media box) to one.

If you want to have different users have different saved credentials, you'll need to create more user accounts on your client machines. When a person sits down at a machine, they will need to specify their user name to log into that machine, and then launch RDP to connect to the remote host. This separation will allow you to have separate saved RDP credential stores.

Solution 2:

If haven't tested this but it should work. Create an alias for the Windows XP 'server' either in DNS (cname) or in the Hosts file on the Win7 box. Then you should be able to setup a connection to the alias, and it would be a 'different machine' so RDP should store the credentials separately.

Windows 7 saves one password per alias per client profile. Just add an alias to your hosts file and save the connection to that alias as a separate RDP file. Note that you might not be able to save the password if you are on a domain, because it won't trust the certificate of this "new" machine.

Solution 3:

The following solution works perfectly if you have sufficient privileges on your local machine to edit its host file:

  1. Open the Windows host file ("hosts") from \Windows\System32\drivers\etc in notepad
  2. In Windows 7/8 you might have to grant yourself full control permissions on the file through properties > edit permissions > Add > define 'full control' permissions
  3. Define alternative DNS names for the IP address you wish to connect to with RDP. Example:>

192.168.1.20 Test1.localnetwork

192.168.1.20 Test2.localnetwork

192.168.1.20 Test3.localnetwork

#Note: the ".localnetwork" suffix is not required; you can define any name here

  1. Save the host file
  2. Open the RDP client and enter 1 of your alternative DNS names. Note: port numbers should be entered after the DNS name, for example: Test1.localnetwork:80
  3. Save the RDP settings with different file names.
  4. You can easily define different user names and save their different credentials.