Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

Cloudron Forum

Apps | Demo | Docs | Install

OAuth support

Scheduled Pinned Locked Moved Announcements
35 Posts 14 Posters 1.8k Views
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • girishG Offline
    girishG Offline
    girish Staff
    wrote on last edited by
    #1

    Hi All,
    We are looking into user roles/permissions for the coming release (for example, you can create a user who can invite other users but not administer other parts of cloudron). When we started investigating this, we found it will be simpler for us if we remove OAuth related support from code base.

    For some history, we started out with OAuth from day 1. This is because our vision was to have proper SSO across all apps. Unfortunately, OAuth always requires adding custom integration code into apps. We tried to upstream changes for every app but this was a lot of work and in many cases the PR just rejected or we didn't know the framework/language or it just caught in a lot of code review. We decided this wasn't worth it and went with LDAP which unlike OAuth most apps support and requires no upstream changes.

    Ultimately, none of our apps now use OAuth. It's been gone for 1.5 years now. Besides it looks like SAML is the future and does not require upstream changes for proper SSO. We will consider supporting SAML instead in a future release.

    Note that this upcoming change only affects those who have custom apps using oauth addon. If you are using Cloudron OAuth, please let us know and we can help you migrate.

    fbartelsF 1 Reply Last reply
    5
  • fbartelsF Offline
    fbartelsF Offline
    fbartels App Dev
    replied to girish on last edited by
    #2

    @girish said in OAuth support:

    Besides it looks like SAML is the future and does not require upstream changes for proper SSO. We will consider supporting SAML instead in a future release.

    SAML (while having support in enterprise environments) is not the future, it's the past as well. The future would be openid connect.

    W 1 Reply Last reply
    2
  • W Offline
    W Offline
    will
    replied to fbartels on last edited by
    #3

    @fbartels Can you share more on your reasoning? Im not as familiar with OpenID Connect

    fbartelsF 1 Reply Last reply
    0
  • girishG Offline
    girishG Offline
    girish Staff
    wrote on last edited by
    #4

    OpenID is great as well if apps support it. IIRC, it specifies the routes and fields that one has to return so it's more standardized.

    1 Reply Last reply
    2
  • fbartelsF Offline
    fbartelsF Offline
    fbartels App Dev
    replied to will on last edited by
    #5

    Hi @will,

    SAML is basically "old tech". It's XML based and requires clients to generate keys through openssl which makes it in my experience both complex and difficult to set up for novice admins and also implement for developers. Apart from that SAML only works for browser based workflows.

    Like I said before the one thing SAML has going for it is that its already well supported in enterprise applications. But I recently had a chat with someone involved in quite some university and government projects on the infrastructure side and he told me that he sees a trend to favour oidc over SAML recently.

    An article with a comparison can be found at https://spin.atomicobject.com/2016/05/30/openid-oauth-saml/

    PS: with Kopano Meet there is actually already an OpenID Connect provider present on Cloudron as all authentication is done through OIDC in it. What we use there is Go and React, but I am confident that there is code to be reused for Node as well.

    W 1 Reply Last reply
    6
  • W Offline
    W Offline
    will
    replied to fbartels on last edited by
    #6

    @fbartels Thanks for the thoughtful reply!

    1 Reply Last reply
    0
  • iamthefijI Offline
    iamthefijI Offline
    iamthefij App Dev
    wrote on last edited by
    #7

    It would seem that supporting Keycloak would be a great way to still only really have to maintain LDAP on the Cloudron side and then add support for OpenID Connect, OAuth 2.0
    and SAML 2.0.

    I've never set up Keycloak though, so I can't speak to it's ease of use or maintaining, but it is often recommended when people talk about FOSS Identity and Access Management tools.

    1 Reply Last reply
    3
  • girishG Offline
    girishG Offline
    girish Staff
    wrote on last edited by girish
    #8

    keycloak is a really good idea, didn't think about that. By which, i mean if we could have apps that provide additional saml/oidc support to cloudron, that is definitely way better than us re-inventing all this. Some of the universities Cloudron is deployed in uses Shibboleth which I am told support LDAP and OAuth2

    1 Reply Last reply
    4
  • J Offline
    J Offline
    jk
    wrote on last edited by
    #9

    I've wished for OAuth support for quite a few times already to support SSO to non-Cloudron apps. So in that case, Cloudron would serve as the identity provider for a third-party app. Kind of like Login with Cloudron.

    That would require that one can register third party apps with their client id, client secret and callback URL though.

    I have a little bit of experience with Keycloak. I know that U=using Keycloak would (also) support this use case, provided a Cloudron user has access to the Keycload administration interface.

    iamthefijI 1 Reply Last reply
    2
  • iamthefijI Offline
    iamthefijI Offline
    iamthefij App Dev
    replied to jk on last edited by
    #10

    @jk That actually used to be possible, but the OAuth provider is now gone.

    Adding something like Keycloak or even Shibboleth would add back an OAuth provider.

    1 Reply Last reply
    2
  • LonkleL Offline
    LonkleL Offline
    Lonkle
    wrote on last edited by
    #11

    I know it's gonna be a long time away from adding a replacement to OAuth, but are there any alternatives that stand out now more than they did before. Or are we still looking for a solution that doesn't require upstream changes?

    imc67I 1 Reply Last reply
    0
  • imc67I Online
    imc67I Online
    imc67 translator
    replied to Lonkle on last edited by
    #12

    @Lonk @nebulon @girish indeed I’m also very curious for this, I think it would make Cloudron even more unique if you could click an app in your Dashboard and you’re “Cloudron-magically” logged in!

    1 Reply Last reply
    2
  • girishG Offline
    girishG Offline
    girish Staff
    wrote on last edited by
    #13

    @imc67 @Lonk Nothing has changed and I don't expect it to either. Without upstream changes to apps, this is not possible. As far as I have noticed, most apps are not adding support for OAuth.

    1 Reply Last reply
    1
  • jdaviescoatesJ Offline
    jdaviescoatesJ Offline
    jdaviescoates
    wrote on last edited by jdaviescoates
    #14

    I note that the lovely people at Indiehosters (all in French) have launched a new service called Liiibre which by default is a nicely integrated Nextcloud, OnlyOffice, Rocket.Chat, and Jitsi Meet.

    And I read over on the Meet.coop forum that they are using Keycloak to power their SSO stuff, so that might be worth exploring.

    Here is the relevant thread for info:
    https://forum.meet.coop/t/hi-from-indiehosters-onboarding-process/343?u=jdaviescoates

    But see especially this post:
    https://forum.meet.coop/t/hi-from-indiehosters-onboarding-process/343/8?u=jdaviescoates

    Edit: and looking back up the thread I see Keycloak has already been proposed/ discussed above too.

    I use Cloudron with Gandi & Hetzner

    1 Reply Last reply
    1
  • LonkleL Offline
    LonkleL Offline
    Lonkle
    wrote on last edited by
    #15

    In summary, I am going to list all alternatives to OAuth that have been listed in this thread:

    • OpenID Connect
    • SAML
    • OAuth2 (a Sign in with Cloudron feature of some kind I think)
    • Liiibre
    • Keycloak

    Did I miss any of them?

    marcusquinnM jdaviescoatesJ 2 Replies Last reply
    0
  • marcusquinnM Offline
    marcusquinnM Offline
    marcusquinn
    replied to Lonkle on last edited by
    #16

    @Lonk Gluu perhaps?

    We're not here for a long time - but we are here for a good time :)
    Jersey/UK
    Work & Ecommerce Advice: https://brandlight.org
    Personal & Software Tips: https://marcusquinn.com

    1 Reply Last reply
    0
  • jdaviescoatesJ Offline
    jdaviescoatesJ Offline
    jdaviescoates
    replied to Lonkle on last edited by
    #17

    @Lonk said in OAuth support:

    • Liiibre
    • Keycloak

    Liiibre is not an alternative to OAuth, it's the name of a service provided by Indiehosters, which uses Keycloak for SSO.

    I use Cloudron with Gandi & Hetzner

    1 Reply Last reply
    1
  • LonkleL Offline
    LonkleL Offline
    Lonkle
    wrote on last edited by
    #18

    Redoing the list. Thank you guys for your feedback:

    • OpenID Connect
    • SAML
    • OAuth2 (a Sign in with Cloudron feature of some kind I think)
    • Keycloak
    • Gluu

    Did I miss any others anyone can think of? Not thinking of trying to integrate this anytime soon, just want to talk about what's the future to be prepared for it.

    jdaviescoatesJ 1 Reply Last reply
    0
  • jdaviescoatesJ Offline
    jdaviescoatesJ Offline
    jdaviescoates
    replied to Lonkle on last edited by
    #19

    @Lonk said in OAuth support:

    • OAuth2 (a Sign in with Cloudron feature of some kind I think)

    I'm pretty sure OAuth2 is just version two of OAuth aka OAuth 2.0

    https://oauth.net/2/

    I use Cloudron with Gandi & Hetzner

    LonkleL 1 Reply Last reply
    0
  • LonkleL Offline
    LonkleL Offline
    Lonkle
    replied to jdaviescoates on last edited by Lonkle
    #20

    @jdaviescoates said in OAuth support:

    @Lonk said in OAuth support:

    • OAuth2 (a Sign in with Cloudron feature of some kind I think)

    I'm pretty sure OAuth2 is just version two of OAuth aka OAuth 2.0

    https://oauth.net/2/

    It'd added because it's one of the alternative solutions suggested in the comments, the "Sign in with Cloudron" suggestion would most likely be based on it and I was listing protocols. I can't remember who suggested it and I'm not voting for it but I thought it deserved to be included with the list the community came up with. What do you think? 🤔

    1 Reply Last reply
    0

  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Login

  • Don't have an account? Register

  • Login or register to search.