【已评审】新增资源协作接口属性HideCommunityStrings

背景

支持Manager下的NetworkProtocol资源中新增标准属性:HideCommunityStrings,用于指示在响应体中是否隐藏SNMP团体名信息。

关联ISSUE

[需求]: 支持Manager下的NetworkProtocol资源SNMP对象相关属性-rackmount-GitCode

整体方案

在资源协作接口bmc.kepler.Managers.NetworkProtocol.SNMP下新增属性HideCommunityStrings。用户调用NetworkProtocol资源的redfish接口时,根据该属性确定在响应体中是否隐藏SNMP团体名信息

标准资源:HideCommunityStrings
所在文件:json-schema\ManagerNetworkProtocol.v1_5_0.json

"HideCommunityStrings": {
    "description": "Indicates if the community strings should be hidden.",
    "longDescription": "This property shall indicate if the community strings should be hidden in responses.",
    "readonly": false,
    "type": [
        "boolean",
        "null"
    ],
    "versionAdded": "v1_5_0"
}

评审点

在资源协作接口bmc.kepler.Managers.NetworkProtocol.SNMP下新增属性HideCommunityStrings,用于指示在NetworkProtocol资源的响应体中是否隐藏SNMP团体名信息(/redfish/v1/Managers/1/NetworkProtocol接口下SNMP.CommunityStrings属性)

详细描述

资源path:“/bmc/kepler/Managers/${ManagerId}/NetworkProtocol/SNMP”
资源interface:“bmc.kepler.Managers.NetworkProtocol.SNMP”
变化类型:新增属性
应用场景:用于指示在NetworkProtocol资源的响应体中是否隐藏SNMP团体名信息

属性名称 变化类型 签名 读写权限 持久化 变化通知 属性说明 备注
HideCommunityStrings 新增属性 b R:ReadOnly, W:UserMgmt 掉电持久化 true 默认值为false,用于指示在NetworkProtocol资源的响应体中是否隐藏SNMP团体名信息 该属性的展示数据还与用户有关,见下表

说明:
1、HideCommunityStrings默认值为false,与/redfish/v1/Managers/1/SnmpService接口默认不隐藏团体名行为保持一致。
2、控制仅管理员用户可以设置HideCommunityStrings属性,避免团体名不受控的扩散。

在HideCommunityStrings对应不同取值以及不同用户角色下,HideCommunityStrings 处理策略如下:

属性名称 取值 用户角色 响应说明
HideCommunityStrings false 管理员 HideCommunityStrings返回false
可以查询到真实团体名
HideCommunityStrings false 非管理员 HideCommunityStrings返回null
查询到团体名为null
HideCommunityStrings true 管理员 HideCommunityStrings返回true
查询到的团体名为null(已隐藏)
HideCommunityStrings true 非管理员 HideCommunityStrings返回null
查询到团体名为null

评审结论

同意资源协作接口bmc.kepler.Managers.NetworkProtocol.SNMP新增属性HideCommunityStrings,签名为b,表示是否隐藏SNMP团体名(无法通过接口查询), true表示隐藏,false表不隐藏,需要发送变化通知事件。此属性仅管理员用户可以修改,避免团体名不受控的扩散。该属性不同取值,在不同角色的用户查询时的处理策略参见详细描述