SCIM标准PUT操作默认值合规性咨询:是否可为资源当前值
SCIM RFC7644 PUT操作省略属性的处理疑问解答
针对你关于SCIM标准PUT操作中省略值处理的两个问题,结合RFC7644的规定,解答如下:
1. 默认值是否必须为单一值?
RFC7644并未强制要求默认值必须是单一值,具体取决于属性的multiValued配置:
- 如果属性的
multiValued为true,默认值可以是一个多值数组(比如用户的多个邮箱地址); - 如果属性的
multiValued为false,默认值则只能是单一值。
标准只要求默认值符合属性本身的数据类型和结构约束,没有限制其值的数量。
2. 将默认值定义为资源当前值(保留现有值)是否违反标准?
不违反。根据RFC7644的描述,当PUT请求体中省略mutability为readWrite的属性时,服务提供商可将其视为客户端未断言该属性的值,并有权选择两种处理方式:清除现有值,或分配默认值。
这里的“分配默认值”并非限定为预先定义的固定常量,服务提供商完全可以将“保留当前属性值”作为一种自定义的默认处理逻辑——本质上是服务商选择不对该未断言的属性进行修改,这完全符合标准赋予服务商的自主处理权限。
内容的提问来源于stack exchange,提问作者user1452215
相关产品推荐
相关产品推荐

