diff --git a/image_creator/os_type/windows/__init__.py b/image_creator/os_type/windows/__init__.py
index 2117d8b229e2a5a57a149bca8b5086c27cc766c8..fb12e98b9d5c91ab4689483c3f22db1eea2d8ffb 100644
--- a/image_creator/os_type/windows/__init__.py
+++ b/image_creator/os_type/windows/__init__.py
@@ -697,8 +697,26 @@ class Windows(OSBase):
         super(Windows, self)._do_collect_metadata()
 
         # We only care for active users
-        self.meta["USERS"] = \
-            " ".join([self.usernames[a] for a in self.active_users])
+        active = [self.usernames[a] for a in self.active_users]
+        self.meta["USERS"] = " ".join(active)
+
+        # Get RDP settings
+        settings = self.registry.get_rdp_settings()
+
+        if settings['disabled']:
+            self.out.warn("RDP is disabled on the image")
+        else:
+            if 'REMOTE_CONNECTION' not in self.meta:
+                self.meta['REMOTE_CONNECTION'] = ""
+            else:
+                self.meta['REMOTE_CONNECTION'] += " "
+
+            port = settings['port']
+            if len(active):
+                rdp = ["rdp:port=%d,user=%s" % (port, user) for user in active]
+                self.meta['REMOTE_CONNECTION'] += " ".join(rdp)
+            else:
+                self.meta['REMOTE_CONNECTION'] += "rdp:port=%d" % port
 
     def _check_connectivity(self):
         """Check if winexe works on the Windows VM"""
diff --git a/image_creator/os_type/windows/registry.py b/image_creator/os_type/windows/registry.py
index e8650c5024465828c2ddac1a52432d68c5771ae9..b4f6f516dabad6b3f311bbf0c29b4ea60858a77f 100644
--- a/image_creator/os_type/windows/registry.py
+++ b/image_creator/os_type/windows/registry.py
@@ -170,6 +170,29 @@ class Registry(object):
 
         raise FatalError("Unknown Windows Setup State: %s" % value)
 
+    def get_rdp_settings(self):
+        """Returns Remote Desktop Settings of the image"""
+
+        settings = {}
+        with self.open_hive('SYSTEM') as hive:
+            path = '%s/Control/Terminal Server' % self.current_control_set
+            term_server = traverse(hive, path)
+
+            disabled = hive.node_get_value(term_server, "fDenyTSConnections")
+            # expecting a little endian dword
+            assert hive.value_type(disabled)[1] == 4
+            settings['disabled'] = hive.value_dword(disabled) != 0
+
+            path += "/WinStations/RDP-Tcp"
+            rdp_tcp = traverse(hive, path)
+
+            port = hive.node_get_value(rdp_tcp, "PortNumber")
+            # expecting a little endian dword
+            assert hive.value_type(port)[1] == 4
+            settings['port'] = hive.value_dword(port)
+
+        return settings
+
     def runonce(self, commands):
         """Add commands to the RunOnce registry key"""