diff -bur old/cobbler/action_power.py build/cobbler/action_power.py
--- old/cobbler/action_power.py	2008-11-21 13:59:03.000000000 +0100
+++ build/cobbler/action_power.py	2008-11-22 16:21:55.000000000 +0100
@@ -41,7 +41,7 @@
     Handles conversion of internal state to the tftpboot tree layout
     """
 
-    def __init__(self,config,system,api,force_user,force_pass):
+    def __init__(self,config,system,api,force_user=None,force_pass=None):
         """
         Power library constructor requires a cobbler system object.
         """
diff -bur old/cobbler/api.py build/cobbler/api.py
--- old/cobbler/api.py	2008-11-21 13:59:03.000000000 +0100
+++ build/cobbler/api.py	2008-11-22 16:21:34.000000000 +0100
@@ -616,19 +616,19 @@
     def get_kickstart_templates(self):
         return utils.get_kickstar_templates(self)
 
-    def power_on(self, system, user, password):
+    def power_on(self, system, user=None, password=None):
         """
         Powers up a system that has power management configured.
         """
         return action_power.PowerTool(self._config,system,self,user,password).power("on")
 
-    def power_off(self, system, user, password):
+    def power_off(self, system, user=None, password=None):
         """
         Powers down a system that has power management configured.
         """
         return action_power.PowerTool(self._config,system,self,user,password).power("off")
 
-    def reboot(self,system, user, password):
+    def reboot(self,system, user=None, password=None):
         """
         Cycles power on a system that has power management configured.
         """
diff -bur old/cobbler/remote.py build/cobbler/remote.py
--- old/cobbler/remote.py	2008-11-21 13:59:03.000000000 +0100
+++ build/cobbler/remote.py	2008-11-22 16:23:48.000000000 +0100
@@ -1277,6 +1277,22 @@
                 fileh.close()
             return True
 
+    def power_system(self,object_id,power=None,token=None):
+        """
+        Allows poweron/poweroff/reboot of a system
+        """
+        obj = self.__get_object(object_id)
+        self.check_access(token, "power_system", obj)
+        if power=="on":
+            rc=self.api.power_on(obj)
+        elif power=="off":
+            rc=self.api.power_off(obj)
+        elif power=="reboot":
+            rc=self.api.reboot(obj)
+        else:
+            raise CX(_("invalid power mode '%s', expected on/off/reboot" % power))
+        return rc
+
 
 # *********************************************************************
 # *********************************************************************
