WSO2 身份服务器 5.11.0 我的帐户个人信息不适用于 Active Directory 用户存储

问题描述

我在基于 Samba 的 Active Directory 用户存储的 Apache 代理后面运行 WSO2 身份服务器 5.11.0。最相关的声明已映射到本地声明方言。对服务的身份验证有效,并且声明属性也正确传输到 Apache 服务器的 mod_auth_openidc。

但是,当输入myaccount url时,登录到个人空间可以正常工作。但是,在 AD 用户存储中存储的用户的个人信息部分中没有显示用户属性。对于主商店中的用户来说,它运行良好。因此,我认为它不属于代理设置。

查看 http 请求,scim2 api 调用失败:

https://server.at.domain/scim2/Me?attributes=urn:ietf:params:scim:schemas:extension:enterprise:2.0:User.isReadOnlyUser

回复

{"schemas":["urn:ietf:params:scim:api:messages:2.0:Error"],"detail":"No such user exist","status":"404"}

有人知道这个问题吗?

解决方法

终于可以解决问题了。错误消息非常具有误导性。 SCIM 2.0 配置文件的一个非常重要的属性是属性 urn:ietf:params:scim:schemas:core:2.0:id ,它默认映射到本地声明 http://wso2.org/claims/userid 。我没有将此声明映射到 ldap 属性。简单地映射到 objectGUID 后,个人信息出现在 myaccount url 中。