使用scim API在WSO2 IS 5.9.0中创建用户时遇到以下错误?

时间:2019-12-26 11:24:22

标签: wso2 wso2esb wso2is wso2carbon

在创建具有有效负载的用户时,我的用户名已映射到电子邮件

{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
    ],
    "name": {
        "formatted": "Careerex Admin"
    },
    "userName": "careerex.admin@in.aanasonic.com",
    "password": "abc!12345",
    "profileUrl": "www.gmail.com",

    "phoneNumbers": [
        {
            "type": "mobile",
            "value": "9876543210"
        }
    ],
    "locale": "Delhi"
}

我遇到有关用户名限制的错误-

{
    "schemas": [
        "urn:ietf:params:scim:api:messages:2.0:Error"
    ],
    "scimType": "invalidValue",
    "detail": "31301 - Username careerex.admin@in.aanasonic.com is not valid. User name must be a non null string with following format, ^[\\S]{3,30}$",
    "status": "400"
}

请帮助解决此问题并创建具有相同电子邮件地址的用户?

2 个答案:

答案 0 :(得分:1)

默认情况下,WSO2中的用户名不允许作为电子邮件。您需要配置产品以支持用户名作为电子邮件。您可以按照此documentation来实现

答案 1 :(得分:1)

WSO2 Identity Server中可用的默认配置将用户名强制为长度为3到30个非空字符的字符串。您的用例要求用户名长度必须超过提供的默认范围。 为了满足您的要求,请在deployment.toml上的<IS_HOME>/repository/conf文件中添加以下用于用户存储配置的参数,如下所示。

[user_store]
username_java_script_regex = '^[a-zA-Z0-9.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$'
username_java_regex='^[a-zA-Z0-9.-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}'

您可以提供适合您需要的正则表达式。请注意,前端组件使用username_java_script_regex进行用户名验证。

有关更多信息,请参考here