Login into Wordpress with Discord account using OAuth protocol
Discord is an application where a group of gamers can enjoy voice and text chat. It works for desktops as well as mobile phones and supports all most popular browsers. It is completely free and is much popular since it overcomes all the lagging features ( like ease of interface of third party application ) of other voice over internet protocol (VOIP) using applications like skype and teamspeak. Discord for personal computers support many features like dedicated servers infrastructures, free voice chat servers, low latency and so on. The third party application competency helps, when the user is using a website and opts to sign in to Discord Account.
Need for Single sign on
Wordpress is most preferred platform for application website for most of website owners. It is apparent to have website in wordpress and user wants to use Discord account to login. Single sign on to Discord account improves the efficiency of gamers by avoiding use of different user names and passwords to log in to wordpress and Discord. Discord supports an API which uses OAuth 2.0 ( protocol used for authentication ). This allows the user to authenticate and ensures secure access to wordpress website. But wordpress, though having inbuit plugins to add more features and functionality does not support OAuth.
miniOrange provides a solution of single sign on, where a plugin called OAuth client plugin is configured, which adds to the wordpress feature and allows the user to login into site using Discord login credentials. OAuth Client plugin also allows login with google, facebook, twitter or other custom OAuth server. OAuth Client plugin works with any OAuth provider that conforms to the OAuth 2.0 standard.
Discord API also provides a dedicated account called as bot account. These accounts can be easily created from application page by guest and regular users and are authenticated using a token rather than user name and password. This is a additional functionality in Discord where without using bearer token user can connect to real time gateway. miniOrange provides a support for user to authenticate using OAuth client plugin if the user holds bot account also.
How miniOrange OAuth client plugin can work for Discord ?
Steps below can be referred to configure Oauth client plugin with Discord:
- Add the app to Discord.
- Enter app name and set redirect uri.
- Obtain client id and client secret from the Discord account.
- Configure your miniOrange OAuth plugin with client id,client secret, OAuth end points and scope as below .
Scope : identify email
Authorize end point : https://discordapp.com/api/oauth2/authorize
Access token end point : https://discordapp.com/api/oauth2/token
Get user info endpoint : https://discordapp.com/api/users/@me
- Configure Widget to show login button on site.
- After entering email id and password. Discord will redirect back to wordpress and you will login using single sign on.