更新复合属性时 SCIM 用户 PUT 方法的输出
Output for SCIM User PUT method when updating a composite attribute
我在 mu 用户存储中有一个用户具有以下属性。
{
"id": "bfae138c-9f57-4ff1-ab63-599f2034371f",
"schemas":[
"urn:scim:schemas:core:1.0"
],
"name":{
"formatted": "Ms. Barbara J Jensen III",
"familyName": "Jensen",
"givenName": "Barbara"
},
"userName": "bjensen123",
"externalId": "bjensen",
"meta":{
"lastModified": "2015-05-25T08:59:28",
"location": "https://localhost:9443/wso2/scim/Users/bfae138c-9f57-4ff1-ab63-599f2034371f",
"created": "2015-05-25T08:59:28"
}
}
我正在使用以下方法正文向此资源发送放置请求。
{
"schemas":["urn:scim:schemas:core:1.0"],
"userName":"bjensen123",
"name":{
"formatted":"Ms. Bb",
}
}
我生成的资源的名称属性应该是什么?
"name":{
"formatted":"Ms. Bb",
}
或
"name":{
"formatted": "Ms. Bb",
"familyName": "Jensen",
"givenName": "Barbara"
}
PUT 请求将作为完整更新处理,而不是 PATCH,后者只会更新指定的属性,并且对于实施者来说是可选的(根据 SCIM 1.1 规范)。 PUT 的目的是请求者首先执行用户的读取 (GET),更改所需的属性,并提供全面的更新,以包括那些实际上没有更改的属性(密码是一个例外)。任何未在 PUT 请求中指定值的属性都将被清除。因此,根据您的示例,PUT 响应将返回为:
"name":{"formatted":"Ms. Bb"}
如果您不想丢失 familyName 和 givenName,则还必须重新指定它们(以及您不想丢失的任何其他属性)。这是规范定义:
http://www.simplecloud.info/specs/draft-scim-api-01.html
我在 mu 用户存储中有一个用户具有以下属性。
{
"id": "bfae138c-9f57-4ff1-ab63-599f2034371f",
"schemas":[
"urn:scim:schemas:core:1.0"
],
"name":{
"formatted": "Ms. Barbara J Jensen III",
"familyName": "Jensen",
"givenName": "Barbara"
},
"userName": "bjensen123",
"externalId": "bjensen",
"meta":{
"lastModified": "2015-05-25T08:59:28",
"location": "https://localhost:9443/wso2/scim/Users/bfae138c-9f57-4ff1-ab63-599f2034371f",
"created": "2015-05-25T08:59:28"
}
}
我正在使用以下方法正文向此资源发送放置请求。
{
"schemas":["urn:scim:schemas:core:1.0"],
"userName":"bjensen123",
"name":{
"formatted":"Ms. Bb",
}
}
我生成的资源的名称属性应该是什么?
"name":{
"formatted":"Ms. Bb",
}
或
"name":{
"formatted": "Ms. Bb",
"familyName": "Jensen",
"givenName": "Barbara"
}
PUT 请求将作为完整更新处理,而不是 PATCH,后者只会更新指定的属性,并且对于实施者来说是可选的(根据 SCIM 1.1 规范)。 PUT 的目的是请求者首先执行用户的读取 (GET),更改所需的属性,并提供全面的更新,以包括那些实际上没有更改的属性(密码是一个例外)。任何未在 PUT 请求中指定值的属性都将被清除。因此,根据您的示例,PUT 响应将返回为:
"name":{"formatted":"Ms. Bb"}
如果您不想丢失 familyName 和 givenName,则还必须重新指定它们(以及您不想丢失的任何其他属性)。这是规范定义: http://www.simplecloud.info/specs/draft-scim-api-01.html