Support for OAuth in Baserow

I am interested in deploying Baserow for use within an open-source project so that community members can have access to a no-code solution for simple applications. Since we already have our own authentication system, I would like to be able to implement external authentication through OAuth. I see that there isn’t such a plugin for Baserow specifically, but Baserow is built on Django, and there are OAuth libraries for Django. Do you have any particular recommendations for using a Django OAuth framework within Baserow?

Hi @serverless, welcome to the Baserow community. My apologies for the late response. SSO becomes available as enterprise feature after the release of 1.13. If you want to use Baserow within your open source project, it’s probably not possible to purchase an enterprise license for every user.

Luckily, it’s indeed possible extend Baserow. We’ve never tried it, but you should be able to implement external authentication by configuring Django. We’re using https://www.django-rest-framework.org in combination with https://github.com/Styria-Digital/django-rest-framework-jwt. I’m not sure what exact steps you need to take, but it might help searching for something that’s compatible with it. It might make sense to look for a Django app that’s compatible with that as well. Maybe you can just swap the DEFAULT_AUTHENTICATION_CLASSES with Authentication - Django REST framework in the Django settings. Although that would probably require some changes in the web-frontend as well.

Would love to learn more about the result if you can make it work.

1 Like