jsxc / xmpp-cloud-auth

:key: Authentication hub for Nextcloud+JSXC→Prosody, ejabberd, saslauthd, Postfix
https://www.jsxc.org
MIT License
60 stars 18 forks source link

Q: what about the rosters / contacts #12

Closed joergmschulz closed 7 years ago

joergmschulz commented 7 years ago

This script looks interesting and moves authentication to NC/OC where it is a good place. What about the rosters / contact lists: Will they be fed from the user's personal address book (fine) or from NC/OC group memberships (even better) or from the xmpp server (not so easy, only openfire has a good way to extract group information from LDAP, but I don't see a possibility to add this script to openfire)?

sualko commented 7 years ago

There is currently no sync option, because this would probably require to write an extra module. As far as I know there is no api for such a thing in ejabberd or prosody, but would be nice to have.

I don't see a possibility to add this script to openfire?

That's right. We only support prosody and ejabberd.

MarcelWaldvogel commented 7 years ago

@joergmschulz If you create an authentication plugin for Openfire that can use an external command, I'd be happy to create support for it in external_auth.py. As long as there is no way to have an external authentication command in Openfire, this module cannot be used directly.

I would recommend that any newly created plugin for external authentication use the prosody syntax, as it is in line with the Unix pipe philosophy. This would also mean that adding that support here would boil down to alias -t openfire to -t prosody

joergmschulz commented 7 years ago

Good idea - Openfire is Java, and I am not into Java, sorry - not being a developer at all (only some quick and dirty unprofessional hacks), I don’t think I am able to do it. Anyway, I’ll have a look as there are auth scripts for OpenFire for SAML or oAuth; maybe it’s easy.

Kind regards Jörg Edit: somebody did it with liferay: http://www.surekhatech.com/blog/openfire-custom-authentication-with-liferay