Mattermost 3.3 and later includes an OAuth2 Service Provider, enabling users with an account on a Mattermost server to sign-in to 3rd party applications.
This sample application, created in NodeJS, demonstrates how an OAuth2 client can be used with the Mattermost OAuth2 Service Provider.
- Start a Mattermost Server cloned from master
- Create an account and a team
- Go To System Console -> Integrations -> OAuth2 Provider and enable the service
- Go back to the team you created and from the Main Menu select Integrations
- Add a new OAuth2 App
- Clone the Github repository to run the sample
git clone https://github.com/enahum/mattermost-sample-app.git
cd mattermost-sample-app
- Install the dependencies
npm install
-
Setup the configuration according to your server an OAuth2 App by editing
config/config.json
- mattermost_url: this is the url of your mattermost instance (eg. http://localhost:8065)
- client_id: the client_id of the OAuth2 App that you created
- client_secret: the client_secret of the OAuth2 App that you created
Note: It's possible to override the settings in the
config.json
file by setting environment variables with the same names -
Once you have configured the app you can run it by issuing
npm start
The Sample App will be available under http://localhost:3000
- In the terminal window press
CTRL+C
to stop the sample app.