
# 获取安全配置统计数据 - ShowSecConfigSummary
#### 功能介绍
根据任务ID获取安全配置统计数据，包括凭证管理、认证问题和会话管理的统计数据。
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-devsecurity/devsecurity_03_0007.html)。
#### 授权信息
账号根用户具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-devsecurity/devsecurity_03_0022.html)。
| 授权项                                          | 访问级别 | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| codeartsgovernance::getBinaryReportSecConfig | Read | -           | -   | -  | -      |
   
#### URI
GET /v1/{project_id}/sbc/task/summary/secconfig
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                           |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释：** 用户项目ID，获取方式请参见[获取项目ID](https://support.huaweicloud.com/api-devsecurity/devsecurity_03_0019.html)。 **约束限制：** 不涉及。 **取值范围：** 32位项目ID。 **默认取值：** 不涉及。 |
表2Query参数 
| 参数 | 是否必选 | 参数类型   | 描述                                                                                                                    |
|:---|:---|:---|:---|
| id | 是    | String | **参数解释：** 任务ID，即"创建二进制成分分析扫描任务"的返回值，每个CodeArtsGovernance任务都有唯一的任务ID。 **约束限制：** 不涉及。 **取值范围：** 36位固定长度。 **默认取值：** 不涉及。 |
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                        |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。 通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取（响应消息头中X-Subject-Token的值）。 **约束限制：** 不涉及。 **取值范围：** 字符串长度不少于1，不超过10万。 **默认取值：** 不涉及。 |
| Content-Type | 是    | String | **参数解释：** 编码格式。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** application/json：传任何值，接口返回值均为json格式。                                                                                              |
   
#### 响应参数
**状态码：200**
表4响应Body参数 
| 参数   | 参数类型   | 描述                               |
|:---|:---|:---|
| data | Object | **参数解释：** 接口响应成功。 **取值范围：** 不涉及。 |
   
**状态码：400**
表5响应Body参数 
| 参数         | 参数类型   | 描述                             |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误描述。 **取值范围：** 不涉及。 |
   
**状态码：401**
表6响应Body参数 
| 参数         | 参数类型   | 描述                             |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误描述。 **取值范围：** 不涉及。 |
   
**状态码：429**
表7响应Body参数 
| 参数         | 参数类型   | 描述                             |
|:---|:---|:---|
| error_code | String | **参数解释：** 错误码。 **取值范围：** 不涉及。  |
| error_msg  | String | **参数解释：** 错误描述。 **取值范围：** 不涉及。 |
   
#### 请求示例
```
GET https://{endpoint}/v1/{project_id}/sbc/task/summary/secconfig?id={id}
```
#### 响应示例
**状态码：200**
Request succeeded!
```
{
  "data" : {
    "version" : "v1.0",
    "start_time" : "Jul 13 2023 10:25:02",
    "end_time" : "Jul 13 2023 10:25:02",
    "items" : [ {
      "index" : "1.1",
      "name" : "预置账号信息检查",
      "desc" : "检查预置账号如下配置信息：是否存在未锁定的系统预置账号，是否存在相同 用户名/uid 的用户，是否存在相同密码hash的账户，是否存在弱加密算法加密的密码，root用户密码是否设置了最长使用期限",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "1.2",
      "name" : "sudo高风险命令检查",
      "desc" : "确认sudo中配置了modprobe、insmod等高风险命令，需要排查此类命令是否允许普通用户免密直接执行。",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "1.3",
      "name" : "组成员信息检查",
      "desc" : "是否存在非特权用户加入特权组(root,shadow)，如果存在则会导致非特权用户拥有特权用户权限",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "1.4",
      "name" : "UID为0的非root账户检查",
      "desc" : "UID为0的账户具有root权限，只允许root账户的UID为0。",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "1.5",
      "name" : "密码复杂度检测",
      "desc" : "检查系统中是否有密码复杂度校验规则及规则是否满足要求，CIS建议值为 retry=3 minlen=14 dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "1.6",
      "name" : "硬编码口令检查",
      "desc" : "检查系统中是否存在硬编码账户密码",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "1.7",
      "name" : "历史口令重复使用检查",
      "desc" : "限制历史口令重复使用，可有效防止密码被猜解。",
      "severity" : "low",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "2.1",
      "name" : "SSH authorized_keys文件检查",
      "desc" : "如果存在authorized_keys文件，那么文件还将列出可用于远程登录计算机的SSH密钥。任何拥有该私钥的人，都可以拥有永久访问设备的权限。应当严格控制authorized_keys文件。固件镜像中若存在该文件，则表明只要拥有私钥，任何人都可以访问运行该固件镜像的所有设备。",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "2.2",
      "name" : "硬编码SSH主机密钥",
      "desc" : "对于SSH服务器，应当保留唯一的主机密钥。SSH服务器首次初始化会生成该密钥，该密钥必须独一无二，以便确保加密的安全性。构建中主机密钥的存在表明，所有使用该固件镜像的设备都共享此密钥，这就会带来中间人攻击的风险。",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "2.3",
      "name" : "SSH 配置检查",
      "desc" : "ssh 是Linux下常用的远程登录协议，如果配置不规范，有可能引入信息泄露风险。",
      "severity" : "medium",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "2.4",
      "name" : "硬编码SSH私钥",
      "desc" : "硬编码私钥的存在表明，此密钥不是独一无二的。在这种情况下，如果恶意用户获取了私钥并通过SSH访问了网络，那么该用户便可获得对机器的完全命令行访问。",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "2.5",
      "name" : "开机启动服务检查",
      "desc" : "检查是否有开启telnet,ftp等不安全的服务",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "2.6",
      "name" : "防暴力破解机制检查",
      "desc" : "当尝试登录失败次数达到一定阈值时锁定用户可以有效防止暴力破解。",
      "severity" : "high",
      "result" : "NA",
      "confirmation" : null
    }, {
      "index" : "2.7",
      "name" : "密钥文件检查",
      "desc" : "密钥必须独一无二，以便确保加密的安全性。密钥的存在表明，所有使用该固件镜像的设备都共享此密钥，这就会带来中间人攻击的风险。",
      "severity" : "high",
      "result" : "pass",
      "confirmation" : null
    }, {
      "index" : "2.8",
      "name" : "证书文件检查",
      "desc" : "产品不要包含预置证书。",
      "severity" : "high",
      "result" : "pass",
      "confirmation" : null
    }, {
      "index" : "2.9",
      "name" : "调试工具检查",
      "desc" : "检查二进制包中是否残留开发/编译/调试/网络嗅探类工具。",
      "severity" : "high",
      "result" : "pass",
      "confirmation" : null
    }, {
      "index" : "2.10",
      "name" : "冗余文件检查",
      "desc" : "请关注二进制包中扫出来的自研代码，编译中间文件，冗余配置文件，请分析是否业务需要打包在二进制包中，如果不是请删除。",
      "severity" : "info",
      "result" : "pass",
      "confirmation" : null
    } ]
  }
}
```
#### 状态码
| 状态码 | 描述                 |
|:---|:---|
| 200 | Request succeeded! |
| 400 | Bad Request        |
| 401 | Unauthorized       |
| 429 | Too Many Requests  |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-devsecurity/ErrorCode.html)。
