28 lines
1.3 KiB
Plaintext
28 lines
1.3 KiB
Plaintext
async def create_baiduuser(ns):
|
|
"""
|
|
创建用户请求为dict
|
|
设置用户名name 长度1-64位的字母、数字或"_"
|
|
设置用户描述description
|
|
"""
|
|
db = DBPools()
|
|
async with db.sqlorContext('kboss') as sor:
|
|
user_name = await sor.R('users',{'id':ns.get('userid')})
|
|
iam_client = IamClient(iam_sample_conf.config)
|
|
# # 第一步查询用户在百度是否已有账号
|
|
createuser_name = user_name[0]['username'].encode()
|
|
try:
|
|
iam_client.get_user(createuser_name)
|
|
return {'status': True, 'msg': '已有账户'}
|
|
except:
|
|
#创建用户
|
|
create_user_request = {"name": user_name[0]['username'], "description": user_name[0]['username']}
|
|
response = iam_client.create_user(create_user_request)
|
|
# 创建控制台
|
|
password = 'Du' + password_decode(user_name[0]['password'])
|
|
# password = 'Du' + unpassword(user_name[0]['password'])
|
|
update_user_login_profile_request = {"password": password, "enabledLoginMfa": False}
|
|
iam_client.update_user_login_profile(user_name[0]['username'].encode(), update_user_login_profile_request)
|
|
return {'status': True, 'msg': '账户同步完成'}
|
|
|
|
ret = await create_baiduuser(params_kw)
|
|
return ret |