是否可以指示jabber / xmpp服务器将身份验证委派给另一个模块?我们正在使用XMPP构建内部应用程序,如果我们可以让用户保留他们在我们的网络应用程序中使用的标准用户名/密码,那将是非常棒的。 web-apps目前是散列密码,因此DB中的密码不以纯文本形式存储。如果不是这样,那么在系统之间共享密码会很容易,但当然,在服务器端数据库中存储纯文本密码是一个很大的禁忌。
理想情况下,我们可以告诉jabber服务器“嘿,只需将您的用户名/身份验证请求传递到此处”并运行其他进程(甚至只是一个xmpp bot?)来处理身份验证。
我们目前正在使用ejabberd作为我们的服务器,我认为它是用Erlang编写的。但我们并没有与ejabberd联系在一起。我知道XMPP是巨大的,并且在很大程度上是可扩展的 - 但我没有在服务器端找到任何有关可扩展身份验证的信息。
我在XMPP网站上找到了this,但这似乎是在客户端和服务器之间协商身份验证的协议,而不是服务器上的实际身份验证机制。
有关如何在XMPP服务器和我们的其他系统之间合并身份验证方案的任何指针?
答案 0 :(得分:5)
ejabberd有多种方式进行身份验证。例如,如果您的组织有LDAP服务器,则可以使用LDAP。这适用于我的公司,并为我们的维基,票务系统等提供单一登录。
请查看user guide中的身份验证部分。