【发布时间】:2017-02-11 21:49:09
【问题描述】:
我正在尝试向我的用户配置文件添加自定义布尔声明。我在http://wso2.org/oidc/claim 方言中添加了声明,然后在http://wso2.org/claims 中添加了必要的映射,并默认支持声明。我想在该自定义声明中存储布尔值(真/假)。打开某个身份后,我会看到该声明的空白值。如果我存储值“true”并保存配置文件,我会收到一个带有勾号的复选框。如果我然后去更新一些具有相同身份的其他字段并单击保存,布尔值将被保留,我仍然看到带有勾号的复选框(代表“真”值)。然后我决定取消选中我的自定义布尔声明的值,以便存储声明的“假”值。但是一旦我点击“保存”按钮,我就不再看到空复选框(我希望它代表“假”值)。相反,我看到一个期望值的空白字段。此时,如果我尝试调用用户信息端点,我不会检索提到的自定义声明。为了接收它的错误值,我需要转到提到的身份,明确输入“false”并保存身份。之后,我收到该声明的“假”值。然后,如果由于某种原因有人跟踪我并更新身份的另一部分,我的自定义声明的“错误”值将丢失,我陷入以前的情况,我无法获得自定义声明的值,因为它没有定义。
我正在使用“帐户锁定”声明,我无法通过此声明观察到此类行为。我想是因为它是一种特殊的,因为它被身份管理使用。
有没有办法解决这种情况?目前,我提出了“必需”声明,您无法为该声明保存具有空值的身份(通过 IS 管理控制台)。
对于 WSO2 IS 5.0.0 中的布尔声明,这是预期的行为吗?
【问题讨论】:
标签: wso2 wso2is wso2carbon