From 4aef32d998ffcf7d8c59c1dcfe1ff5eb923feb45 Mon Sep 17 00:00:00 2001 From: Yi EungJun Date: Thu, 3 Dec 2015 18:04:07 +0900 Subject: [PATCH] Add unofficial guide for GitHub SSO SSO for Github Enterprise was added at 6d63f57, but it seemed not to work with GitHub. The curlpits were: * The url to get the authenticate user is /user, not /api/v3/user. * Users should set their public email for GitHub. Describe the detail in GitHub.md and rename the original Github.md to GitHub-Enterprise.md. --- .../{Github.md => GitHub-Enterprise.md} | 0 doc/integrations/Single-Sign-On/GitHub.md | 24 +++++++++++++++++++ 2 files changed, 24 insertions(+) rename doc/integrations/Single-Sign-On/{Github.md => GitHub-Enterprise.md} (100%) create mode 100644 doc/integrations/Single-Sign-On/GitHub.md diff --git a/doc/integrations/Single-Sign-On/Github.md b/doc/integrations/Single-Sign-On/GitHub-Enterprise.md similarity index 100% rename from doc/integrations/Single-Sign-On/Github.md rename to doc/integrations/Single-Sign-On/GitHub-Enterprise.md diff --git a/doc/integrations/Single-Sign-On/GitHub.md b/doc/integrations/Single-Sign-On/GitHub.md new file mode 100644 index 0000000000..56e2d1c725 --- /dev/null +++ b/doc/integrations/Single-Sign-On/GitHub.md @@ -0,0 +1,24 @@ +## Configuring GitHub Single-Sign-On (unofficial) + +Note: Because the authentication interface of GitHub is similar to that of GitLab, the GitLab SSO feature can be used to unofficially also support GitHub SSO. + +Follow these steps to configure Mattermost to use Github as a single-sign-on (SSO) service for team creation, account creation and sign-in using the GitLab SSO interface. + +1. Login to your GitHub account and go to the Applications section in Profile Settings. +2. Add a new application called "Mattermost" with the following as Authorization callback URL: + * `` (example: http://localhost:8065) + +3. Submit the application and copy the given _Id_ and _Secret_ into the appropriate _GitLabSettings_ fields in config/config.json + +4. Also in config/config.json, set _Enable_ to `true` for the _gitlab_ section, leave _Scope_ blank and use the following for the endpoints: + * _AuthEndpoint_: `https://github.com/login/oauth/authorize` + * _TokenEndpoint_: `https://github.com/login/oauth/access_token` + * _UserApiEndpoint_: `https://api.github.com/user` + +6. (Optional) If you would like to force all users to sign-up with GitHub only, +in the _ServiceSettings_ section of config/config.json set _DisableEmailSignUp_ +to `true`. + +6. Restart your Mattermost server to see the changes take effect. + +7. Tell the users to set their public email for GitHub at the [Public profile page](https://github.com/settings/profile). Mattermost uses the email to create account.