Index: fedd/fedd_client.py
===================================================================
--- fedd/fedd_client.py	(revision 3bddd2408dd33162f27d5b4d1db9edd8fc76ba25)
+++ fedd/fedd_client.py	(revision 23356cb24dea3c53865f1989e8dbf1d56a808652)
@@ -90,15 +90,7 @@
                 type="string", help="Suggested experiment name")
 
-class fedd_create_opts(fedd_client_opts):
-    def __init__(self, access_keys, add_key_callback=None, 
-            add_cert_callback=None):
+class fedd_create_opts(fedd_new_opts):
+    def __init__(self):
         fedd_client_opts.__init__(self)
-        self.add_option("--experiment_cert", dest="out_certfile",
-                type="string", help="output certificate file")
-        self.add_option("--experiment_name", dest="exp_name",
-                type="string", help="Suggested experiment name")
-        self.add_option("--useFedid", action="store_true",
-                dest="use_fedid", default=False,
-                help="Use a fedid derived from my certificate as user identity")
         self.add_option("--file", dest="file", 
                 help="experiment description file")
@@ -106,25 +98,10 @@
                 type="string",
                 help="Project to export from master")
-        if add_key_callback:
-            self.add_option("--ssh_key", action="callback",
-                    type="string", callback=add_key_callback,
-                    callback_args=(access_keys,),
-                    help="ssh key for access (can be supplied more than once")
-        if add_cert_callback:
-            self.add_option("--x509Key", action="callback",
-                    type="string", callback=add_cert_callback,
-                    callback_args=(access_keys,),
-                    help="X509 certificate for access " + \
-                        "(can be supplied more than once")
         self.add_option("--master", dest="master",
                 help="Master testbed in the federation")
-        self.add_option("--username", action="store", dest="user",
-                type="string", help="Use this username instead of the uid")
 
 class fedd_split_opts(fedd_create_opts):
