【已评审】新增安全协处理器启动度量信息Web/资源协作接口信息

背景

新一代芯片新增安全协处理器,需要对其启动度量信息进行展示。

关联ISSUE

[需求]: 支持安全协处理器启动度量信息获取

整体方案

安全协处理器的启动度量信息由组件上资源协作接口,并通过北向REST接口向外部呈现。

评审点

评审点一:新增资源协作接口 /bmc/kepler/Managers/:ManagerId/TPCM/Measured/Coprocessors/:Id
新增Path:/bmc/kepler/Managers/:ManagerId/TPCM/Measured/Coprocessors/:Id
Interface:bmc.kepler.Managers.TPCM.Measured
属性: NameVersionPCRNameActualDigestStandardDigestComparedResultControlAction

评审点二:REST接口新增安全协处理器度量信息
1./UI/Rest/AccessMgnt/TPCMDetailedInfoGET方法新增Coprocessor度量信息

详细描述

评审点一:新增资源协作接口

新增Path:/bmc/kepler/Managers/:ManagerId/TPCM/Measured/Coprocessors/:Id
Interface:bmc.kepler.Managers.TPCM.Measured
属性:(与原有Interface保持一致)

属性名称 签名 默认值 操作权限 说明 持久化 变化通知 备注
Name s “” “read”: [“ReadOnly”] 启动度量对象 复位持久化 false
Version s “” “read”: [“ReadOnly”] 版本号 复位持久化 false
PCRName s “” “read”: [“ReadOnly”] 取值范围"PCR[0]“到"PCR[23]” 复位持久化 false
ActualDigest s “” “read”: [“ReadOnly”] 实际度量值:16进制字符组成长度为64的字符串 复位持久化 true
StandardDigest s “” “read”: [“ReadOnly”]
“write”: [“SecurityMgmt”]
基准度量值:16进制字符组成长度为64的字符串 复位持久化 true
ComparedResult y 0xff “read”: [“ReadOnly”] 度量结果:0xff-未度量2-不支持, 1-失败0-成功 复位持久化 false
ControlAction y 0xff “read”: [“ReadOnly”] 控制行为(度量失败是否放行):0xff-未度量2-不支持1-不放行0-放行 复位持久化 false

评审点二:REST接口新增Coprocessor响应

URI:/UI/Rest/AccessMgnt/TPCMDetailedInfo
变化类型: 新增响应内容
操作类型: GET
应用场景: WEB展示安全协处理器启动度量信息
详细描述:/UI/Rest/AccessMgnt/TPCMDetailedInfo接口响应中新增安全协处理器度量信息:

属性名称 取值类型 取值范围 默认值 说明
{
MeasuredObject String 协处理器名称+Id,如:“Coprocessor1” “” 启动度量对象名称
Version String 版本号字符串,如"1.0.10.2" “” 版本号
PCR String "PCR[0]“到"PCR[23]” “” PCR名称, 取值范围"PCR[0]“到"PCR[23]”
ActualDigest String 16进制字符组成长度为64的字符串 “” 实际度量值
StandardDigest String 16进制字符组成长度为64的字符串 “” 基准度量值
IsMatch Bool true-匹配false-不匹配 false 度量结果(实际值与基准值是否相等)
}

示例:
GET:/UI/Rest/AccessMgnt/TPCMDetailedInfo

{
    "Count": 9,
    "Members": [
        {
            "IsMatch": true,
            "Version": "1.0.0.0",
            "StandardDigest": "12************************************************************34",
            "ActualDigest": "12************************************************************34",
            "MeasuredObject": "Coprocessor1",
            "PCR": "PCR[0]"
        },
		...
}

评审结论

  1. 同意资源协作接口新增路径/bmc/kepler/Managers/:ManagerId/TPCM/Measured/Coprocessors/:Id, 包含已有接口bmc.kepler.Managers.TPCM.Measured,属性保持原有设计。
  2. 同意webrest接口 /UI/Rest/AccessMgnt/TPCMDetailedInfo的GET操作响应中Members对象数组新增实例,表示安全协处理器度量信息,属性保持原有设计。

遗留问题

1、Coprocessor的PATH加ID - 已闭环 - /bmc/kepler/Managers/:ManagerId/TPCM/Measured/Coprocessors/:Id