java - 无法识别自定义用户存储管理器 (WSOIS 5.3)

标签 java jdbc wso2 osgi-bundle wso2-identity-server

我编写了一个自定义用户存储管理器,用于将 WSO2 连接到由 ASP.Net 的简单成员资格提供程序管理的数据库。我的主要问题是 SMP 使用 PBKDF2 进行密码散列,而标准 JDBC 用户存储似乎不支持这一点。

我基本上用了https://docs.wso2.com/display/IS530/Writing+a+Custom+User+Store+Manager作为模板,该示例实现了不同的密码哈希算法,这正是我的用例。

您可以在这里找到我的 POC 实现:github project wso2_custom_userstore我构建了一个 jar,将其放入 dropins 目录并重新启动服务器。服务器提示缺少包头,但仅此而已。添加新用户存储时,只有标准存储,仅此而已。然后,我配置了一个 JDBC 用户存储并将该类更改为我编写的类。我看到的唯一效果是我之前配置的用户存储消失了。我尝试将 .jar 放入 libs 目录中,但没有改变任何内容。

由于这似乎不起作用,并且服务器提示缺少 bundle header ,因此我构建了一个导出我的 CustomUserStoreManager 包的 OSGI bundle (也可以在 github 上找到源代码,我不允许添加超过两个 URL) - 现在 bundle 已加载并激活,但仅此而已。但我的类(class)仍然不见踪影。我在用户存储添加对话框中没有将其视为可用类,并且在日志配置中也没有将其视为可用类。在任何地方都没有任何提示,日志文件中没有,服务器的启动输出中也没有。纳达。

我做错了什么吗?

我必须补充一点,我绝不是 Java 开发人员,也根本不是开发人员。我正在为客户评估 WSO2,这应该是一个 PoC。一旦它起作用,我知道使用 PBKDF2 哈希值可能会有更有能力的人来构建一个生产版本。

提前致谢, 孙祖

最佳答案

WSO2 IS 5.3.0 基于 org.wso2.carbon.user.core 4.4.11 [1]并且您使用的是 4.2.0。在这种情况下,应更新文档。您可以找到示例代码[2]这是为 WSO2 IS 5.1.0 编写的,文章位于 [3]

关于java - 无法识别自定义用户存储管理器 (WSOIS 5.3),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42371918/

相关文章:

JavaFX:在一行中填充了一个条目后的上下文菜单?

java - 为什么我在我的 Maven 动态 Web 模块中收到这个 404 错误?

java - 在 JAXB 中,如何将节点值设置为字符串字段的属性值?

java - 如何在 MySql JDBC 中使用 HikariCP

java - 部署到tomcat时如何设置logback.xml的位置?

java - 设置来自 Pentaho DI 的 Firebird 连接的字符集

java - java 代码中超出最大打开游标数异常

java - 在 iPad 上下载根证书时出错

xslt 用虚拟替换空数组

java - WSO2 api 管理器不传播多部分表单数据的内容类型 header