Wso2使用Patch Scim用户更新

时间:2017-08-15 11:51:35

标签: wso2 wso2is wso2carbon scim

尝试通过Scim Patch请求更新用户时出现错误,我不确定是什么问题。

这是请求

import React from "react";

import SidebarCategories from "./SidebarCategories";

export class Sidebar extends React.Component {
    render() {
        return (
            <div className="sidebar col-sm-2">
                <div className="row">
                    <div className="sidebar__header col">
                        <img alt="Logo" className="img-fluid sidebar__header__logo" src="../resources/img/logo-white.png" />
                        {'\u00A0'} <h4 className="sidebar__header__title i-block">Title</h4>
                    </div>
                </div>
                <div className="row">
                    <div className="sidebar__user container-fluid">
                        <div className="row">
                            <div className="col-sm-4 text-center">
                                <img alt="User DP" className="sidebar__user__img img-fluid rounded-circle" src="../resources/img/user.jpg" />
                            </div>
                            <div className="col-sm-8">
                                <p><strong>Welcome</strong><br />
                                Mark Hughes</p>
                            </div>
                        </div>
                    </div>
                </div>
                <div className="row">
                    <SidebarCategories />
                </div>
            </div>
        );
    }
}

这是Wso2中的错误

curl -v -k --user admin:admin -X PATCH -d '{
        "schemas": ["urn:scim:schemas:core:1.0"],
            "name": {
                    "familyName": "Tester"
                },
          "meta": {
          }
}' --header "Content-Type:application/json" https://localhost:9443/wso2/scim/Users/user-id-here

我按照Scim doc

执行了请求

在Wso2 issue tracker有一张类似的票,但它被认为是固定的。

不确定是什么问题。这是请求中的问题还是某些Wso2配置。

1 个答案:

答案 0 :(得分:0)

您的补丁请求中存在三个问题。

  1. 缺少userName属性。 WSO2实现要求您在对用户执行PATCH操作时具有userName属性。

  2. &#34; meta&#34;属性没有&#34;属性&#34;子属性。这是规范违规。如果您没有要删除的任何属性,则基本上可以完全省略元属性。

  3. 指定架构&#34;&#34; urn:scim:schemas:core:1.0&#34;似乎在WSO2 Identity Server实现中创建了一个问题。

  4. 以下是您使用过的curl命令的工作版本。

    curl -v -k --user admin:admin -X PATCH -d "{
    "schemas":[],
    "name":{
      "familyName": "Tester"
    },
    "userName":"indunil",
    "meta": {
      "attributes":[]
     }
    }"
     --header "Content-Type:application/json" https://localhost:9443/wso2/scim/Users/e9e57b58-3e90-4165-aadc-697a06f1eb9e