Configuring external login providers within Plato eases the sign-up or account creation process for your end users. This can encourage participation as users don't need to create yet another web account and instead can use there preferred login provider to automatically sign-in to Plato.

In this article we'll demonstrate the steps necessary to allow your users to login to your Plato installation using there existing GitHub account.

Enable Plato.Authentication.GitHub

To allow users to login to Plato via GitHub you'll first need to enable the Plato Authentication GitHub module. This module is provided with Plato 1.0.7 and above. To enable this module visit your Plato Features page and type "github" into the search box along the top.

Within the list of results you'll see Plato Authentication GitHub. Click the Enable button to the right of the Plato Authentication GitHub result to enable this module.

Once Plato Authentication GitHub is enabled you'll notice a new GitHub link appears under Settings on the left within the Plato dashboard navigation. From the new Settings > GitHub page you can now enter the Client ID & Client Secret necessary to allow your users to login to Plato using GitHub.

Obtaining your GitHub client id & secret

Before users can login to Plato via GitHub you need to first create an application with GitHub. Each application once created will provide you with a client id & secret. You will need both the consumer key & secret to plug-in to Plato via the Settings > Twitter page.

GitHub App Dashboard

To obtain your GitHub client id & secret create your application here...

https://github.com/settings/developers

  1. Click the "New oAuth App" button within the top right of your GitHub app dashboard
  2. Provide name for your app
  3. When prompted for your Authorization callback URL this should be "https://yourplatourl.com/signin-twitter". Where "yourplatourl.com" would of course be replaced with your real URL.
  4. Once the app has been created visit the details page for you app from the GitHub app dashboard and you should find your applications "Client ID" & "Client Secret".
  5. Copy both the client ID and client secret into the Settings > GitHub page within Plato

You can see the Settings > GitHub page accessible via the Plato dashboard shown below...

image.png

Testing GitHub Login

After entering the GitHub client ID & client secret into the GitHub Settings page within Plato and saving your changes you should notice a new option appear on your Plato login page that will allow users to login via GitHub. You can see this below...

image.png

You can use the Login with GitHub button to test your GitHub login flow.

That's It!

We hope this article helped you configure GitHub login within Plato. Should you encounter any issues or have any questions please don't hesitate to post within our Q&A area and we will assist as quickly as possible.