云服务器内容精选
-
创建 TICS 服务时依赖的CCE权限 如果您需要授予 IAM 用户基于“云租户部署”购买TI CS 服务的权限,则您需要为用户组配置系统角色CCE Administrator和OBS Administrator。 创建用户组tics_cce_min。 图1 创建用户组 为用户组授权。 单击用户组后的“授权”后进入选择策略界面,选择系统角色CCE Administrator和OBS Administrator完成授权。 选择CCE Administrator和OBS Administrator系统角色后,系统会自动勾选其依赖的其他系统角色,因此实际中授权更多的系统角色。 图2 授权 将所需授权的用户加入用户组tics_cce_min,即可为用户授予相关权限。 创建cce类型的计算节点之后,假如需要缩小权限,可自行把子用户从tics_cce_min用户组中删除。
-
创建IAM用户并授予TICS权限 创建用户组并授权。使用华为账号登录IAM控制台,创建用户组,并授予TICS的普通用户操作权限,如“TICS CommonOperations”。 创建用户组并授权的具体操作,请参见创建用户组并授权。 配置用户组的TICS权限时,注意选择权限的作用范围为“区域级项目”,搜索框中输入权限名“TICS”进行搜索,然后勾选需要授予用户组的权限,如“TICS CommonOperations”。 创建用户并加入用户组。在IAM控制台创建用户,并将其加入步骤1中创建的用户组。 创建用户并加入用户组的具体操作,请参见创建用户并加入用户组。
-
创建TICS服务时依赖的IEF权限 如果您需要授予IAM用户基于“边缘节点部署”购买TICS服务的权限,则您需要为用户组配置IEF服务的自定义策略tics-ief-iam-min和系统角色IEF Administrator。 创建自定义策略tics-ief-iam-min,主要内容为创建IEF所需的iam权限。 图3 创建自定义策略 策略内容如下: { "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "iam:agencies:listAgencies", "iam:permissions:listRolesForAgency", "iam:roles:getRole" ] } ]} 图4 策略内容 创建用户组tics_ief_min。 图5 创建用户组 为用户组授权。 单击用户组后的“授权”后进入选择策略界面,选择自定义策略tics-ief-iam-min和IEF Administrator系统角色完成授权。 图6 授权 将所需授权的用户加入用户组tics_ief_min,即可为用户授予相关权限。
-
注册账号并实名认证 账号是您访问华为云的责任主体,有关账号的详细介绍请参见账号中心。此处介绍如何注册一个华为账号。若您已有华为账号,可以略过此部分内容。 打开华为云网站www.huaweicloud.com。 单击页面右上角的“注册”按钮。 在注册页面,根据页面提示完成账号注册。 为了能够给您提供更好的云服务使用体验,建议您优先完成实名认证。实名认证分为个人账号和企业账号认证,不同账号类型认证的方法请参考以下链接。若您的账号已通过实名认证,可以略过此部分内容。 个人账号如何完成实名认证 企业账号如何完成实名认证 实名认证信息提交后,请耐心等待审核结果,最长3个工作日内完成审核。 实名认证通过后需要40分钟才能生效。 父主题: 准备工作
-
查看空间详情 空间发起人登录TICS控制台。 进入TICS控制台后,单击页面左侧“空间管理”,进入空间管理页面。 在“空间管理”页打开“我参与的空间”页签,单击“空间名称”进入详情页。 查看空间统计信息 在详情页下方单击“空间概览”页签查看空间统计信息,该统计信息不是实时的,当前只显示统计到前一天的数据。 图1 空间统计信息 查看空间的合作方列表 在详情页下方单击“合作方管理”页签查看空间的合作方列表。 图2 合作方列表 查看空间的合作方数据 在详情页下方单击“合作方数据”页签查看注册到空间的合作方数据列表。 图3 合作方数据 查看 可信计算 环境 在详情页下方单击“可信计算环境”页签查看注册到空间的可信节点列表。 图4 可信计算环境
-
修改空间配置 支持用户在空间详情页修改“空间描述信息”、“隐私保护等级”开关、“结果差分隐私”开关。其中“作业联合审批”开关、“隐私保护等级”开关、“结果差分隐私”开关只有空间创建者可以修改。 隐私保护等级:高级别时,默认启用高安全性的隐私计算的算法保障计算过程的安全,例如秘密分享加密、PSI等,但可能会影响性能以及部分作业正常执行。低级别时,使用国际标准的对称和非对称加密结合方式,在安全沙箱内进行解密计算。性能和灵活度较高。 结果差分隐私:开启时,使用差分隐私算法对多方安全计算作业的执行结果添加隐私保护,避免历史差分攻击。使用该功能会在计算节点发布数据集时将数据集信息的取值范围、频度进行统计,并同步到TICS中心节点。若需要已发布数据集支持差分隐私功能,需要通知所有合作方重新发布数据集。 用户登录TICS控制台。 进入TICS控制台后,单击页面左侧“空间管理”,进入空间管理页面。 在“空间管理”页打开“我创建的空间”页签,单击“空间名称”进入详情页,查看详情并修改空间配置。 图5 修改描述信息
-
查看空间操作记录 TICS提供透明的空间操作记录。空间的创建、部署、删除、升级回滚操作都会被详细记录。 在详情中,操作进程以可视化的方式展示,清晰展示空间的部署、升级、回滚、删除步骤,在出现问题时便于分析排查。 用户登录TICS控制台。 进入TICS控制台后,单击页面左侧“空间管理”,进入空间管理页面。 单击页面右上角的“操作记录”按钮,查看操作记录。 图8 入口 单击“查看详情”,可查看空间操作的具体信息。 图9 查看详情 操作详情以可视化的形式展示,使操作进程更直观、更清晰。 图10 可视化页面
-
准备本地横向联邦数据资源 上传数据集文件(作业参与方) 上传数据集文件到计算节点挂载路径下,供计算节点执行的脚本读取。如果是主机挂载,上传到宿主机的挂载路径下。如果是OBS挂载,使用华为云提供的 对象存储服务 ,上传到当前计算节点使用的对象桶中。 图5 对象桶名称 此处以主机挂载为例: 创建一个主机挂载的计算节点Agent1,挂载路径为/tmp/tics1/。 使用文件上传工具上传包含数据集iris1.csv的dataset文件夹到宿主机/tmp/tics1/目录下。 iris1.csv内容如下: sepal_length,sepal_width,petal_length,petal_width,class5.1,3.5,1.4,0.3,Iris-setosa5.7,3.8,1.7,0.3,Iris-setosa5.1,3.8,1.5,0.3,Iris-setosa5.4,3.4,1.7,0.2,Iris-setosa5.1,3.7,1.5,0.4,Iris-setosa4.6,3.6,1,0.2,Iris-setosa5.1,3.3,1.7,0.5,Iris-setosa4.8,3.4,1.9,0.2,Iris-setosa5,3,1.6,0.2,Iris-setosa5,3.4,1.6,0.4,Iris-setosa5.2,3.5,1.5,0.2,Iris-setosa5.2,3.4,1.4,0.2,Iris-setosa4.7,3.2,1.6,0.2,Iris-setosa4.8,3.1,1.6,0.2,Iris-setosa5.4,3.4,1.5,0.4,Iris-setosa5.2,4.1,1.5,0.1,Iris-setosa5.5,4.2,1.4,0.2,Iris-setosa4.9,3.1,1.5,0.1,Iris-setosa5,3.2,1.2,0.2,Iris-setosa5.5,3.5,1.3,0.2,Iris-setosa4.9,3.1,1.5,0.1,Iris-setosa4.4,3,1.3,0.2,Iris-setosa5.1,3.4,1.5,0.2,Iris-setosa5,3.5,1.3,0.3,Iris-setosa4.5,2.3,1.3,0.3,Iris-setosa4.4,3.2,1.3,0.2,Iris-setosa5,3.5,1.6,0.6,Iris-setosa5.1,3.8,1.9,0.4,Iris-setosa4.8,3,1.4,0.3,Iris-setosa5.1,3.8,1.6,0.2,Iris-setosa4.6,3.2,1.4,0.2,Iris-setosa5.3,3.7,1.5,0.2,Iris-setosa5,3.3,1.4,0.2,Iris-setosa6.8,2.8,4.8,1.4,Iris-versicolor6.7,3,5,1.7,Iris-versicolor6,2.9,4.5,1.5,Iris-versicolor5.7,2.6,3.5,1,Iris-versicolor5.5,2.4,3.8,1.1,Iris-versicolor5.5,2.4,3.7,1,Iris-versicolor5.8,2.7,3.9,1.2,Iris-versicolor6,2.7,5.1,1.6,Iris-versicolor5.4,3,4.5,1.5,Iris-versicolor6,3.4,4.5,1.6,Iris-versicolor6.7,3.1,4.7,1.5,Iris-versicolor6.3,2.3,4.4,1.3,Iris-versicolor5.6,3,4.1,1.3,Iris-versicolor5.5,2.5,4,1.3,Iris-versicolor5.5,2.6,4.4,1.2,Iris-versicolor6.1,3,4.6,1.4,Iris-versicolor5.8,2.6,4,1.2,Iris-versicolor5,2.3,3.3,1,Iris-versicolor5.6,2.7,4.2,1.3,Iris-versicolor5.7,3,4.2,1.2,Iris-versicolor5.7,2.9,4.2,1.3,Iris-versicolor6.2,2.9,4.3,1.3,Iris-versicolor5.1,2.5,3,1.1,Iris-versicolor5.7,2.8,4.1,1.3,Iris-versicolor6.3,3.3,6,2.5,Iris-virginica5.8,2.7,5.1,1.9,Iris-virginica7.1,3,5.9,2.1,Iris-virginica6.3,2.9,5.6,1.8,Iris-virginica6.5,3,5.8,2.2,Iris-virginica7.6,3,6.6,2.1,Iris-virginica4.9,2.5,4.5,1.7,Iris-virginica7.3,2.9,6.3,1.8,Iris-virginica6.7,2.5,5.8,1.8,Iris-virginica7.2,3.6,6.1,2.5,Iris-virginica6.5,3.2,5.1,2,Iris-virginica6.4,2.7,5.3,1.9,Iris-virginica6.8,3,5.5,2.1,Iris-virginica5.7,2.5,5,2,Iris-virginica5.8,2.8,5.1,2.4,Iris-virginica6.4,3.2,5.3,2.3,Iris-virginica6.5,3,5.5,1.8,Iris-virginica7.7,3.8,6.7,2.2,Iris-virginica7.7,2.6,6.9,2.3,Iris-virginica6,2.2,5,1.5,Iris-virginica6.9,3.2,5.7,2.3,Iris-virginica5.6,2.8,4.9,2,Iris-virginica7.7,2.8,6.7,2,Iris-virginica6.3,2.7,4.9,1.8,Iris-virginica6.7,3.3,5.7,2.1,Iris-virginica7.2,3.2,6,1.8,Iris-virginica 为了使容器内的计算节点程序有权限能够读取到文件,使用命令chown -R 1000:1000 /tmp/tics1/修改挂载目录下的文件的属主和组为1000:1000。 在第二台主机上创建计算节点Agent2,挂载路径为/tmp/tics2/。上传包含数据集iris2.csv的dataset文件夹到宿主机目录下,修改属主。 iris2.csv的内容如下: sepal_length,sepal_width,petal_length,petal_width,class5.1,3.5,1.4,0.2,Iris-setosa4.9,3,1.4,0.2,Iris-setosa4.7,3.2,1.3,0.2,Iris-setosa4.6,3.1,1.5,0.2,Iris-setosa5,3.6,1.4,0.2,Iris-setosa5.4,3.9,1.7,0.4,Iris-setosa4.6,3.4,1.4,0.3,Iris-setosa5,3.4,1.5,0.2,Iris-setosa4.4,2.9,1.4,0.2,Iris-setosa4.9,3.1,1.5,0.1,Iris-setosa5.4,3.7,1.5,0.2,Iris-setosa4.8,3.4,1.6,0.2,Iris-setosa4.8,3,1.4,0.1,Iris-setosa4.3,3,1.1,0.1,Iris-setosa5.8,4,1.2,0.2,Iris-setosa5.7,4.4,1.5,0.4,Iris-setosa5.4,3.9,1.3,0.4,Iris-setosa7,3.2,4.7,1.4,Iris-versicolor6.4,3.2,4.5,1.5,Iris-versicolor6.9,3.1,4.9,1.5,Iris-versicolor5.5,2.3,4,1.3,Iris-versicolor6.5,2.8,4.6,1.5,Iris-versicolor5.7,2.8,4.5,1.3,Iris-versicolor6.3,3.3,4.7,1.6,Iris-versicolor4.9,2.4,3.3,1,Iris-versicolor6.6,2.9,4.6,1.3,Iris-versicolor5.2,2.7,3.9,1.4,Iris-versicolor5,2,3.5,1,Iris-versicolor5.9,3,4.2,1.5,Iris-versicolor6,2.2,4,1,Iris-versicolor6.1,2.9,4.7,1.4,Iris-versicolor5.6,2.9,3.6,1.3,Iris-versicolor6.7,3.1,4.4,1.4,Iris-versicolor5.6,3,4.5,1.5,Iris-versicolor5.8,2.7,4.1,1,Iris-versicolor6.2,2.2,4.5,1.5,Iris-versicolor5.6,2.5,3.9,1.1,Iris-versicolor5.9,3.2,4.8,1.8,Iris-versicolor6.1,2.8,4,1.3,Iris-versicolor6.3,2.5,4.9,1.5,Iris-versicolor6.1,2.8,4.7,1.2,Iris-versicolor6.4,2.9,4.3,1.3,Iris-versicolor6.6,3,4.4,1.4,Iris-versicolor6.8,2.8,4.8,1.4,Iris-versicolor6.2,2.8,4.8,1.8,Iris-virginica6.1,3,4.9,1.8,Iris-virginica6.4,2.8,5.6,2.1,Iris-virginica7.2,3,5.8,1.6,Iris-virginica7.4,2.8,6.1,1.9,Iris-virginica7.9,3.8,6.4,2,Iris-virginica6.4,2.8,5.6,2.2,Iris-virginica6.3,2.8,5.1,1.5,Iris-virginica6.1,2.6,5.6,1.4,Iris-virginica7.7,3,6.1,2.3,Iris-virginica6.3,3.4,5.6,2.4,Iris-virginica6.4,3.1,5.5,1.8,Iris-virginica6,3,4.8,1.8,Iris-virginica6.9,3.1,5.4,2.1,Iris-virginica6.7,3.1,5.6,2.4,Iris-virginica6.9,3.1,5.1,2.3,Iris-virginica5.8,2.7,5.1,1.9,Iris-virginica6.8,3.2,5.9,2.3,Iris-virginica6.7,3.3,5.7,2.5,Iris-virginica6.7,3,5.2,2.3,Iris-virginica6.3,2.5,5,1.9,Iris-virginica6.5,3,5.2,2,Iris-virginica6.2,3.4,5.4,2.3,Iris-virginica5.9,3,5.1,1.8,Iris-virginica 准备模型文件/初始权重(作业发起方) 作业发起方需要提供模型、初始权重(非必须),上传到Agent1的挂载目录下并使用命令chown -R 1000:1000 /tmp/tics1/修改挂载目录下的文件的属主和组。 使用python代码创建模型文件,保存为二进制文件model.h5,以鸢尾花为例,生成如下的模型: import tensorflow as tfimport keras model = keras.Sequential([ keras.layers.Dense(4, activation=tf.nn.relu, input_shape=(4,)), keras.layers.Dense(6, activation=tf.nn.relu), keras.layers.Dense(3, activation='softmax')]) model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])model.save("d:/model.h5") 初始权重的格式是浮点数的数组,与模型对应。使用联邦学习训练出来的结果result_1可以作为初始权重,样例如下: -0.23300957679748535,0.7804553508758545,0.0064492723904550076,0.5866460800170898,0.676144003868103,-0.7883696556091309,0.5472091436386108,-0.20961782336235046,0.58524489402771,-0.5079598426818848,-0.47474920749664307,-0.3519996106624603,-0.10822880268096924,-0.5457949042320251,-0.28117161989212036,-0.7369481325149536,-0.04728877171874046,0.003856887575238943,0.051739662885665894,0.033792052417993546,-0.31878742575645447,0.7511205673217773,0.3158722519874573,-0.7290999293327332,0.7187696695327759,0.09846954792737961,-0.06735057383775711,0.7165604829788208,-0.730293869972229,0.4473201036453247,-0.27151209115982056,-0.6971480846405029,0.7360773086547852,0.819558322429657,0.4984433054924011,0.05300116539001465,-0.6597640514373779,0.7849202156066895,0.6896201372146606,0.11731931567192078,-0.5380218029022217,0.18895208835601807,-0.18693888187408447,0.357051283121109,0.05440644919872284,0.042556408792734146,-0.04341210797429085,0.0,-0.04367709159851074,-0.031455427408218384,0.24731603264808655,-0.062861368060112,-0.4265706539154053,0.32981523871421814,-0.021271884441375732,0.15228557586669922,0.1818728893995285,0.4162319302558899,-0.22432318329811096,0.7156463861465454,-0.13709741830825806,0.7237883806228638,-0.5489991903305054,0.47034209966659546,-0.04692812263965607,0.7690137028694153,0.40263476967811584,-0.4405142068862915,0.016018997877836227,-0.04845477640628815,0.037553105503320694 编写训练脚本(作业发起方) 作业发起方还需要编写联邦学习训练脚本,其中需要用户自行实现读取数据、训练模型、评估模型、获取评估指标的逻辑。计算节点会将数据集配置文件中的path属性作为参数传递给训练脚本。 JobParam属性如下: class JobParam: """训练脚本参数 """ # 作业id job_id = '' # 当前轮数 round = 0 # 迭代次数 epoch = 0 # 模型文件路径 model_file = '' # 数据集路径 dataset_path = '' # 是否仅做评估 eval_only = False # 权重文件 weights_file = '' # 输出路径 output = '' # 其他参数json字符串 param = '' 鸢尾花的训练脚本iris_train.py样例如下: # -*- coding: utf-8 -*-import getoptimport sysimport kerasimport horizontal.horizontallearning as hldef train(): # 解析命令行输入 jobParam = JobParam() jobParam.parse_from_command_line() job_type = 'evaluation' if jobParam.eval_only else 'training' print(f"Starting round {jobParam.round} {job_type}") # 加载模型,设置初始权重参数 model = keras.models.load_model(jobParam.model_file) hl.set_model_weights(model, jobParam.weights_file) # 加载数据、训练、评估 -- 用户自己实现 print(f"Load data {jobParam.dataset_path}") train_x, test_x, train_y, test_y, class_dict = load_data(jobParam.dataset_path) if not jobParam.eval_only: b_size = 1 model.fit(train_x, train_y, batch_size=b_size, epochs=jobParam.epoch, shuffle=True, verbose=1) print(f"Training job [{jobParam.job_id}] finished") eval = model.evaluate(test_x, test_y, verbose=0) print("Evaluation on test data: loss = %0.6f accuracy = %0.2f%% \n" % (eval[0], eval[1] * 100)) # 结果以json格式保存 -- 用户读取评估指标 result = {} result['loss'] = eval[0] result['accuracy'] = eval[1] # 生成结果文件 hl.save_train_result(jobParam, model, result)# 读取CSV数据集,并拆分为训练集和测试集# 该函数的传入参数为CSV_FILE_PATH: csv文件路径def load_data(CSV_FILE_PATH): import pandas as pd from sklearn.model_selection import train_test_split from sklearn.preprocessing import LabelBinarizer # 读取目录数据集,读取目录下所有CSV文件 if os.path.isdir(CSV_FILE_PATH): print(f'read file folder [{CSV_FILE_PATH}]') all_csv_path = glob.glob(os.path.join(CSV_FILE_PATH, '*.csv')) all_csv_path.sort() csv_list = [] for csv_path in all_csv_path: csv_list.append(pd.read_csv(csv_path)) IRIS = pd.concat(csv_list) # 读取CSV文件 else: IRIS = pd.read_csv(CSV_FILE_PATH) target_var = 'class' # 目标变量 # 数据集的特征 features = list(IRIS.columns) features.remove(target_var) # 目标变量的类别 Class = IRIS[target_var].unique() # 目标变量的类别字典 Class_dict = dict(zip(Class, range(len(Class)))) # 增加一列target, 将目标变量进行编码 IRIS['target'] = IRIS[target_var].apply(lambda x: Class_dict[x]) # 对目标变量进行0-1编码(One-hot Encoding) lb = LabelBinarizer() lb.fit(list(Class_dict.values())) transformed_labels = lb.transform(IRIS['target']) y_bin_labels = [] # 对多分类进行0-1编码的变量 for i in range(transformed_labels.shape[1]): y_bin_labels.append('y' + str(i)) IRIS['y' + str(i)] = transformed_labels[:, i] # 将数据集分为训练集和测试集 train_x, test_x, train_y, test_y = train_test_split(IRIS[features], IRIS[y_bin_labels], train_size=0.7, test_size=0.3, random_state=0) return train_x, test_x, train_y, test_y, Class_dictclass JobParam: """训练脚本参数 """ # required parameters job_id = '' round = 0 epoch = 0 model_file = '' dataset_path = '' eval_only = False # optional parameters weights_file = '' output = '' param = '' def parse_from_command_line(self): """从命令行中解析作业参数 """ opts, args = getopt.getopt(sys.argv[1:], 'hn:w:', ['round=', 'epoch=', 'model_file=', 'eval_only', 'dataset_path=', 'weights_file=', 'output=', 'param=', 'job_id=']) for key, value in opts: if key in ['--round']: self.round = int(value) if key in ['--epoch']: self.epoch = int(value) if key in ['--model_file']: self.model_file = value if key in ['--eval_only']: self.eval_only = True if key in ['--dataset_path']: self.dataset_path = value if key in ['--weights_file']: self.weights_file = value if key in ['--output']: self.output = value if key in ['--param']: self.param = value if key in ['--job_id']: self.job_id = valueif __name__ == '__main__': train()
-
管理实例 实例管理是 可信智能计算服务 提供的一项查看计算节点作业实例的功能。通过实例管理,用户可以查看到该计算节点所有作业的执行实例,并查看作业的状态、计算过程、执行结果。 用户登录TICS控制台。 进入TICS控制台后,单击页面左侧“计算节点管理”,进入计算节点管理页面。 在“计算节点管理”页面,查找需要发布数据的计算节点名称,单击“计算节点名称”进入计算节点详情页。 图1 选择计算节点 在“计算节点详情”页,单击“前往计算节点”,在登录页正确输入部署计算节点时设置的“登录用户名”和“密码”。 图2 前往计算节点 进入计算节点管理界面后,选择左侧“实例管理”。 实例管理页面上方展示了计算节点资源使用概况,分别为当前节点的多方安全计算和可信联邦学习的CPU资源当前使用量,并每分钟刷新一次。下方列表默认优先展示失败状态的实例,可通过列表调整按照执行时间排序,并支持以下筛选条件: 实例ID:全匹配或前N位模糊匹配 作业ID:全匹配 作业名称:模糊匹配 实例类型、执行状态:列表筛选 图3 实例管理页面 在实例列表中,单击操作栏的“编辑”,可在弹出页面修改对应作业;单击操作栏的“查看结果”或者“作业报告”,可在弹出的页面查看执行结果和作业报告; 在实例列表中,查找待查看计算过程的作业,单击实例ID展开,在操作栏单击“计算过程”。 图4 在计算节点侧查看作业计算过程 计算过程页面可以单击任务节点,查看开始和结束时间等信息。在计算过程页面下方详情列表打开任务详情,可以查看更详细的计算过程信息。 图5 作业计算过程信息详情(截图为多方安全计算作业示例,请以实际作业为准) 父主题: 计算节点管理
-
使用TICS的用户角色 根据人员的职能进行划分,使用TICS的用户主要可以分为以下两类。 组织方 面向熟悉业务并具有管理、决策、审核权限的管理人员。组织方具有TICS的所有权限,包括创建空间、邀请空间成员、删除空间等权限。例如,在创建空间模块中,组织方可以对合作方人员发布的数据进行审核,把好质量关。 合作方 合作方使用数据源计算节点模块实现自主可控的数据源注册、隐私策略(脱敏、加密、水印)的设定、元数据的发布等,为数据源计算节点提供全生命周期的可靠性监控、运维管理。
-
CCE服务委托授权 由于CCE在运行中对计算、存储、网络以及监控等各类云服务资源都存在依赖关系,因此当您首次登录CCE控制台时,CCE将自动请求获取当前区域下的云资源权限,从而更好地为您提供服务。 CCE的服务授权为全局配置,只要您所使用的账号在当前Region曾经进行过服务授权,则无需重新配置,可以跳过本节操作。 图1 服务授权 当您同意授权后,CCE将在IAM中创建名为“cce_admin_trust”委托,统一使用系统账户“op_svc_cce”对您的其他云服务资源进行操作,cce_admin_trust委托具有Tenant Administrator权限。Tenant Administrator拥有除IAM管理外的全部云服务管理员权限,用于对CCE所依赖的其他云服务资源进行调用,且该授权仅在当前区域生效。关于资源委托详情,您可参考委托进行了解。
-
启用 区块链 审计服务(可选) 若您希望空间启用区块链服务( BCS )来审计任务信息,请仔细阅读本章节。 空间发起方需要根据基于CCE集群创建联盟链完成联盟链的创建过程。 “区块链类型”参数值需要选择“联盟链”,否则将影响后续操作。 发起方按照组建联盟链中“邀请成员”部分的描述,邀请参与方加入联盟链。 参与方登录区块链服务(BCS)按照组建联盟链中“同意/拒绝邀请”部分的描述,创建BCS实例并加入联盟链。 发起方、参与方各自根据合约仓库章节中下载模板的描述,下载“数据上链存证和查询合约模板(又称链代码)”并保存到本地。 发起方、参与方各自按照链代码管理章节中“安装链代码”部分的描述,上传步骤4中已保存至本地的链代码压缩包。 注意事项: “链代码名称”参数值须为“ticsrule”。 “链代码版本”须为“1.0”。 勾选需要背书的组织及Peer节点。 链代码背书的组织名称必须选择organization。 发起方按照链代码管理章节中“实例化链代码”部分的描述,完成实例化链代码操作。 注意事项: “初始化函数”参数值须为“init”。 “背书策略”勾选“任意组织背书” 完成上述步骤后用户可前往区块浏览器查看上链的初始化日志信息。 父主题: 准备工作
-
邀请成员 用户登录TICS控制台。 进入TICS控制台后,单击页面左侧“空间管理”,进入空间管理页面。 在空间管理页面,打开“我创建的空间”页签,查找需要邀请合作方的空间并单击“邀请合作方”。 图1 邀请合作方操作入口 在弹出的界面配置待邀请的合作方的“租户名称”和“租户别名”,保存后单击“确定”,完成邀请合作方操作。 “租户名称”是指合作方的华为账号,如何获取请参考合作方如何获取租户名称。 “租户别名”是合作方在TICS中的别名,由用户自定义即可,设置该参数的目的是保护合作方的信息安全。 图2 添加合作方
-
下载计算节点配置信息 下载计算节点配置信息,下载的信息可在部署计算节点的时候导入。“空间信息”代表“部署计算节点”属于哪个空间,用户输入的数据就会在哪个空间中参与计算。 配置包含空间证书,用于计算节点之间通信双向认证。证书保证了空间下的用户,部署的计算节点能够数据交互,参与计算。同时,也隔离了不同空间之间的数据访问。 用户登录TICS控制台。 进入TICS控制台后,单击页面左侧“通知管理”,进入通知管理页面。 浏览通知信息,单击“下载计算节点配置”,得到agentConfig.zip文件,解压到本地。内容如下: json文件:对应空间配置,包含“空间区域”、“空间名称”、“空间ID”、“证书密码”等。 p12文件:计算节点的密钥文件。 jks文件:CA的“证书”,密钥和证书保证了空间下的用户,部署的计算节点能够数据交互,参与计算。同时,也隔离了不同空间之间的数据访问。 图6 下载计算节点配置
-
验证安全沙箱防护能力 接下来模拟篡改文件的恶意行为,来验证安全沙箱防护能力。 发起方获取某个横向联邦训练作业的训练结果路径。 图1 获取作业结果路径 发起方执行恶意脚本,试图篡改所获取的路径中的作业训练结果。 图2 执行恶意脚本 发起方执行恶意脚本后,由于安全沙箱确保每个横向联邦作业都是隔离的,当某个作业想去访问或篡改其他作业相关的文件时,无法找到作业执行结果文件,因此脚本执行失败、无法篡改,从而实现安全防护。 图3 恶意脚本执行结果
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格