1、安装python3,需要3.7或3.8版本。
2、使用文本编辑器打开脚本文件 batchCreateIAMUserAndDatabaseUser.txt ,需要修改开头access中的内容,以下为相关信息:
access = {
'domian_name': 'hw_****', # 主账号名
'domain_id': 'b46b***', # 主账号id
'iamuser_name': 'CreateStdUser', # 子账号名,需要手动创建,并将其加入到admin用户组
'iamuser_id': 'c86e3152***', # 子账号id
'iamuser_password': '****', # 子账号密码
'endpoint': 'cn-north-4', # 操作的region,必须正确,涉及到授权,一般为数据库实例所在的region
'group_name': 'student', # 要创建的用户组名,可自定义,不可为空
'use_account': 1, # 1表示是,0表示否,是否使用名单AccoutImportTemplate.xlsx来创建iam账号,必须填写账号名称,建议填写邮箱地址,不用填写手机号,默认密码为'账号名_123',首次登录需修改密码
'user_count': 5, # 要创建的iam账号的数量,如果use_account为0,必须填写正确数量,会创建user_count个名称形式为iamuser01[02,03],默认密码为'iamuser_01[02,03]_123'的IAM用户,首次登录需修改密码
'permission_role_names': ['DAS+Administrator','DAS+FullAccess','GaussDB+ReadOnlyAccess'], # 默认,不可修改
'gaussdbformysql_connection': {
'usage': 0, # 1表示是,0表示否,是否使用gaussdbformysql,根据购买实例的引擎类型必须正确填写
'host':'localhost', # 数据库服务地址
'port':3306, # 数据库服务端口
'user':'root', # 创建实例时默认创建的用户,拥有最高权限,请使用该用户
'password':'' # 数据库用户对应的密码
},
'gaussdb_connection': {
'usage': 0, # 1表示是,0表示否,是否使用gaussdb,根据购买实例的引擎类型必须正确填写
'host': 'localhost', # 数据库服务地址
'port': 5432, # 数据库服务端口
'user': 'postgres', # 创建实例时默认创建的用户,拥有最高权限,请使用该用户
'password': '', # 数据库用户对应的密码
'database': 'finance' # 需要创建的数据库的名称,可自定义,不可为空,默认finance
}
}
1)主账号名,主账号id
2)用于创建多用户的IAM账号名,需要提前创建,再修改相关信息。
创建IAM账号
将上述创建的账号加入到admin用户组中
修改以下信息
'iamuser_name': 'CreateStdUser', # 子账号名,需要手动创建,并将其加入到admin用户组
'iamuser_id': 'c86e31****', # 子账号id
'iamuser_password': '****', # 子账号密码
3)是否使用名单文件 AccoutImportTemplate.xlsx 来创建IAM账号
'use_account': 1, # 1表示是,0表示否,是否使用名单AccoutImportTemplate.xlsx来创建iam账号,必须填写账号名称(学号等),建议填写邮箱地址,不用填写手机号,默认密码为'账号名_123',首次登录需修改密码
'user_count': 5, # 要创建的iam账号的数量,如果use_account为0,必须填写正确数量,会创建user_count个名称形式为iamuser01[02,03],默认密码为'iamuser_01[02,03]_123'的IAM用户,首次登录需修改密码
4)数据库连接信息
如果使用GaussDB(for MySQL),需要填写以下信息,未使用确保 'usage'为0。
'gaussdbformysql_connection': {
'usage': 0, # 1表示是,0表示否,是否使用gaussdbformysql,根据购买实例的引擎类型必须正确填写
'host':'localhost', # 数据库服务地址
'port':3306, # 数据库服务端口
'user':'root', # 创建实例时默认创建的用户,拥有最高权限,请使用该用户
'password':'' # 数据库用户对应的密码
},
如果使用GaussDB,需要填写以下信息,未使用确保 'usage'为0。
'gaussdb_connection': {
'usage': 0, # 1表示是,0表示否,是否使用gaussdb,根据购买实例的引擎类型必须正确填写
'host': 'localhost', # 数据库服务地址
'port': 5432, # 数据库服务端口
'user': 'postgres', # 创建实例时默认创建的用户,拥有最高权限,请使用该用户
'password': '', # 数据库用户对应的密码
'database': 'finance' # 需要创建的数据库的名称,可自定义,不可为空,默认finance
}
如果需要通过公网连接数据库,请点击以下链接,选择相关内容参考
https://connect.huaweicloud.com/courses/learn/Learning/sp:cloudEdu_?courseNo=course-v1:HuaweiX+CBUCNXK034+Self-paced&courseType=1
GaussDB(for MySQL): 3.2 实验指导书 - 云数据库GaussDB(for MySQL)(含精讲视频) ---> 02 各种方式连接数据库实例 ---> 2 通过公网连接GaussDB(for MySQL)
GaussDB: 3.3 实验指导书 - 云数据库GaussDB ---> 02 各种方式连接数据库实例 --> 2 通过公网连接GaussDB
3、保存修改,运行脚本
因上传格式限制,使用前需将文件batchCreateIAMUserAndDatabaseUser.txt 的后缀改为.py:batchCreateIAMUserAndDatabaseUser.py
双击运行
4、运行窗口和日志
1)首次运行需要安装python 模块,包括requests PyMySQL psycopg2 pandas openpyxl ,需较长时间
2)操作步骤
0、安装模块[]
1、加载账号信息
2、获取token
3、创建用户组
4、授权用户组DAS Administrator,DAS FullAccess,GaussDB ReadOnlyAccess,范围为endpoint,一般为北京四
5、创建IAM用户
6、将IAM用户添加至用户组
7、创建数据库用户
3)操作进展,报错,结束会在窗口中显示,按确认键即可关闭。出现报错需处理完报错后再次运行。
4)运行日志
运行过程会记录到与脚本同级目录下的运行日志 batchCreateUsers.log
以下为记录的信息说明:
a.执行开始时间:
---- 执行开始 Mon Jun 26 17:22:57 2023 ----
b.执行步骤成功:
1、加载账号信息
账号信息加载完成
c.执行步骤报错:
5、创建IAM用户
创建IAM用户失败,报错信息已写入同目录下文件batchCreateUsers.log,已退出流程
请填写名单或设置use_account=0
d.记录创建的iam账号(示例账号,无实际意义):
5、创建IAM用户
创建IAM用户成功,已将创建的用户信息写入同目录下文件batchCreateUsers.log
IAM用户列表
IAM用户名,用户密码,用户邮箱(如果有)
iamuser01,iamuser01_123,0
iamuser02,iamuser02_123,0
e.记录创建的数据库账号(示例账号,无实际意义):
7、创建数据库用户创建gaussdb数据库用户成功,已将创建的用户信息写入同目录下文件batchCreateUsers.log
数据库用户列表
数据库用户名,用户密码
db_user01,db_user01@123
db_user02,db_user02@123
f.执行结束时间:
---- 执行结束 Sun Jun 25 16:57:59 2023 ----
评论(0)