-    def __init__(self, access_keys, add_key_callback=None, 
-            add_cert_callback=None):
-        fedd_create_opts.__init__(self, access_keys, add_key_callback,
-                add_cert_callback)
+    def __init__(self ):
+        fedd_create_opts.__init__(self)
         self.add_option('--fedkit', action='store_true', dest='fedkit',
                 default=False,
@@ -136,11 +113,6 @@
 
 class fedd_access_opts(fedd_create_opts):
-    def __init__(self, access_keys, node_descs, add_key_callback=None, 
-            add_cert_callback=None, add_node_callback=None):
-        fedd_create_opts.__init__(self, access_keys, add_key_callback,
-                add_cert_callback)
-        self.add_option("--anonymous", action="store_true",
-                dest="anonymous", default=False,
-                help="Do not include a user in the request")
+    def __init__(self):
+        fedd_create_opts.__init__(self)
         self.add_option("--label", action="store", dest="label",
                 type="string", help="Label for output")
@@ -219,8 +191,6 @@
 
 class fedd_ns_image_opts(fedd_split_opts):
-    def __init__(self, access_keys, add_key_callback=None, 
-            add_cert_callback=None):
-        fedd_split_opts.__init__(self, access_keys, add_key_callback, 
-                add_cert_callback)
+    def __init__(self):
+        fedd_split_opts.__init__(self)
         self.add_option("--output", dest="outfile", type="string",
                 help="output image file")
@@ -298,19 +268,4 @@
 
 
-    def add_ssh_key(self, option, opt_str, value, parser, access_keys):
-        try:
-            access_keys.append(access_method(file=value,
-                type=access_method.type_ssh))
-        except IOError, (errno, strerror):
-            raise OptionValueError("Cannot generate sshPubkey from %s: "\
-                    "%s (%d)" % (value,strerror,errno))
-
-    def add_x509_cert(self, option, opt_str, value, parser, access_keys):
-        try:
-            access_keys.append(access_method(file=value,
-                type=access_method.type_x509))
-        except IOError, (errno, strerror):
-            raise OptionValueError("Cannot read x509 cert from %s: %s (%d)" %
-                    (value,strerror,errno))
     def add_node_desc(self, option, opt_str, value, parser, node_descs):
         def none_if_zero(x):
@@ -325,5 +280,5 @@
             raise OptionValueError("Bad node description: %s" % value)
 
-    def get_user_info(self, access_keys=None):
+    def get_user_info(self):
         pw = pwd.getpwuid(os.getuid());
         try_cert=None
@@ -335,12 +290,4 @@
             if not os.access(try_cert, os.R_OK):
                 try_cert = None
-            if access_keys is not None and len(access_keys) == 0:
-                for k in ["%s/.ssh/id_rsa.pub", "%s/.ssh/id_dsa.pub", 
-                        "%s/.ssh/identity.pub"]:
-                    try_key = k % pw[5];
-                    if os.access(try_key, os.R_OK):
-                        access_keys.append(access_method(file=try_key,
-                            type=access_method.type_ssh))
-                        break
         return (user, try_cert)
 
@@ -474,5 +421,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -577,5 +524,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -637,5 +584,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -844,5 +791,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -976,8 +923,6 @@
         The control flow.  Compose the request and print the response.
         """
-        access_keys = []
         # Process the options using the customized option parser defined above
-        parser = fedd_ns_image_opts(access_keys, self.add_ssh_key,
-                self.add_x509_cert)
+        parser = fedd_ns_image_opts()
 
         (opts, args) = parser.parse_args()
@@ -989,5 +934,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -1115,8 +1060,6 @@
         The control flow.  Compose the request and print the response.
         """
-        access_keys = []
         # Process the options using the customized option parser defined above
-        parser = fedd_ns_image_opts(access_keys, self.add_ssh_key,
-                self.add_x509_cert)
+        parser = fedd_ns_image_opts()
 
         (opts, args) = parser.parse_args()
@@ -1128,5 +1071,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -1189,5 +1132,5 @@
         (opts, args) = parser.parse_args()
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
         if opts.trusted:
             if ( not os.access(opts.trusted, os.R_OK) ) :
@@ -1275,5 +1218,5 @@
         (opts, args) = parser.parse_args()
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
         if opts.trusted:
             if ( not os.access(opts.trusted, os.R_OK) ) :
@@ -1348,5 +1291,4 @@
         fedd_rpc.__init__(self)
     def __call__(self):
-        access_keys = []
         # Process the options using the customized option parser defined above
         parser = fedd_new_opts()
@@ -1360,5 +1302,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info(access_keys)
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -1417,7 +1359,5 @@
 	fedd_rpc.__init__(self)
     def __call__(self):
-        access_keys = []
-        parser = fedd_create_opts(access_keys, self.add_ssh_key, 
-		self.add_x509_cert)
+        parser = fedd_create_opts()
 
         (opts, args) = parser.parse_args()
@@ -1432,7 +1372,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info(access_keys)
-
-        if opts.user: user = opts.user
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -1509,9 +1447,5 @@
                 'master': opts.master,
                 'exportProject': { 'localname': opts.project },
-                'user' : [ {\
-                        'userID': pack_id(user), \
-                        'access': [ { a.type: a.buf } for a in access_keys]\
-                        } ]
-                }
+	    }
 
 	if e_fedid:
@@ -1559,8 +1493,6 @@
         fedd_rpc.__init__(self)
     def __call__(self):
-        access_keys = []
         # Process the options using the customized option parser defined above
-        parser = fedd_split_opts(access_keys, self.add_ssh_key,
-                self.add_x509_cert)
+        parser = fedd_split_opts()
 
         (opts, args) = parser.parse_args()
@@ -1572,5 +1504,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info(access_keys)
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -1661,11 +1593,9 @@
 
     def __call__(self):
