[英]Extending WSO2 Identity Server JDBCUserStoreManager to fit external user database
我们需要针对现有外部数据库对在WSO2 Application Server中部署的Web应用程序的用户进行身份验证。 我们正在尝试为此使用WSO2 Identity Server。
我们的包含用户的数据库表具有两列,这两个列使用户名唯一,即clientid和usercode。 即用户代码本身不是唯一的,但clientid + usercode是唯一的。 同样,我们的密码也与PBKDF2结合使用。 因此,我扩展了JDBCUserStoreManager来与我们的数据库对话,并能够在PBKDF2中存储和检索密码。
但是我无法弄清楚如何从登录页面获取客户端ID到扩展的JDBCUserStoreManager。 即如何从我们的自定义JDBCUserStoreManager内部访问存储在用户会话中的clientid? 如果我可以从那里的会话中获取clientid,则可以在sql查询中使用它来做有需要的事情。
非常感谢您帮助解决此问题。
您可以在登录页面上输入“ clientid + usercode”组合作为用户名。 然后,身份验证器会将该组合作为用户名传递给自定义用户存储管理器的doAuthenticate()方法。 在那里,您可以从用户名中拆分客户端ID和用户代码。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.