Adding Federated Login(OAuth2) Support

OAuth is an open standard for access delegation, commonly used as a way for Internet users to grant websites or applications access to their information on other websites but without giving them the passwords.

Whenever a user logs in using his Google, Facebook, GitHub (or any other site) account, he sees a popup as this one-

new-auth-2.png
Once the user grants the permissions, he can log in via his external account on the client app in future (without any other authentication). If you’re interested in the working of OAuth2, you can read here. And if you’re really, really interested in going into more depth, refer this.
I’ve been working on implementing OAuth2 in Ruqola [Link to code]. But sadly, our backend server, the Rocket.Chat server, does not support Realtime OAuth login API. Rocket.Chat doc for OAuth is not updated and thus I spent quite some time trying to implement it. Talking to a Rocket.Chat team member, I got to know this functionality is currently not available. Though I’ve created a support request for it at the Rocket.Chat GitHub, but it would take time to process and implement.

So for now, our backend is complete(well, except OAuth) and it’s time to move to the UI. I’m excited to be working on the UI as using QML for UI will be fun. Also, we’ll also be moving Ruqola to mobile soon!

If you’d like to work on Ruqola (or contribute to WikiToLearn in general), talk to us, or just hangout and chill, meet WikiToLearn people at the annual world summit of KDE, Akademy, from the 22.07.2017 – 27.07.2017! 🙂

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s