背景
SecureBootbases资源支持Redfish新标准
关联ISSUE
[需求]: SecureBootDatabases相关资源支持redfish新标准
评审点
新增redfish接口
详细描述
1 新增接口查询安全启动资源
-
操作权限:ReadOnly
-
请求类型:GET
-
请求URL:/redfish/v1/Systems/{SystemId}/SecureBoot
-
请求头:无
-
请求体:无
-
响应体:
| 字段 | 类型 | 说明 |
|---|---|---|
| @odata.context | string | 安全启动资源的OData描述 |
| @odata.id | string | 安全启动资源的访问路径 |
| @odata.type | string | 安全启动资源的类型 |
| Id | string | 安全启动资源的ID |
| Name | string | 安全启动资源的名称 |
| Description | string | 安全启动资源的描述 |
| Actions | object | 接口可使用动作 |
| SecureBootDatabases | object | 安全启动数据库集合的链接 |
新增接口属性查询安全启动资源链接
-
操作权限:ReadOnly
-
请求类型:GET
-
请求URL:/redfish/v1/Systems/{SystemId}
-
请求头:无
-
请求体:无
-
响应体:
| 字段 | 类型 | 说明 |
|---|---|---|
| SecureBoot | object | 安全启动资源链接 |
2 新增接口管理安全启动证书资源
-
操作权限:BasicSetting
-
请求类型:POST
-
请求URL:/redfish/v1/Systems/{SystemId}/SecureBoot/Actions/SecureBoot.ResetKeys
-
请求头:
Content-Type:
application/json
application/json;charset=utf-8 -
请求体:
| 字段 | 类型 | 说明 |
|---|---|---|
| ResetKeysType | string, required | 支持DeleteAllKeys、ResetAllKeystoDefault两种类型,分别对安全启动证书执行删除、重置操作 |
3 新增接口查询安全启动数据库集合
-
操作权限:ReadOnly
-
请求类型:GET
-
请求URL:/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases
-
请求头:无
-
请求体:无
-
响应体:
| 字段 | 类型 | 说明 |
|---|---|---|
| @odata.context | string | 安全启动数据库集合的OData描述 |
| @odata.id | string | 安全启动数据库集合的访问路径 |
| @odata.type | string | 安全启动数据库集合的类型 |
| Name | string | 安全启动数据库集合的名称 |
| Description | string | 安全启动数据库集合的描述 |
| Members | object | 安全启动数据库成员链接 |
| Members@odata.count | integer | 安全启动数据库数量 |
4 新增接口查询安全启动数据库资源
-
操作权限:ReadOnly
-
请求类型:GET
-
请求URL:/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db、dbx |
-
请求头:无
-
请求体:无
-
响应体:
| 字段 | 类型 | 说明 |
|---|---|---|
| @odata.context | string | 安全启动数据库资源的OData描述 |
| @odata.id | string | 安全启动数据库资源资源的访问路径 |
| @odata.type | string | 安全启动数据库资源的类型 |
| Id | string | 安全启动数据库资源的ID |
| Name | string | 安全启动数据库资源的名称 |
| Description | string | 安全启动数据库资源的描述 |
| Actions | object | 接口可使用动作 |
| Certificates | object | 安全启动数据库中包含的证书集合的链接 |
| DatabaseId | string | 安全启动数据库的名称 |
5 新增接口管理安全启动数据库中的安全启动证书
-
操作权限:BasicSetting
-
请求类型:POST
-
请求URL:
/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Actions/SecureBootDatabase.ResetKeys
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db、dbx |
-
请求头:
Content-Type:
application/json
application/json;charset=utf-8 -
请求体:
| 字段 | 类型 | 说明 |
|---|---|---|
| ResetKeysType | string, required | 支持DeleteAllKeys、ResetAllKeystoDefault两种类型,对安全启动证书执行删除、重置操作 |
6 新增接口查询安全启动数据库安全启动证书集合
-
操作权限:ReadOnly
-
请求类型:GET
-
请求URL:/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Certificates
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db、dbx |
-
请求头:无
-
请求体:无
-
响应体:
| 字段 | 类型 | 说明 |
|---|---|---|
| @odata.context | string | 安全启动数据库安全启动证书集合的OData描述 |
| @odata.id | string | 安全启动数据库安全启动证书集合的访问路径 |
| @odata.type | string | 安全启动数据库安全启动证书集合的类型 |
| Name | string | 安全启动数据库安全启动证书集合的名称 |
| Description | string | 安全启动数据库安全启动证书集合的描述 |
| Members | object | 安全启动数据库安全启动证书成员链接 |
| Members@odata.count | integer | 安全启动数据库安全启动证书数量 |
7 新增接口查询安全启动数据库中安全启动证书属性
-
操作权限:ReadOnly
-
请求类型:GET
-
请求URL: /redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Certificates/{CertificateId}
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db |
-
请求头:无
-
请求体:无
-
响应体:
| 字段 | 类型 | 说明 |
|---|---|---|
| @odata.context | string | 安全启动证书的OData描述 |
| @odata.id | string | 安全启动证书的访问路径 |
| @odata.type | string | 安全启动证书的类型 |
| Id | string | 安全启动证书的ID |
| Name | string | 安全启动证书的名称 |
| KeyUsage | string, null | 密钥用法 |
| Issuer | string | 证书颁发者信息 |
| ValidNotBefore | string | 有效开始日期 |
| Subject | string | 证书使用者信息 |
| Fingerprint | string | 指纹信息 |
| SerialNumber | string | 序列号 |
| CertificateType | string, null | 证书类型 |
| UefiSignatureOwner | string, null | UEFI签名属主 |
| ValidNotAfter | string | 有效截止日期 |
| FingerprintHashAlgorithm | string | 指纹哈希算法 |
| SignatureAlgorithm | string | 签名算法 |
评审结论
1、同意新增SecureBoot资源
URI:/redfish/v1/Systems/{SystemId}/SecureBoot
操作类型:GET
同时/redfish/v1/Systems/{SystemId}下新增属性SecureBoot(类型为object) ,链接到SecureBoot资源
操作类型:GET
2、同意新增SecureBoot资源的Action(SecureBoot.ResetKeys)
URI:/redfish/v1/Systems/{SystemId}/SecureBoot/Actions/SecureBoot.ResetKeys
操作类型:POST
3、同意新增SecureBootDatabases集合资源
URI:/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases
操作类型:GET
4、同意新增SecureBootDatabase实例资源
URI:/redfish/v1/Systems{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}
操作类型:GET
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db、dbx |
5、同意新增SecureBootDatabase资源的Action(SecureBootDatabases.ResetKeys )
URI:/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Actions/SecureBootDatabase.ResetKeys
操作类型:POST
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db、dbx |
6、同意新增SecureBootDatabase资源的Certificates集合资源
URI:/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Certificates
操作类型:GET
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db、dbx |
7、同意新增SecureBootDatabase资源的Certificate实例资源
URI:/redfish/v1/Systems/{SystemId}/SecureBoot/SecureBootDatabases/{DatabaseId}/Certificates/{CertificateId}
操作类型:GET
| URL参数字段 | 说明 |
|---|---|
| DatabaseId | 数据库类型,可取值db |
具体细节见详细描述
遗留问题
无