SSO with GitHub OAuth2
Step 1 - Create OAuth2 App​
- Go on GitHub's OAuth application registration page.
- Choose an application name.
- Set the Homepage URL to either your organization's website or your Botpress instance's external URL.
- For the Authorization callback URL, set the following value:
https://<Your external Botpress HTTPS URL>/api/v1/auth/login-callback/oauth2/<Your strategy name>
note
You may choose any url safe name as your strategy name.
Step 2 - Create Credentials​
- In your application's configuration page, copy the Client ID.
- Click on generate a new client secret and copy the generated value as well for the next step.
Step 3 - Configure Botpress​
- In your Botpress instance, navigate to the Code Editor.
- add a new entry within
authStrategies
in thebotpress.config.json
file. - Name the strategy whatever you want (keep the name URL safe).
- fill in the entry in the following way:
"<your strategy name>": {
"type": "oauth2",
"allowSelfSignup": false,
"options": {
"authorizationURL": "https://github.com/login/oauth/authorize",
"tokenURL": "https://github.com/login/oauth/access_token",
"clientSecret": "<Generated secret from GitHub>",
"clientID": "<Client ID from GitHub>",
"callbackURL": "https://<Your external Botpress HTTPS URL>/api/v1/auth/login-callback/oauth2/<Your strategy name>",
"userInfoURL": "https://api.github.com/user",
"scope": "user:email"
},
"fieldMapping": {
"email": "email"
}
}
Step 4 - Enable the Strategy in Botpress​
Under the Pro settings in the botpress.config.json
file, add your strategy name to the collaboratorsAuthStrategies
array.
Also make sure that the externalAuth
object has enabled
set to true
:
Step 5 - Restart the Botpress Server​
A green cogwheel should appear in the bottom right of the Botpress UI, click it to restart the server.