def add_user_role(keystone_user, role, user_tenant_id): LOG.info("ddddddddd") datacenter = DataCenter.get_default() rc = create_rc_by_dc(datacenter) LOG.info("********* keystone_user is *********" + str(keystone_user)) LOG.info("********* role is *********" + str(role)) LOG.info("********* user_tenant_id is *********" + str(user_tenant_id)) # get user_id users = keystone.user_list(rc, project=user_tenant_id) LOG.info("******* users are ******" + str(users)) user_id = None for u in users: if u.username == keystone_user: user_id = u.id LOG.info("****** user_id is *********" + str(user_id)) role_id = None roles = keystone.role_list(rc) for r in roles: if r.name == role: role_id = r.id LOG.info("******** role_id is ********" + str(role_id)) try: keystone.add_tenant_user_role(rc, project=user_tenant_id, user=user_id, role=role_id) except: pass return False
def change_user_keystone_passwd(user_id, username, tenant_id, new_passwd): datacenter = DataCenter.get_default() rc = create_rc_by_dc(datacenter) users = keystone.user_list(rc, project=tenant_id) LOG.info("*** rc is ***" + str(rc)) LOG.info("******* users are ******" + str(users)) udc_user_id = user_id LOG.info("*** udc_user_id is ***" + str(udc_user_id)) user_id = None for u in users: if u.username == username: user_id = u.id LOG.info("**** user_id is ****" + str(user_id)) try: keystone.user_update_password(rc, user_id, new_passwd, admin=True) LOG.info("**** user password updated ****") udc = UserDataCenter.objects.get(user_id=udc_user_id) LOG.info("**** user password updated ****") udc.keystone_password = new_passwd LOG.info("**** user password updated ****") udc.save() LOG.info("**** user password updated ****") except: raise return True
def keystone_list_users(request): LOG.info( "************* start to create a new role in keystone ***************") rc = create_rc_by_dc(DataCenter.objects.all()[0]) LOG.info("************* rc is ***************" + str(rc)) users = None try: users = keystone.user_list(rc) LOG.info("*** users are ***" + str(users)) except: return False return users
def delete_keystone_user(tenant_id, username): datacenter = DataCenter.get_default() rc = create_rc_by_dc(datacenter) users = keystone.user_list(rc, project=tenant_id) LOG.info("******* users are ******" + str(users)) user_id = None for u in users: if u.username == username: user_id = u.id try: keystone.user_delete(rc, user_id) except: pass return True