In nearly all cases you're going to end up with User+Group [and|or] Certificate authentication instead of requesting-machine control. To clarify what cmbrnt mentioned re: logmein, that is still a user based authentication arrangement, you're not specifying which client computers can make connection attempts. You install the logmein software at the host you want to control, then you log in to the logmein website (user auth) to make a connection attempt to that host from wherever you want. After which, you'll authenticate again against that machine (or domain).
Therefore Logmein IS more secure than simply punching a hole for RDP, as you have no exposed services and you're effectively authenticating twice, where both connections (client<>logmein<>host) are over secured connections. There's even a third "host password" option you can use if you like, iirc.
EDIT: Additional clarification... I believe Logmein ALSO has filtering for where the connection attempts come from, but they'd be by IP address, which as you stated, is not workable.