diff -r 5c86a029ee3a src/virtManager/connection.py
--- a/src/virtManager/connection.py	Thu Feb 21 07:37:22 2008 -0500
+++ b/src/virtManager/connection.py	Fri Feb 22 13:49:40 2008 +0900
@@ -35,6 +35,8 @@ from virtManager.domain import vmmDomain
 from virtManager.domain import vmmDomain
 from virtManager.network import vmmNetwork
 from virtManager.netdev import vmmNetDevice
+
+LIBVIRT_POLICY_FILE = "/usr/share/PolicyKit/policy/libvirtd.policy"
 
 def get_local_hostname():
     try:
@@ -113,13 +115,17 @@ class vmmConnection(gobject.GObject):
     def __init__(self, config, uri, readOnly = None):
         self.__gobject_init__()
         self.config = config
-        self.readOnly = readOnly
 
         self.connectThread = None
         self.connectError = None
         self.uri = uri
         if self.uri is None or self.uri.lower() == "xen":
             self.uri = "xen:///"
+
+        self.readOnly = readOnly
+        if self.uri.find("///") != -1 and os.getuid() != 0:
+            if not os.path.exists(LIBVIRT_POLICY_FILE):
+                self.readOnly = True
 
         self.state = self.STATE_DISCONNECTED
         self.vmm = None
