更新用户资料数据 API
编辑更新用户资料数据 API编辑
用户资料功能仅供 Kibana 和 Elastic 的可观察性、企业搜索和 Elastic 安全解决方案使用。单个用户和外部应用程序不应直接调用此 API。Elastic 保留随时更改或删除此功能的权利,恕不另行通知。
更新与指定唯一 ID 关联的用户资料的特定数据。
请求编辑
POST /_security/profile/<uid>/_data
描述编辑
更新用户资料 API 使用 JSON 对象更新现有用户资料文档的 labels
和 data
字段。新的键及其值将添加到资料文档中,冲突的键将被请求中包含的数据替换。
对于 labels
和 data
,内容由顶层字段进行命名空间化。The update_profile_data
全局权限授予仅更新允许的命名空间的权限。
路径参数编辑
-
uid
- (必需,字符串) 用户资料的唯一标识符。
查询参数编辑
请求主体编辑
-
labels
- (必需*,对象) 您要与用户资料关联的可搜索数据。此字段支持嵌套数据结构。在
labels
对象中,顶层键不能以下划线 (_
) 开头或包含句点 (.
)。 -
data
- (必需*,对象) 您要与用户资料关联的不可搜索数据。此字段支持嵌套数据结构。在
data
对象中,顶层键不能以下划线 (_
) 开头或包含句点 (.
) Thedata
对象不可搜索,但可以使用 获取用户资料 API 检索。
*表示设置在某些情况下是必需的,但在并非所有情况下都是必需的。
示例编辑
以下请求更新与 u_P_0BMHgaOK3p7k-PFWUCbw9dQ-UFjt01oWJ_Dp2PmPc_0
匹配的 uid
的资料文档
POST /_security/profile/u_P_0BMHgaOK3p7k-PFWUCbw9dQ-UFjt01oWJ_Dp2PmPc_0/_data { "labels": { "direction": "east" }, "data": { "app1": { "theme": "default" } } }
您可以更新资料数据以替换某些键并添加新键
POST /_security/profile/u_P_0BMHgaOK3p7k-PFWUCbw9dQ-UFjt01oWJ_Dp2PmPc_0/_data { "labels": { "direction": "west" }, "data": { "app1": { "font": "large" } } }
如果您现在获取资料,则将返回合并的资料数据
GET /_security/profile/u_P_0BMHgaOK3p7k-PFWUCbw9dQ-UFjt01oWJ_Dp2PmPc_0?data=*
{ "profiles": [ { "uid": "u_P_0BMHgaOK3p7k-PFWUCbw9dQ-UFjt01oWJ_Dp2PmPc_0", "enabled": true, "last_synchronized": 1642650651037, "user": { "username": "jackrea", "roles": [ "admin" ], "realm_name": "native", "full_name": "Jack Reacher", "email": "[email protected]" }, "labels": { "direction": "west" }, "data": { "app1": { "theme": "default", "font": "large" } }, "_doc": { "_primary_term": 88, "_seq_no": 66 } } ] }