背景
网管需要支持框内通信国际证书管理能力,当前 bmc.kepler.CertificateService 接口仅支持生成/导出SSL证书的CSR,需要变更资源协作接口以支持框内通信证书的CSR
关联ISSUE
暂无
整体方案
在 /bmc/kepler/CertificateService 接口下,GenerateCSR 方法的有字典类型拓展参数 Options,可通过新增字段支持配置CSR类型;新增 ExportCertCSR 方法支持导出任意证书类型的CSR
评审点
评审点1:GenerateCSR 方法的 Options 参数新增字段 CertificateUsageType 、OutputFilePath
评审点2:新增方法 ExportCertCSR ,用于导出框内通信证书的CSR
详细描述
评审点1 变更资源协作接口 bmc.kepler.CertificateService,GenerateCSR 方法的 Options 参数新增字段 CertificateUsageType 、OutputFilePath
资源path:/bmc/kepler/CertificateService (变更)
资源interface:bmc.kepler.CertificateService (变更)
变化类型:GenerateCSR 方法的 Options 参数新增字段
| 变更类型 | 方法名称 | 请求签名 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 | 变更影响 |
|---|---|---|---|---|---|---|---|
| 变更 | GenerateCSR | ssssssasasia{ss} | sus | FilePath:CSR路径 TaskId:任务ID CSRString:CSR文件内容 |
根据参数配置生成CSR文件, Options为拓展参数,支持配置 证书类型、加密算法 |
SecurityMgmt | 拓展参数新增字段,无影响 |
请求参数描述如下,其中Options 参数新增字段 CertificateUsageType 、OutputFilePath:
| 字段 | 类型签名 | 描述 |
|---|---|---|
| Country | s | (必选)两大写字母国家名称(如:CN),对应 RFC5280中 'countryName’字段 |
| State | s | 省/州,对应 RFC5280中’stateOrProvinceName’字段 |
| City | s | 城市/地址,对应 RFC5280中’localityName’字段 |
| Organization | s | 公司/组织,对应 RFC5280中’organizationName’字段 |
| OrganizationalUnit | s | 部门,对应 RFC5280中’organizationalUnitName’字段 |
| CommonName | s | (必选)常用名,对应 RFC5280中’commonName’字段 |
| AlternativeNames | as | CSR的SAN字段内容,对应 RFC5280中’subjectAltName’字段 |
| KeyUsage | as | 证书密钥用途 |
| KeyBitLength | i | 密钥bit长度 |
| Options | a{ss} | 可选配置 加密算法 {“KeyPairAlgorithm” = “TPM_ALG_SM2"或"TPM_ALG_RSA"或"TPM_ALG_ECC”} 新增配置 证书用途 {“CertificateUsageType” = 1或6} (1-SSL证书;6-框内通信证书) 新增配置 输出路径 {“OutputFilePath” = 本地路径“/tmp/*”或URI} |
评审点2 变更资源协作接口 bmc.kepler.CertificateService,新增方法 ExportCertCSR,用于导出框内通信证书的CSR
资源path:/bmc/kepler/CertificateService (变更)
资源interface:bmc.kepler.CertificateService (变更)
变化类型:新增资源协作接口方法 ExportCertCSR
| 变更类型 | 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 | 变更影响 |
|---|---|---|---|---|---|---|---|---|
| 新增 | ExportCertCSR | isb | CertificateUsageType:int,证书用途 1-SSL证书;6-框内通信证书 Path:string,CSR导出路径, 本地tmp路径或URI IsGetContent:bool, 是否直接获取CSR内容 |
us | TaskId:u32,任务id,仅远程导出涉及 本地导出默认返回0 Content:string,CSR内容 |
导出CSR文件,通过参数CertificateUsageType 支持导出SSL证书和框内通信证书; IsGetContent参数为true时还会返回CSR内容的字符串 |
SecurityMgmt | 新增方法,无影响 |
是否准备好AI预审
否
评审结论
1.同意变更bmc.kepler.CertificateService接口的GenerateCSR方法,详见评审点1
2.同意在bmc.kepler.CertificateService接口下新增方法ExportCertCSR,详见评审点2
遗留问题
无