Redfish服务权限配置
用户通过redfish设置服务器的时候,每个url都会设定支持的Http方法(GET、PATCH、POST等),但是实际上这个是不够。有的设置选项是比较重要,不同的用户对应的权限也是不一样,能够确保权限较低的用户无法操作与权限不一致的选项。
Redfish定义了一组标准角色,允许服务自定义角色,也允许客户端自定义角色。
| Role name | Assigned privileges |
|---|---|
Administrator |
Login, ConfigureManager, ConfigureUsers, ConfigureComponents, ConfigureSelf |
Operator |
Login, ConfigureComponents, ConfigureSelf |
ReadOnly |
Login, ConfigureSelf |
上面表格定义的角色以及角色对应的权限是固定的,不可以修改的。
| 权限 | 控制范围 |
|---|---|
Login |
系统的访问基础,允许用户可以登陆到管理界面,并查看基本信息。无此权限则无法访问系统 |
ConfigureManager |
管理器级别的高阶管理,包括配置网络设置、管理固件更新、访问系统日志等底层平台操作 |
ConfigureUsers |
用户账户的生命周期管理,允许创建、修改、删除用户账户以及分配或修改用户角色 |
ConfigureComponents |
服务器硬件资源的配置,允许对系统、处理器、内存等组件进行配置操作,例如调整BIOS设置或启动设置 |
ConfigureSelf |
个人账户的自我管理,允许已登录的用户修改自己的账户信息,最典型的就是更改自己的密码 |
以下示例定义了在 Manager 资源上执行各种操作所需的权限。除非实现为 OperationMap 数组定义了映射覆盖,否则该操作到权限的映射将表示该服务实现中所有 Manager 资源的行为:
{
"Entity": "Manager",
"OperationMap": {
"GET": [{
"Privilege": ["Login"]
}],
"HEAD": [{
"Privilege": ["Login"]
}],
"PATCH": [{
"Privilege": ["ConfigureManager"]
}],
"POST": [{
"Privilege": ["ConfigureManager"]
}],
"PUT": [{
"Privilege": ["ConfigureManager"]
}],
"DELETE": [{
"Privilege": ["ConfigureManager"]
}]
}
}
Reference
1 https://redfish.dmtf.org/schemas/DSP0266_1.15.1.html#privilege-model

浙公网安备 33010602011771号