Xmpp 如何使用KeyClope和Ejabberd实现单点登录

Xmpp 如何使用KeyClope和Ejabberd实现单点登录,xmpp,single-sign-on,ejabberd,keycloak,Xmpp,Single Sign On,Ejabberd,Keycloak,我有一个应用程序使用keydove oauth2进行身份验证。这里用户获得一个令牌,用于进一步交互。现在,我正在使用XMPP协议ejabberd服务器实现聊天功能。用户需要jid和密码才能连接并登录ejabberd服务器。我们如何使这些成为单点登录?问题是XMPP没有实现单点登录。 有一个XEP,但它已被推迟 这意味着唯一“好”的可能性是,保持tcpclient/xmppclient永远运行,同时在您启动应用程序时重用其连接。最明智的方法是创建自定义SASL机制,该机制将在XMPP SASL协商

我有一个应用程序使用keydove oauth2进行身份验证。这里用户获得一个令牌,用于进一步交互。现在,我正在使用XMPP协议ejabberd服务器实现聊天功能。用户需要jid和密码才能连接并登录ejabberd服务器。我们如何使这些成为单点登录?

问题是XMPP没有实现单点登录。 有一个XEP,但它已被推迟


这意味着唯一“好”的可能性是,保持tcpclient/xmppclient永远运行,同时在您启动应用程序时重用其连接。

最明智的方法是创建自定义SASL机制,该机制将在XMPP SASL协商期间从客户机获取令牌,并验证令牌是否重新绑定KeyClope。