0

我安装了 WSO2 AM(API Manager) 1.10.0 并使用了工作 AM 1.9.0 中的 user-mgt.xml,但现在我无法登录到 carbon admin UI。

API Manager 配置了 LDAP 只读主用户存储。

此外,API Manager 配置为使用默认 H2。但我认为这不是一个理由。

如果我使用标准用户存储配置 API Manager(没有对 user-mgt.xml 进行任何更改,即没有添加 readOnlyLdap 配置并删除默认 JDBC UserStoreManager),登录到 admin-dashboard 工作正常。

我从 wso2carbon.log 收到警告消息:

TID: [-1234] [] [2016-07-03 05:55:54,731]  WARN {org.wso2.carbon.core.services.util.CarbonAuthenticationUtil} -  Failed Administrator login attempt 'admin[-1234]' at [2016-07-03 05:55:54,730+0000] {org.wso2.carbon.core.services.util.CarbonAuthenticationUtil}

我按照我无法登录 WSO2 API 管理器中的 admin-dashboard 应用程序的建议进行了更改,不幸的是,该解决方案对我不起作用。

基本上我安装了全新的 WSO2 am 1.10.0,使用默认设置,一切正常,直到我更改 user-mtg.xml 以启用 LDAP,我无法再登录到 carbon/admin UI。所以 LDAP 在 wso2 am 1.10.0 上不能开箱即用?我按照与 LDAP 设置相关的说明进行操作,但它不起作用。

奇怪的是,LDAP 适用于 am 1.9.0。那么在 1.10.0 和 1.9.0 版本之间设置 LDAP 有什么区别吗?

更新:

目前,我放弃了将 LDAP 与 wso2 am 1.10.0 集成。我搬到了 SAML2。但是,如果有人通过解决方案解决了这个问题,或者这可能对其他人有所帮助,请保持问题的开放性。谢谢。

4

2 回答 2

0

user-mgt.xml 中 AuthorizationManager 下的 GetAllRolesOfUserEnabled 属性的值是多少?

<AuthorizationManager class="org.wso2.carbon.user.core.authorization.JDBCAuthorizationManager">
            <Property name="AdminRoleManagementPermissions">/permission</Property>
            <Property name="AuthorizationCacheEnabled">true</Property>
            <Property name="GetAllRolesOfUserEnabled">false</Property>
        </AuthorizationManager>

该属性不是 1.9 配置的一部分,在 1.10 中,默认配置将此设置为 false,我们看到了类似的登录问题。将此设置为 true 为我们解决了这个问题。

于 2016-07-05T12:48:28.060 回答
0

我可以提供以下提示。

  1. 由于您没有提到 master-datasources.xml,我怀疑以下内容。你有在 1.9.0 中使用的外部用户存储数据库吗?如果是这样,您是否将 1.10.0 指向同一个数据库?

  2. 日志没有明确说明是否由于身份验证或授权错误而失败。要找出这一点,您需要为包 org.wso2.carbon.user.core 启用调试日志。这可以在 repository/conf/log4j.properties 文件中完成,并且需要重新启动。然后,当您的下一次登录尝试失败时,它会显示更多详细信息。

于 2016-07-06T01:25:01.490 回答