云服务器内容精选

  • 执行密态等值密文解密 数据库连接接口PgConnection类型新增解密接口,可以对全密态数据库的密态等值密文进行解密。解密后返回其明文值,通过schema.table.column找到解文对应的密文列并返回其原始数据类型。 表1 新增com.huawei.gaussdb.jdbc.jdbc.PgConnection函数接口 方法名 返回值类型 支持JDBC 4 decryptData(String ciphertext, Integer len, String schema, String table, String column) ClientLogicDecryptResult Yes 参数说明: ciphertext 需要解密的密文。 len 密文长度。当取值小于实际密文长度时,解密失败。 schema 加密列所属schema名称。 table 加密列所属table名称。 column 加密列所属column名称。 下列场景可以解密成功,但不推荐: 密文长度入参比实际密文长。 schema.table.column指向其他加密列,此时将返回被指向的加密列的原始数据类型。 表2 新增com.huawei.gaussdb.jdbc.jdbc.clientlogic.ClientLogicDecryptResult函数接口 方法名 返回值类型 描述 支持JDBC4 isFailed() Boolean 解密是否失败,若失败返回True,否则返回False。 Yes getErrMsg() String 获取错误信息。 Yes getPlaintext() String 获取解密后的明文。 Yes getPlaintextSize() Integer 获取解密后的明文长度。 Yes getOriginalType() String 获取加密列的原始数据类型。 Yes // 通过非密态连接、逻辑解码等其他方式获得密文后,可使用该接口对密文进行解密 import com.huawei.gaussdb.jdbc.jdbc.PgConnection; import com.huawei.gaussdb.jdbc.jdbc.clientlogic.ClientLogicDecryptResult; // conn为密态连接 // 调用密态PgConnection的decryptData方法对密文进行解密,通过列名称定位到该密文的所属加密列,并返回其原始数据类型 ClientLogicDecryptResult decrypt_res = null; decrypt_res = ((PgConnection)conn).decryptData(ciphertext, ciphertext.length(), schemaname_str, tablename_str, colname_str); // 检查返回结果类解密成功与否,失败可获取报错信息,成功可获得明文及长度和原始数据类型 if (decrypt_res.isFailed()) { System.out.println(String.format("%s\n", decrypt_res.getErrMsg())); } else { System.out.println(String.format("decrypted plaintext: %s size: %d type: %s\n", decrypt_res.getPlaintext(), decrypt_res.getPlaintextSize(), decrypt_res.getOriginalType())); }
  • 执行加密表的预编译SQL语句 // 调用Connection的prepareStatement方法创建预编译语句对象。 PreparedStatement pstmt = conn.prepareStatement("INSERT INTO creditcard_info VALUES (?, ?, ?);"); // 调用PreparedStatement的setShort设置参数。 pstmt.setInt(1, 2); pstmt.setString(2, "joy"); pstmt.setString(3, "6219985678349800033"); // 调用PreparedStatement的executeUpdate方法执行预编译SQL语句。 int rowcount = pstmt.executeUpdate(); // 调用PreparedStatement的close方法关闭预编译语句对象。 pstmt.close();
  • 场景描述 云搜索服务默认安装了开源的OpenDistro告警插件(opendistro_alerting),用于提供数据满足特定条件时的通知功能。该插件包含Dashboard、Monitors、Destinations三个组件,CSS服务在Destinations组件中适配了消息通知服务SMN,且仅支持通过SMN服务作为目的端(Destination)进行告警消息发送。 本文主要介绍如何在Kibana中通过OpenDistro告警插件设置Elasticsearch集群的SMN告警功能。 开源OpenDistro告警插件Opendistro Alerting的官方指导文档请参见:OpenDistro-Monitors。
  • 执行密态等值查询加密表相关的语句 // 定义加密表 _, err = db.Exec("CREATE TABLE creditcard_info (id_number int, name varchar(50) encrypted with (column_encryption_key = ImgCEK1, encryption_type = DETERMINISTIC), credit_card varchar(19) encrypted with (column_encryption_key = ImgCEK1, encryption_type = DETERMINISTIC));") // 插入数据 _, err = db.Exec("INSERT INTO creditcard_info VALUES (1,'joe','6217986500001288393'), (2,'mike','6217986500001722485'), (3,'joe','6315892300001244581');"); var var1 int var var2 string var var3 string // 查询数据 rows, err := db.Query("select * from creditcard_info where name = 'joe';") defer rows.Close() // 逐行打印 for rows.Next() { err = rows.Scan(&var1, &var2, &var3) if err != nil { log.Fatal(err) } else { fmt.Printf("var1:%v, var2:%v, var3:%v\n", var1, var2, var3) } }
  • 执行加密表的预编译SQL语句 // 调用DB实例的Prepare方法创建预编译对象 delete_stmt, err := db.Prepare("delete from creditcard_info where name = $1;") defer delete_stmt.Close() // 调用预编译对象的Exec方法绑定参数并执行SQL语句 _, err = delete_stmt.Exec("mike")
  • 执行加密表的Copy In操作 // 调用DB实例的Begin、Prepare方法创建事务对象、预编译对象 tx, err := db.Begin() copy_stmt, err := tx.Prepare("Copy creditcard_info from stdin") // 声明并初始化待导入数据 var records = []struct { field1 int field2 string field3 string }{ {4, "james", "6217986500001234567"}, { field1: 5, field2: "john", field3: "6217986500007654321", }, } // 调用预编译对象的Exec方法绑定参数并执行SQL语句 for _, record := range records { _, err = copy_stmt.Exec(record.field1, record.field2, record.field3) if err != nil { log.Fatal(err) } } // 调用事务对象的Commit方法完成事务提交 err = copy_stmt.Close() err = tx.Commit() 当前Go驱动Copy In语句存在强约束,仅能在事务中通过预编译方式执行。
  • 测试用例导入 CodeArts API提供不同版本测试用例的导入功能。 在“版本管理”页面,单击目标版本操作列的,选择“导入”。 弹出“从版本导入测试用例”对话框。 填写导入信息,单击“确定”,完成测试用例的导入。 参数名称 说明 覆盖规则 勾选后,会覆盖编号重复用例和脚本,且无法回退。 版本选择 原版本:需要导入的测试用例版本。 目标版本:被导入测试用例的版本,不可更改。 用例选择 需要导入的测试用例列表。 因存量版本未在API测试模块中被同步创建,不可导入API测试未存在版本的测试用例。
  • Linux操作系统:SSH账号登录 在弹出的“配置授权信息”窗口中,选择“方法一:SSH账号登录”。 图2 选择SSH账号 在下拉框中选择已有的SSH账号。 单击“确定”,完成Linux主机授权。 授权成功后,可在主机授权列表,查看对应主机的已授权信息。 若无可用SSH账号,需首先创建SSH账号。 单击“创建SSH账号”,账置SSH账号信息,具体参数说明参考表1。设置完成后,单击“确认”,即可使用该账号对主机授权。 若需要修改已有SSH账号,单击“编辑”,修改账号信息。 若需要删除已有SSH账号,单击“删除”,删除账号。 图3 账建SSH账号信息 表1 参数说明 参数名称 参数说明 SSH账号别名 自定义SSH账号名称。 登录端口 SSH账号登录的端口号。 选择登录方式 选择登录方式。可选择:“密码登录”或“密钥登录”。 选择“密钥登录”时,需要“创建私钥”。 选择加密密钥 选择已有的加密密钥,或者单击“创建密钥”,创建新的密钥,具体方法请参考创建密钥。 Root权限是否加固 打开该权限后,不可以用root账号直接登录,而是只能通过普通用户登录,然后才能切换到root用户。 sudo用户名 默认为root。 sudo密码 设置sudo用户对应的密码,单击“加密保存”,对密码进行加密保存。
  • Linux操作系统:授权脚本执行 在弹出的“配置授权信息”窗口中,选择“方法二:授权脚本执行”。 单击右侧的“复制”,复制开通授权的命令。 使用远程管理工具(例如:“Xshell”、“SecureCRT”、“PuTTY”),通过弹性IP地址登录到待开通授权的弹性云服务器。 也可使用弹性云服务器的“远程登录”功能,登录弹性云服务器。 执行复制的命令(这里用“SecureCRT”工具登录)。 提示“Install Success”时则执行成功,完成Linux主机授权。 脚本执行授权成功后,在主机授权列表页面,暂时不能显示已授权信息,仅能通过脚本运行结果验证授权成功与否。 # curl -O -s http://XX.XX.XX.XX/southchina-vss-hostscan/vss_hostscan_427c_install.sh && bash vss_hostscan_427c_install.sh --start [INFO] Uninstall Success [INFO] Create vss_hostscan_55e9 account [INFO] Grant sudo privileges for vss_hostscan_55e9 [INFO] Inject SSH Public Key [INFO] Install Success
  • Windows操作系统:Windows账号登录 在弹出的对话框中,选择已有Windows账号。 单击“确定”,完成Windows主机授权。 授权成功后,可在主机授权列表,查看对应主机的已授权信息。 图4 配置授权信息 若无可用Windows账号,需首先创建Windows账号。 单击“创建Windows账号”,配置Windows账号信息,具体参数说明参考表2。设置完成后,单击“确认”,账可使用该账号对主机授权。 如果需要修改已有Windows账号,单击“编辑”,修改号信息。 如果需要删除已有Windows账号,单击“删除”,删除账号。 图5 创建Windows账号 表2 参数说明 参数名称 参数说明 Windows账号别称 自定义Windows账号名称。 选择加密密钥 选择已有的加密密钥,或者单击“创建密钥”,创建新的密钥,具体方法请参考创建密钥。 用户名 默认为Administrator。 密码 Windows系统登录密码。 账号域 查看该Windows系统的账号域并填写到此处,该参数也可以为空,不填写。
  • 云桥部署包更新日志 下表为云桥部署包更新日志。 版本号 更新内容 V23.12.1.1 优化了一些已知问题。 V23.6.1.0 支持使用更安全的安全随机数。 V23.2.1.0 支持LDAP认证源及启动日志优化。 V22.11.1.0 新增功能:增加签名校验及优化日志打印。 V22.6.1.0 新增功能:管理员通过管理门户查看云桥客户端运行日志的能力。 V22.3.1.0 针对AD身份源Agent功能进行优化。 V21.9.2.0 新增看门狗机制。 V21.9.1.0 云桥重连机制优化。 优化了一些已知问题。
  • 获取云桥软件部署包 表1 云桥软件部署包 软件包名称 获取途径 cloudAgent-*.zip 云桥身份源包: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-identitySource-23.12.1.1.zip 云桥身份源包校验文件: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-identitySource-23.12.1.1.zip.sha256 云桥认证源包: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-authSource-23.12.1.1.zip 云桥认证源包校验文件: https://oneaccess-cn-east-3-obs.obs.cn-east-3.myhuaweicloud.com/cloudbridge/cloudAgent-authSource-23.12.1.1.zip.sha256 云桥包下载地址是不带sha256后缀结尾的链接,带sha256后缀结尾的下载链接为对应软件包的校验文件。
  • 校验云桥Agent软件包完整性 文中软件包版本号为示例,请以实际为准。 使用PuTTY/FTP等工具连接待部署服务器,以root用户登录待部署服务器,使用SFTP工具将云桥Agent软件包和对应的SHA256文件上传到待部署服务器,执行ll查看已上传的软件包和校验文件。 [root@cluster-test-eq9ku xxx]# ll total 75724 -rw-r--r-- 1 root root 32696037 Dec 1 16:12 cloudAgent-authSource-23.12.1.1.zip -rw-r--r-- 1 root root 101 Dec 1 16:11 cloudAgent-authSource-23.12.1.1.zip.sha256 -rw-r--r-- 1 root root 44832098 Dec 1 16:12 cloudAgent-identitySource-23.12.1.1.zip -rw-r--r-- 1 root root 105 Dec 1 16:11 cloudAgent-identitySource-23.12.1.1.zip.sha256 执行以下命令校验网关软件包完整性,当回显信息显示OK,表明完整性校验成功。 sha256sum -c cloudAgent-identitySource-23.12.1.1.zip.sha256 [root@cluster-test-eq9ku xxx]# sha256sum -c cloudAgent-identitySource-23.12.1.1.zip.sha256 cloudAgent-identitySource-23.12.1.1.zip: OK sha256sum -c cloudAgent-authSource-23.12.1.1.zip.sha256 [root@cluster-test-eq9ku xxx]# sha256sum -c cloudAgent-authSource-23.12.1.1.zip.sha256 cloudAgent-authSource-23.12.1.1.zip: OK 如果完整性校验不通过,则软件包可能在下载过程中损坏,请重新下载或联系华为工程师解决。
  • 授权通用文件系统 授权通用文件系统时,请确保要授权的对象存储内数据已备份或不再使用,且未被其他服务(如云审计、云监控)占用。 通用文件系统单独进行计费,具体收费情况请参考计费详情。 登录CAE控制台。 在左侧导航栏中选择“系统设置”。 单击“云存储授权”模块中的“编辑”,进入“已授权云存储”页面。 单击“授权通用文件系统”,进入“授权通用文件系统”页面。 选择通用文件系统。支持通过列表上方搜索框,搜索关键词筛选。 未创建文件系统。 单击“查看详情”,跳转至SFS控制台,创建通用文件系统。 选择创建的通用文件系统。 已创建文件系统。 在列表中选择已创建的通用文件系统。 您还可以通过列表上方搜索框搜索关键词筛选数据。 图5 选择通用文件系统 单击“授权”,完成通用文件系统授权。
  • 授权存储桶 仅支持授权和创建类型为标准存储的存储桶。 授权对象存储时,请确保要授权的对象存储内数据已备份或不再使用,且未被其他服务(如云审计、云监控)占用。 存储桶单独进行计费,具体收费情况请参考计费详情。 登录CAE控制台。 在左侧导航栏中选择“系统设置”。 单击“云存储授权”模块中的“编辑”,进入“已授权云存储”页面。 单击“授权存储桶”,进入“授权存储桶”页面。 (可选)如果需要创建新的“存储桶”,请单击“创建存储桶”,在输入框中输入自定义名称,单击“确认”。 图3 授权存储桶 选择已创建的存储桶。支持通过列表上方搜索框,搜索关键词筛选。 单击“授权”。 在弹框中输入AK/SK,并单击“确认”。 可单击“获取访问密钥”,获取访问密钥AK/SK,具体操作请参考访问密钥。 如果您的环境是2024年4月20日前创建的,直接跳过此步骤。 图4 配置访问密钥 页面显示“授权成功”,完成存储桶授权。