【问题标题】:WSO2 IS Claims configuration from secondary storeWSO2 IS Claims 来自二级存储的配置
【发布时间】:2020-04-14 18:21:38
【问题描述】:

我正在使用 WSO2 Identity Server 5.10.0 配置以便将 ActiveDirectory 用作 UserStore

我没有机会向 ActiveDirectory 添加自定义属性,因此我在声明配置中遇到了几个问题。

为了解决我想将 ActiveDirectory 用户作为主要 UserStore 并配置 WSO2 声明以便从辅助用户存储(JDBC 用户存储)存储和检索的问题。

我配置了所有我需要的东西,但我无法让它工作。当我启动 WSO 时,我会抱怨,因为它找不到映射的声明。

更确切地说我有:

system error while authenticating/authorizing user : cannot find suitable mapped attribute for local claim http://wso2.org/claims/userid

一旦我 slve 用户 ID,它就会向我提供其他声明,直到我将所有内容返回到主要用户存储。

我想知道我的想法是否可行。如果我可以选择从哪里提出索赔.. 为什么会出现这种错误?

【问题讨论】:

    标签: wso2 wso2is


    【解决方案1】:

    实际上,将 Active Directory 配置为主用户存储在属性映射方面没有任何区别。因为系统中的所有用户存储都应该为这些元声明集和其他标记为“默认支持”的声明具有正确的映射属性。

    解决方案是使用 Active Directory 中正确的令人兴奋的属性更新本地声明的映射属性。如果您有多个用户,则可以为每个用户存储域具有不同的映射属性。请参阅this 文档了解更多信息。

    您可以在this document 中找到我们必须具有正确映射才能创建用户的强制性元声明列表。

    【讨论】:

    • 我已经这样做了...但是当您无法将属性添加到 Active Directory 时,这令人沮丧。因此,如果我们可以使用 Secondary User Store 以便独立于 AD 那就太好了......这样我们可以使用 AD 或我们的 DB 配置声明
    • 如果您的目标是拥有独立于 AD 用户的用户群,那么拥有另一个用户存储将起作用。如果您想向 AD 用户添加其他属性,而不允许向 AD 添加更多属性,您可以简单地创建以身份开头的本地声明,它们将存储在 WSO2 IS 数据库中,而不是 AD(userstore) @987654324 @
    • 也许我错过了什么。我想要的是以下内容:在主要用户存储(Active Directory)上添加用户基本信息(即用户名、密码、名字和姓氏)以及在辅助用户存储(postgreSQL)上与用户相关的所有其他声明D B)。这种情况可行吗?否则,在我看来,在声明配置中选择哪个用户存储获取/存储声明是没有意义的
    • 你误解了我猜的配置。声明配置中的用户存储选择不是为此而设计的。可以选择我们将在用户存储的哪个属性中存储此声明的值。您正在考虑类似于此博客中讨论的内容。但我不确定这种方法与最新版本的 WSO2 IS 匹配到什么程度。 xacmlinfo.org/2015/03/03/…
    • 在不编写代码的情况下解决此问题的最简单方法是使用身份声明来存储额外声明,https://wso2.org/claims/identity/<your_claim>。如果您的声明 URI 具有这种模式,它们将不会存储到相应的用户存储中,而是存储在身份数据库中。
    猜你喜欢
    • 1970-01-01
    • 2016-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-29
    • 2022-08-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多