-        access_keys = []
         node_descs = []
         proj = None
 
         # Process the options using the customized option parser defined above
-        parser = fedd_access_opts(access_keys, node_descs, self.add_ssh_key,
-                self.add_x509_cert, self.add_node_desc)
+        parser = fedd_access_opts()
 
         (opts, args) = parser.parse_args()
@@ -1680,7 +1610,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info(access_keys)
-
-        if opts.user: user = opts.user
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
@@ -1699,6 +1627,4 @@
                 'allocID': pack_id('test alloc'),
                 'destinationTestbed': pack_id(opts.testbed),
-                'serviceAccess' : [ { a.type: a.buf } for a in access_keys ],
-                'createAccess' : [ { a.type: a.buf } for a in access_keys ],
                 }
 
@@ -1712,18 +1638,4 @@
                         } for n in node_descs],
                     }
-
-        if opts.project != None:
-            if not opts.anonymous and user != None:
-                msg['project'] = {
-                        'name': pack_id(opts.project),
-                        'user': [ { 'userID': pack_id(user) } ],
-                        }
-            else:
-                msg['project'] = { 'name': pack_id(opts.project) }
-        else:
-            if not opts.anonymous and user != None:
-                msg['user'] = [ { 'userID': pack_id(user) } ]
-            else:
-                msg['user'] = [];
 
         if opts.debug > 1: print >>sys.stderr, msg
@@ -1769,5 +1681,5 @@
         if opts.debug > 0: opts.tracefile=sys.stderr
 
-        (user, cert) = self.get_user_info([])
+        (user, cert) = self.get_user_info()
 
         if opts.cert != None: cert = opts.cert
Index: fedd/federation/experiment_control.py
===================================================================
--- fedd/federation/experiment_control.py	(revision 3bddd2408dd33162f27d5b4d1db9edd8fc76ba25)
+++ fedd/federation/experiment_control.py	(revision 23356cb24dea3c53865f1989e8dbf1d56a808652)
@@ -725,5 +725,5 @@
         else: return None
 
-    def get_access(self, tb, nodes, user, tbparam, master, export_project,
+    def get_access(self, tb, nodes, tbparam, master, export_project,
             access_user):
         """
@@ -734,13 +734,4 @@
             raise service_error(serice_error.server_config, 
                     "Unknown testbed: %s" % tb)
-
-        # currently this lumps all users into one service access group
-        service_keys = [ a for u in user \
-                for a in u.get('access', []) \
-                    if a.has_key('sshPubkey')]
-
-        if len(service_keys) == 0:
-            raise service_error(service_error.req, 
-                    "Must have at least one SSH pubkey for services")
 
         # Tweak search order so that if there are entries in access_user that 
@@ -1327,5 +1318,5 @@
 	return hosts, ips
 
-    def get_access_to_testbeds(self, testbeds, user, access_user, 
+    def get_access_to_testbeds(self, testbeds, access_user, 
 	    export_project, master, allocated, tbparams):
 	"""
@@ -1336,5 +1327,5 @@
 	"""
 	for tb in testbeds:
-	    self.get_access(tb, None, user, tbparams, master,
+	    self.get_access(tb, None, tbparams, master,
 		    export_project, access_user)
 	    allocated[tb] = 1
@@ -2017,8 +2008,4 @@
                         "Bad key type (%s)" % self.ssh_type)
 
-            user = req.get('user', None)
-            if user == None:
-                raise service_error(service_error.req, "No user")
-
             master = req.get('master', None)
             if not master:
@@ -2067,5 +2054,5 @@
             allocated = { }         # Testbeds we can access
 	    topo ={ }		    # Sub topologies
-	    self.get_access_to_testbeds(testbeds, user, access_user, 
+	    self.get_access_to_testbeds(testbeds, access_user, 
 		    export_project, master, allocated, tbparams)
 	    self.split_topology(top, topo, testbeds, eid, master, tbparams)
