We have a production database server which at the moment is not publicly accessible, has no public IP address, and sits in a private VPC subnet.
At the moment it is only accessible from applications we have running on EC2's in the same VPC.
We now have a need to allow limited remote access to this database to another vendor, outside our Amazon account and VPC.
I have a pre-defined list of IP addresses which will need access.
I'm trying to figure out the best way to do this, with minimal interruption to any of our other applications running within our VPC.
I could change the database instances to use public IP's, but having tried this on a test database, I can see that the EC2's then start resolving the instance endpoint to the public address. I'm guessing this will mess up our VPC routing rules and security groups, and potentially break access for our applications.
What I would like, is for our internal applications to continue to access the database exactly as they always have, via the private IP addresses, but somehow give the remove application a public address at which it can access the database.
Apparently the 3rd party application cannot use an SSH tunnel, or VPN. It needs a direct TCP connection to a public IP address.
I haven't been able to find any documentation at Amazon for this type of setup.