results.append( {
'type': 'user',
- 'pkey': ldapentry[1]['sshPublicKey'][0].
+ 'pkey': ldapentry[1]['sshPublicKey'][0],
+ 'uid': ldapentry[1]['uid'][0],
# 'email': ldapentry[1]['mail'][0],
# 'first_name': ldapentry[1]['givenName'][0],
# 'last_name': ldapentry[1]['sn'][0],
from sfa.util.table import SfaTable
from sfa.util.record import SfaRecord
from sfa.trust.hierarchy import Hierarchy
-from sfa.trust.certificate import Keypair
+from sfa.trust.certificate import Keypair,convert_public_key
from sfa.trust.gid import create_uuid
table.update(node_record)
# person is already a sfa record
-def import_person(person):
+def import_person(authname,person):
existing_records = table.find({'hrn': person['hrn'], 'type': 'user'})
extime = datetime.datetime.utcnow()
person['date_created'] = int(time.mktime(extime.timetuple()))
uuid=create_uuid()
RSA_KEY_STRING=person['pkey']
pkey=convert_public_key(RSA_KEY_STRING)
- person['gid']=self.senslabauth.create_gid("urn:publicid:IDN+"+self.authname+"+user+"+ldapentry[1]['uid'][0], uuid, pkey, CA=False)
+ person['gid']=AuthHierarchy.create_gid("urn:publicid:IDN+"+authname+"+user+"+person['uid'], uuid, pkey, CA=False).save_to_string()
table.insert(person)
else:
existing_record = existing_records[0]
for person in ldap_person_list:
if person['hrn'] not in existing_hrns or \
(person['hrn'], 'user') not in existing_records :
- import_person(person)
+ import_person(root_auth,person)
import_slice(person)
# import slices