云服务器内容精选

  • 修订记录 发布日期 修改说明 2024-05-13 第七十次正式发布。 新增共享VPC章节。 配置隐私数据保护规则补充结果集存储只支持agent方式审计数据库的说明。 2024-04-10 第六十九次正式发布。 控制台新风格升级。 2023-06-30 第六十八次正式发布。 新增如下章节: 查看趋势分析章节; 5.4-升级数据库审计实例版本章节。 2023-04-23 第六十七次正式发布。 修改流程指引章节,增加免Agent审计操作流程。 2022-11-30 第六十六次正式发布。 新增章节5.1-总览。 2022-11-16 第六十五次正式发布。 新增自动备份的延时说明。 2022-06-08 第六十四次正式发布。 DBSS对接 CES 功能上线,新增章节: DBSS监控指标说明 设置监控告警规则 查看监控指标 2022-03-24 第六十三次正式发布。 手动备份审计日志功能下线。 购买数据库安全审计:新增参数“企业项目”。 5.9-备份和恢复数据库审计日志:新增“OBS细粒度授权”操作;自动备份时,备份周期可选“每天”和“每小时”。 2022-01-07 第六十二次正式发布。 表1:新增“数据库类型”选择“MySQL”时,自动关联获取数据库列表,按需选择即可的说明。 2021-07-15 第六十一次正式发布。 修改内容:将服务列表入口“安全”修改为“ 安全与合规 ”。 新增内容如下: 添加SQL注入规则:新增“添加SQL注入规则”。 添加数据库:新增选择 GaussDB (for MySQL)时自动关联库内所有实例说明。 添加Agent(E CS /BMS自建数据库):数据库端添加Agent时,新增阈值自定义功能。 操作步骤:告警信息新增“Agent异常”筛选。 2021-06-17 第六十次正式发布。 表1:新增“数据库类型”选择“GaussDB(for MySQL)”时,自动关联获取数据库列表,按需选择即可的说明。 2021-04-19 第五十九次正式发布。 安装Agent(Linux操作系统),修改Agent安装包命名。 管理添加的数据库和Agent,新增“SHA256校验值”,校验Agent包的完整性。 卸载Agent,修改Agent安装包命名。 2021-04-01 第五十八次正式发布。 “数据库安全防护”相关内容下线。 2021-03-22 第五十七次正式发布。 步骤二:添加Agent,优化相关内容描述。 添加风险操作,优化相关内容描述。 2021-01-19 第五十六次正式发布。 优化数据库安全审计步骤流程。 2020-12-18 第五十五次正式发布。 新增步骤四:添加安全组规则。 流程指引,新增添加安全组规则描述。 步骤二:添加Agent,优化相关内容描述。 步骤三:下载并安装Agent,优化相关内容描述。 5.6-查看审计结果,新增前提条件。 2020-12-15 第五十四次正式发布。 步骤一:添加数据库,优化相关内容描述。 2020-11-27 第五十三次正式发布。 添加审计范围,审计范围新增“例外IP”功能。 2020-10-14 第五十二次正式发布。 购买数据库安全审计,新增购买数据库安全审计实例时选择VPC的说明描述。 “购买数据库安全防护”,新增购买数据库安全防护实例时选择VPC的说明描述。 2020-09-23 第五十一次正式发布。 添加风险操作,新增一条默认风险操作“数据库拖库检测”。 2020-08-31 第五十次正式发布。 查看SQL语句详细信息,新增审计语句和结果集字数长度限制。 创建用户并授权使用DBSS,优化相关内容描述。 2020-07-31 第四十九次正式发布。 设置告警通知,告警通知方式变更,对接 SMN 服务,通知方式多样化。 下线“设置邮件通知”章节。 2020-07-20 第四十八次正式发布。 5.9-备份和恢复数据库审计日志,新增备份日志说明。 2020-07-08 第四十七次正式发布。 安装Agent(Linux操作系统),优化相关内容描述。 安装Agent(Windows操作系统),优化相关内容描述。 2020-06-29 第四十六次正式发布。 购买数据库安全审计,优化相关内容描述。 “购买数据库安全防护”,优化相关内容描述。 2020-06-16 第四十五次正式发布。 添加审计范围,优化相关内容描述。 设置告警通知,优化相关内容描述。 2020-06-08 第四十四次正式发布。 “步骤三:添加防护的数据库”,合并“添加防护的DDM”。 “步骤四:修改业务侧配置文件”,修改章标题并优化相关内容描述。 2020-06-05 第四十三次正式发布。 “购买数据库安全防护”,优化相关内容描述。 添加审计范围,新增审计范围的操作类型。 查看告警信息,新增“日志备份OBS失败”告警类型。 2020-04-30 第四十二次正式发布。 步骤二:添加Agent,优化相关内容描述。 下载Agent,优化相关内容描述。 2020-04-21 第四十一次正式发布。 “步骤四:修改业务侧配置文件”,优化相关内容描述。 2020-04-03 第四十次正式发布。 更新界面截图。 2020-03-20 第三十九次正式发布。 修改管理数据库安全审计实例,新增实例运行状态。 2020-03-16 第三十八次正式发布。 新增字符集“GBK”,oracle数据库增加“19c”版本。 “数据库安全防护故障排查”调整为FAQ。 “数据库安全审计故障排查”调整为FAQ。 2020-03-03 第三十七次正式发布。 修改“购买数据库安全防护”,新增防护实例创建失败相关内容。 修改“管理数据库安全防护实例”,新增查看详情操作说明。 修改购买数据库安全审计,新增审计实例创建失败相关内容。 修改步骤一:添加数据库,优化相关内容描述。 修改管理数据库安全审计实例,新增查看详情操作说明。 2020-02-21 第三十六次正式发布。 新增安装Agent(Windows操作系统)。 修改步骤二:添加Agent,新增添加Agent场景条件。 修改安装Agent(Linux操作系统)。 修改卸载Agent,新增Windows相关描述。 新增Windows相关描述。 2020-01-15 第三十五次正式发布。 修改添加Agent,优化内容描述。 修改安装Agent(Linux操作系统),优化内容描述。 修改备份和恢复数据库审计日志,优化内容描述。 2020-01-06 第三十四次正式发布。 修改权限管理章节,更新界面截图。 修改添加Agent,优化内容描述。 修改安装Agent(Linux操作系统),优化内容描述。 修改如何查看 云审计 日志,优化内容描述以及更新界面截图。 2019-12-23 第三十三次正式发布。 优化“数据库安全防护使用指导”章节架构。 更新Console界面截图。 2019-11-30 第三十二次正式发布。 新增安装Agent(Windows操作系统)。 修改“购买数据库安全防护”,更新截图以及相关内容描述。 修改添加数据库并开启审计,更新界面截图以及相关内容描述。 修改步骤二:添加Agent,更新界面截图以及相关内容描述。 2019-10-24 第三十一次正式发布。 修改步骤二:添加Agent,优化相关内容描述。 修改步骤三:下载并安装Agent,优化相关内容描述。 2019-10-16 第三十次正式发布。 修改步骤二:添加Agent,优化相关内容描述。 2019-08-29 第二十九次正式发布。 “登录HexaTier ”章节修改为常见问题“如何登录HexaTier?”。 修改“管理数据库安全防护实例”,更新界面截图以及相关内容描述。 2019-08-21 第二十八次正式发布。 修改“登录HexaTier”章节,优化操作入口描述。 修改“数据库安全防护相关操作”,优化操作入口描述。 修改“数据库安全审计使用指导”,优化操作入口描述。 修改“故障排查”章节,优化操作入口描述。 2019-08-01 第二十七次正式发布。 修改“登录HexaTier”章节,更新界面截图以及优化相关内容描述。 修改“数据库安全防护相关操作”,更新界面截图以及优化相关内容描述。 2019-07-30 第二十六次正式发布。 修改购买数据库安全审计,优化相关内容描述。 修改其他操作,优化相关内容描述。 2019-07-22 第二十五次正式发布。 新增“购买数据库安全防护”。 新增购买数据库安全审计。 新增“配置隐私数据保护规则”。 新增“管理隐私数据保护规则”。 修改“重置HexaTier登录密码”,优化相关内容描述。 修改管理添加的数据库和Agent,更新界面截图以及优化相关内容描述。 2019-06-28 第二十四次正式发布。 新增“数据库安全防护无法连接防护数据库”。 新增“无法访问数据库安全防护界面”。 2019-06-25 第二十三次正式发布。 新增“数据库安全审计运行正常但无审计记录”。 修改“Agent与数据库安全审计实例之间通信异常”,优化相关内容描述。 修改“无法使用数据库安全审计”,优化相关内容描述。 2019-06-14 第二十二次正式发布。 新增“重置HexaTier登录密码”。 修改“登录HexaTier”章节,更新界面截图以及修改相关内容描述。 修改“数据库安全防护相关操作”,更新界面截图以及修改相关内容描述。 2019-06-12 第二十一次正式发布。 修改“数据库安全审计使用指导”,调整了大纲,更新界面截图以及修改相关内容描述。 新增管理备份的审计日志。 2019-06-10 第二十次正式发布。 修改“数据库安全审计使用指导”章节,更新界面截图以及修改相关内容描述。 2019-05-30 第十九次正式发布。 修改添加数据库并开启审计,修改相关内容描述。 2019-05-22 第十八次正式发布。 新增权限管理章节。 新增“Agent与数据库安全审计实例之间通信异常”。 修改步骤二:添加Agent,优化相关内容描述。 修改“设置邮件和告警通知”,优化相关内容描述。 修改管理数据库审计报表,优化相关内容描述。 修改备份和恢复数据库审计日志,优化相关内容描述。 2019-05-10 第十七次正式发布。 修改“添加数据库”,更新截图以及优化相关内容描述。 修改“登录HexaTier”章节,更新截图以及相关内容描述。 修改“数据库安全防护相关操作”,更新截图以及相关内容描述。 2019-04-15 第十六次正式发布。 修改添加审计范围章节,优化相关内容描述。 2019-04-08 第十五次正式发布。 修改“数据库安全审计配置流程”章节,修改了流程图。 修改备份和恢复数据库审计日志,补充相关内容描述。 修改“数据库安全审计使用指导”,更新界面截图。 2019-03-30 第十四次正式发布。 修改添加数据库章节,优化相关内容描述。 2019-01-15 第十三次正式发布。 调整文档大纲,优化内容描述。 2018-12-25 第十二次正式发布。 新增“无法使用数据库安全审计”。 2018-12-06 第十一次正式发布。 新增“配置数据库防火墙策略”。 新增“基于发现结果生成规则”。 2018-10-15 第十次正式发布。 优化部分内容描述。 2018-09-27 第九次正式发布。 优化“登录HexaTier”章节内容描述。 2018-09-12 第八次正式发布。 优化了内容描述。 2018-07-19 第七次正式发布。 新增“HexaTier”章节。 新增“产品优势”章节。 新增“入门”章节。 新增“连接DDM作为受保护的数据库”章节。 新增“配置参数”章节。 修改“使用场景”章节,优化了内容描述。 2018-04-27 第六次正式发布。 新增5.11-云审计服务支持的关键操作章节。 2018-03-22 第五次正式发布。 调整了文档大纲,并修改了部分内容描述。 2018-01-30 第四次正式发布。 修改“申请DBSS实例”章节,更新界面截图和相关描述。 修改“数据库防护控制台操作指导”章节,更新相关内容描述。 2017-12-04 第三次正式发布。 新增“解绑弹性IP”章节。 2017-11-02 第二次正式发布。 修改“使用场景”章节,优化了内容描述。 修改“管理实例”章节,更新了界面截图以及相关内容描述。 修改“登录HexaTier”章节,修改了操作步骤。 修改“配置高可用模式”章节,修改了操作步骤。 2017-09-15 第一次正式发布。
  • 效果验证 以脱敏“护照号”信息,且审计的数据库为MySQL为例说明,请参考以下操作步骤验证隐私数据脱敏功能是否生效: 开启“隐私数据脱敏”,并确保“护照号”规则已启用,如图2所示。 图2 规则已启用 使用MySQL数据库自带的客户端,以root用户登录数据库。 在数据库客户端,输入一条SQL请求语句。 select * from db where HOST="护照号"; 在左侧导航栏选择“数据报表”,进入“数据报表”页面。 根据筛选条件,查询输入的SQL语句。 在该SQL语句所在行的“操作”列,单击“详情”。 查看SQL请求语句信息,隐私数据脱敏功能正常,“SQL请求语句”显示脱敏后的信息。
  • Java 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 package com.huaweicloud.sdk.test; import com.huaweicloud.sdk.core.auth.ICredential; import com.huaweicloud.sdk.core.auth.BasicCredentials; import com.huaweicloud.sdk.core.exception.ConnectionException; import com.huaweicloud.sdk.core.exception.RequestTimeoutException; import com.huaweicloud.sdk.core.exception.ServiceResponseException; import com.huaweicloud.sdk.dbss.v1.region.DbssRegion; import com.huaweicloud.sdk.dbss.v1.*; import com.huaweicloud.sdk.dbss.v1.model.*; public class SwitchRiskRuleSolution { public static void main(String[] args) { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment String ak = System.getenv("CLOUD_SDK_AK"); String sk = System.getenv("CLOUD_SDK_SK"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); DbssClient client = DbssClient.newBuilder() .withCredential(auth) .withRegion(DbssRegion.valueOf("cn-north-4")) .build(); SwitchRiskRuleRequest request = new SwitchRiskRuleRequest(); BatchSwitchesRequest body = new BatchSwitchesRequest(); body.withStatus(BatchSwitchesRequest.StatusEnum.fromValue("OFF")); body.withIds("c7ILB3kBCwCqSg3B2OpF"); request.withBody(body); try { SwitchRiskRuleResponse response = client.switchRiskRule(request); System.out.println(response.toString()); } catch (ConnectionException e) { e.printStackTrace(); } catch (RequestTimeoutException e) { e.printStackTrace(); } catch (ServiceResponseException e) { e.printStackTrace(); System.out.println(e.getHttpStatusCode()); System.out.println(e.getRequestId()); System.out.println(e.getErrorCode()); System.out.println(e.getErrorMsg()); } } }
  • Go 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" dbss "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dbss/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dbss/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/dbss/v1/region" ) func main() { // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak := os.Getenv("CLOUD_SDK_AK") sk := os.Getenv("CLOUD_SDK_SK") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := dbss.NewDbssClient( dbss.DbssClientBuilder(). WithRegion(region.ValueOf("cn-north-4")). WithCredential(auth). Build()) request := &model.SwitchRiskRuleRequest{} statusBatchSwitchesRequest:= model.GetBatchSwitchesRequestStatusEnum().OFF idsBatchSwitchesRequest:= "c7ILB3kBCwCqSg3B2OpF" request.Body = &model.BatchSwitchesRequest{ Status: &statusBatchSwitchesRequest, Ids: &idsBatchSwitchesRequest, } response, err := client.SwitchRiskRule(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } }
  • Python 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 # coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkdbss.v1.region.dbss_region import DbssRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkdbss.v1 import * if __name__ == "__main__": # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security. # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment ak = os.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = DbssClient.new_builder() \ .with_credentials(credentials) \ .with_region(DbssRegion.value_of("cn-north-4")) \ .build() try: request = SwitchRiskRuleRequest() request.body = BatchSwitchesRequest( status="OFF", ids="c7ILB3kBCwCqSg3B2OpF" ) response = client.switch_risk_rule(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)
  • 响应示例 状态码: 200 请求已成功。 { "result" : "SUCCESS" } 状态码: 400 请求参数有误。 { "error" : { "error_code" : "DBSS.XXX", "error_msg" : "XXX" } } 状态码: 403 认证失败。 { "error" : { "error_code" : "DBSS.XXX", "error_msg" : "XXX" } }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 ids 否 String risk id, ids 中间逗号分隔 status 否 String OFF:关闭 ON:开启 枚举值: OFF ON
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 status String 响应状态 状态码: 400 表5 响应Body参数 参数 参数类型 描述 error Object 错误信息返回体。 表6 ErrorDetail 参数 参数类型 描述 error_code String 错误请求返回的错误码。 error_msg String 错误请求返回的错误信息。 状态码: 403 表7 响应Body参数 参数 参数类型 描述 error Object 错误信息返回体。 表8 ErrorDetail 参数 参数类型 描述 error_code String 错误请求返回的错误码。 error_msg String 错误请求返回的错误信息。
  • 调用API获取项目ID 项目ID可以通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects”,其中{Endpoint}为IAM的终端节点,可以从地区和终端节点获取。接口的认证鉴权请参见认证鉴权。 响应示例如下,其中projects下的“id”即为项目ID。 { "projects": [ { "domain_id": "65382450e8f64ac0870cd180d14e684b", "is_domain": false, "parent_id": "65382450e8f64ac0870cd180d14e684b", "name": "xxxxxxxx", "description": "", "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99" }, "id": "a4a5d4098fb4474fa22cd05f897d6b99", "enabled": true } ], "links": { "next": null, "previous": null, "self": "https://www.example.com/v3/projects" } }
  • 应用日志收集 对于应用日志,华为云建议使用ICAgent收集,应用日志一般包括应用程序日志、客户自建网关日志、操作系统日志、容器日志等,这些日志会写入本地系统磁盘,ICAgent通过实时监听本地文件的变化来采集日志,ICAgent与您的程序解耦,您不需要更改代码,它可以将这些日志从所在主机发送到华为 云日志 服务。 对于华为云上的CCE容器应用,您在控制台上打开日志采集开关即可收集日志到日志服务。对于用户自建的K8S集群,您可以使用日志服务提供的CRD方式采集原生K8S容器日志。(https://support.huaweicloud.com/usermanual-lts/lts_04_1110.html)
  • 日志与第三方系统集成 用户的SIEM(安全信息和事件管理,例如Splunk)位于内部部署环境中,而不是云上。出于安全考虑,云上服务无法直接从外部环境访问任何SIEM端口。华为 云日志服务LTS 提供API,让任何外部应用程序和平台都可以使用这些API来检索LTS中存储的日志。同时LTS可以实时转储日志到DMS(KAFKA),外部应用程序可以实时消费DMS(KAFKA),接入到用户自己SIEM系统中。因此建议企业将日志账号中的日志流实时转储到DMS(KAFKA),企业的SIEM系统可以实时消费KAFKA接入日志数据。 图4 云日志服务数据对接客户的SIEM
  • 日志分析 一旦日志收集到日志服务,日志分析团队就可以使用关键词来搜索过滤感兴趣的日志,可以使用SQL语法来分析日志,并生成可视化图表(表格、柱状图、饼图、折线图等)。日志分析团队可以将图表组合到仪表盘中,为业务提供运营分析,支持提取仪表盘为模板,为不同的日志流提供开箱即用的分析能力。日志分析团队可以基于关键词或者是SQL语句创建告警规则,用来监控系统的运行情况,告警可以通过短信、邮件、企业微信、钉钉等多种方式发送。 图3 日志分析
  • 背景信息 表1 华为云Landing Zone工具集 工具 所属云服务 具体描述 账号 IAM 账号(Account)是云上资源归属和使用计费的主体,对其所拥有的资源具有完全控制权限,可以创建和管理用户、用户组,并对用户组进行授权。账号统一接收用户进行资源操作时产生的费用账单。不同账号间有严格的物理隔离,网络互不相通,跨账号的资源互访需要使用特定的工具解决。 组织 企业中心 华为云提供的组织管理功能,允许企业在华为云上创建匹配自身组织结构的组织单元(Organization Unit, OU),并可以通过创建账号或邀请其他账号的方式为组织单元添加账号,实现对多个账号的统一资金管理和消费汇总。创建组织结构的账号为主账号,添加到组织单元的账号为子账号,主子账号通过组织结构构成了一种层级关系。主账号可以将自己的账号余额、信用额度、代金券划拨给子账号,主账号也可以查看子账号在华为云上的财务信息和消费信息,子账号可以继承主账号的商务折扣。需要指出的是,主账号和子账号间依然有严格的物理隔离,网络互不相通。 企业项目 EPS 企业项目(Enterprise Project, EP)是云资源的逻辑集合,其中的资源可以迁入迁出,方便租户按照自身的项目管理模式在华为云上进行资源的分组管理、成本核算和权限控制。一个企业项目可以包含多个区域的资源,可以授权给一个或者多个用户组进行管理。企业项目的灵活性较好,推荐用作企业的IT项目管理。 IAM项目 IAM IAM项目针对同一个区域(Region)内的资源进行分组和物理隔离,在IAM项目中的资源不能转移到另一个IAM项目,只能删除后重建,灵活性不高。 用户 IAM 用户由华为云账号在IAM中创建,是云服务的使用人员,具有独立的身份凭证(密码和访问密钥),根据账号授予的权限使用资源,账号可以随时修改或者撤销IAM用户的使用权限。用户不进行独立的计费,由所属账号统一付费。 用户组 IAM 用户组是用户的集合,华为云通过用户组功能实现用户的授权。用户需要加入特定用户组后,才具备对应的权限。当某个用户加入多个用户组时,此用户同时拥多个用户组的权限,即多个用户组权限的全集。 策略 IAM IAM提供的一种细粒度授权机制,可以精确到具体服务的操作、资源以及请求条件等,使用基于策略的授权是一种更加灵活地授权方式,能够满足企业对权限最小化的安全管控要求。策略根据创建的对象,分为系统策略和自定义策略。 授权 IAM 华为云通过给用户组授予策略或角色,用户组中的用户就能获得了相应的权限,这一过程称为授权。用户获得具体云服务的权限后,可以对云服务进行操作。有两种授权范围,一个是IAM项目,另一个是企业项目,IAM项目的授权范围是账号内特定区域,企业项目的授权范围仅限于特定企业项目。按照最小授权原则,推荐在企业项目中进行授权。 服务配额 公共服务 华为云平台上单个账号内各服务资源的配额,对用户所能申请的资源数量和容量做了限制,但企业如果确实会使用超过配额的云服务资源,可以提工单申请扩大配额。 资金配额 CBC 为防止用户过度订购云服务,限定账号和企业项目在华为云上订购云服务的资金上限。 成本中心 CBC 成本中心是华为云免费向客户提供的一项成本管理服务,可帮助客户收集华为云成本和使用量的相关信息、探索和分析华为云成本使用情况、监控和跟踪华为云成本。主要功能包括成本分析、预算管理、成本监控、成本优化建议和成本标签等。 安全合规 Compass Compass是一个自动化合规评估和安全治理的平台,以华为内部云服务网络安全与合规标准为基座,将华为积累的全球安全合规经验服务化,开放PCI DSS、ISO27701、ISO27001等安全治理模板,将合规语言IT化实现自动化扫描,可视化呈现合规状态,一键生成合规遵从性报告,帮助租户快速实现云上业务的安全遵从,提升租户获得法规及行业标准认证的效率。 态势感知 SA SA(Situation Awareness,态势感知)是华为 云安全 管理与态势分析平台。能够检测出超过20大类的云上安全风险,包括DDoS攻击、暴力破解、Web攻击、后门木马、僵尸主机、异常行为、漏洞攻击、命令与控制等。利用大数据分析技术,态势感知可以对攻击事件、威胁告警和攻击源头进行分类统计和综合分析,为用户呈现出全局安全攻击态势。 资源合规 RMS 通过设置合规规则对特定云资源进行合规检查,如检查某个区域内所有已挂载的云硬盘是否加密。 云审计 CTS 是一种专业的日志审计服务,提供对各种云资源操作记录的收集、存储和查询功能,可用于支撑安全分析、合规审计、资源跟踪和问题定位等常见应用场景。 标签管理 TMS 标签用于标识云资源,当您拥有相同类型的许多云资源时,可以使用标签按各种维度(例如用途、所有者或环境)对云资源进行分类管理。 企业路由器 ER 企业路由器(Enterprise Router, ER)可以连接VPC或本地网络来构建Region级别的中心辐射型网络,是云上大规格,高带宽,高性能的集中路由器。企业路由器使用边界网关协议,支持路由学习、动态选路以及链路切换。企业路由器能够打通多个账号内VPC之间的网络,可以通过VPN、专线与本地网络三层互通,通过云连接与用户在其他Region的VPC互通,通过路由配置,实现灵活的隔离和互通。 VPC VPC 为云服务器、云容器、云数据库等资源构建隔离的、用户自主配置和管理的虚拟网络环境,提升用户云上资源的安全性,简化用户的网络部署。 子网 VPC 提供一个网段,用来管理云资源网络平面,可以提供IP地址管理、DNS服务。默认情况下,同一个VPC的所有子网内的云服务器均可以进行通信,但可以通过设置网络ACL或安全组进行子网间的安全访问控制,不同VPC之间默认不能通信。
  • 企业IT治理架构 大企业的业务覆盖范围很广泛,分布在不同的子行业和地理区域,为支持整个公司的长期稳定运行和有效管理,通常采用集团化和等级式管理模式。随着经营范围和规模的不断扩大,需要不断建立子公司、分公司,子公司再建立孙公司,大部门也逐步拆分成多个小部门,组织结构的层级也就越来越多。大企业的IT治理架构也会受到组织结构的影响,以下是一个典型的大企业IT治理架构示意图,由于图片空间有限,该示意图中没有穷举全部的层级和图元。本文所描述的Landing Zone最佳实践以下图的IT治理架构为基础,将其映射到华为云上有效运转起来。 图1 大企业IT治理架构 在上述大企业IT治理架构中,各个层级的具体含义如下: 集团公司:是指以资本为主要联结纽带,以母子公司为主体,以集团章程为共同行为规范的,由母公司、子公司及其他成员共同组成的企业法人联合体。 子公司:其50%以上有投票表决权的股份或资本被另一企业(母公司)所拥有的企业,母公司对子公司的一切重大事项拥有实际上的决定权。子公司具有独立法人资格,在法律上是完全独立的公司,是独立的核算主体和纳税主体。子公司可以根据经营管理需求再成立自己的子公司或分公司。 分公司:分公司是母公司管辖的分支机构,是指母公司在其住所以外设立的以自己的名义从事活动的机构,如在各个省市成立的销售分公司。分公司不具有企业法人资格,其民事责任由母公司承担。 独立法人:独立法人是指依法在工商部门登记的拥有企业独立法人营业执照的经济组织,具备独立的民事行为能力,能够独立承担民事责任。 部门:母公司、子公司和分公司都可以基于自己的经营管理需求设立部门,如软件企业可以按照不同的软件产品线设立不同的部门,工业制造企业可以按照业务流程设立研发部、制造部、采购部、销售部、服务部等。大部门还可以再进一步拆分成小部门。 IT系统:企业按照业务需求和IT管理需求建设的IT系统,包括业务支撑类应用系统(如ERP、CRM、营销管理系统等)和IT管理类应用系统(如SOC、运维监控系统等),IT系统的开发、测试、实施和运行需要消耗一定的计算、存储、网络、安全、数据库、中间件、大数据、AI服务等资源。 子系统:IT系统通常包含多个相互解耦且相互关联的子系统、功能模块或微服务,这些子系统相互协作,共同实现IT系统的功能。 功能小组:参与IT系统建设和管理的成员按照职责划分为不同的功能小组,如基础设施组、网络组、安全组、应用开发组等。 成员:一个成员代表一个参与IT系统建设和管理的人,可加入到同一部门下不同的IT系统和功能小组,但一般不参见其他部门的IT系统。 运行环境:IT系统通常要部署到不同的运行环境:互联网环境、生产环境、开发环境和测试环境。 图2 大企业IT治理架构的层级关系 上述IT治理架构中的各个层级需要逐一映射到华为云上,在华为云上创建相应的对象,推荐的映射关系如下图所示。集团公司映射为华为云的主账号,下面的子公司、分公司和部门都可以映射为华为云的组织单元(Organization Unit, OU)。IT系统映射为子账号,子系统则可以映射为企业项目。功能小组映射为华为云IAM的用户组,成员则可以对应到华为云IAM的用户。生产、开发和测试等运行环境可以划分到不同的VPC。 图3 企业IT治理架构到华为云的映射 父主题: 实施步骤
  • 方案优势 为了实现业务单元的安全和故障隔离,华为云的推荐做法是将不同业务单元的应用系统分别部署在不同的账号中。华为云账号具备以下三个属性。 华为云账号是一个资源容器,用户可以在其中部署任意云资源和上层业务应用系统,不同的账号相当于不同的资源容器,账号之间是完全隔离的。因此在一个账号中的故障和安全风险不会影响和传播到其他账号。 华为云账号也是安全管理边界,每个账号都有独立的身份和权限管理系统,一个账号内的用户只能访问和管理本账号的资源,未经允许,一个账号内的用户不能访问其他账号的资源、数据和应用。 华为云账号还可以作为独立的账单实体,每个账号可以单独在华为云上充值、购买云资源、结算和开票。 因此华为云账号可以针对业务单元进行有效的故障和安全隔离,还可以进一步进行管理和财务隔离。 另外,为了避免单点故障带来雪崩效应、减少单点故障的爆炸半径,核心办法就是不要把所用业务系统及其云资源部署在单一账号,也就是不要“把鸡蛋放在一个篮子里”。单一账号存在两个严重的问题:其一是单一账号的爆炸半径太大,如果该账号发生崩溃将导致企业所有业务系统不可用;其二是云平台上账号的资源配额是有上限的,不能在一个账号内无限扩容云资源。 因此当企业全面上云时通常需要采用多账号架构。按照康威定律,企业的多账号架构通常会与其组织架构或业务架构保持一致,即按照业务单元、地理单元、职能单元等维度划分账号。采用多账号架构后可以实现职责分离,不同的账号负责不同的事情、承载不同的业务,每个账号的管理员可以对本账号内的资源进行自治管理,但同时从IT治理角度肯定要求一定程度的统一管控,比如多账号的统一运维管理、安全管控、资源管理、网络管理、财务管理等。针对这些核心诉求,华为云提出了Landing Zone解决方案来帮助企业在云上构建安全合规、可扩展的多账号运行环境,实现多账号的资源共享和“人财物权法”的统一管控。 人的管理:多账号环境下对业务单元、账号、用户、用户组、角色等进行统一管理; 财的管理:多账号环境下对资金、预算、成本、发票、折扣等进行统一管理; 物的管理:多账号环境下对计算、存储、网络、数据、应用等云资源进行统一运维、监控和管理; 权的管理:多账号环境下对云资源的访问权限进行统一管理,确保访问权限符合最小授权原则; 法的管理:多账号环境下对安全合规进行统一管理,确保符合国家、行业和企业自身的安全合规要求。 企业成功实施了Landing Zone解决方案之后,可以有效规避大规模上云之后的管理失控、安全失控、成本失控的风险,全面应对各种IT治理挑战,帮助企业建立分统结合的IT治理体系和完善的安全合规体系。 分统结合的IT治理体系:即在分权分域分级管理的基础上进行一定程度的统一管控,如统一运维、统一安全等; 完善的安全合规体系:云上运行环境(包括云资源、数据、应用等)满足国家、行业和企业自身的安全合规标准。