Difference between revisions of "OAuth 2 Github service"

Jump to: navigation, search

Note: You are currently viewing documentation for Moodle 3.3. Up-to-date documentation for the latest stable version of Moodle is probably available here: OAuth 2 Github service.

(Created page with "=== Set up app in Github === *Enter to https://github.com/ go to settings> Developer settings> Oauth Apps> Register a new application. *Include the application name, URL, desc...")
 
(Set up app in Github)
Line 2: Line 2:
 
*Enter to https://github.com/ go to settings> Developer settings> Oauth Apps> Register a new application.
 
*Enter to https://github.com/ go to settings> Developer settings> Oauth Apps> Register a new application.
 
*Include the application name, URL, description and callback URL like in the following image and click on Register Application.
 
*Include the application name, URL, description and callback URL like in the following image and click on Register Application.
[[File:githubapp.png]]
+
[[File:githubapp.png|none|frame|Create Application]]
 
*In the next screen your Client ID and Client Secret should appear.
 
*In the next screen your Client ID and Client Secret should appear.
 +
 
=== Setup Moodle as a Client for Github ===
 
=== Setup Moodle as a Client for Github ===
 
*Now in your Moodle you can access Site Administration>Servers>OAuth2>Create new custom service.
 
*Now in your Moodle you can access Site Administration>Servers>OAuth2>Create new custom service.

Revision as of 18:55, 2 January 2018

Set up app in Github

  • Enter to https://github.com/ go to settings> Developer settings> Oauth Apps> Register a new application.
  • Include the application name, URL, description and callback URL like in the following image and click on Register Application.
Create Application
  • In the next screen your Client ID and Client Secret should appear.

Setup Moodle as a Client for Github

  • Now in your Moodle you can access Site Administration>Servers>OAuth2>Create new custom service.
  • Include the following information:
Name: Github
Client ID: (the Client ID obtained previously)
Client Secret: (the Client Secret obtained previously)
Scopes included in a login request: read:user
Scopes included in a login request for offline access: read:user
Service base URL: https://api.github.com/
Logo URL: https://github.com/favicon.ico
Show on login Page: checked
  • Click on Save changes.
  • Enter to Configure Endpoints in the Edit Menu of the service, there you must include the following information:
authorization_endpoint: https://github.com/login/oauth/authorize
token_endpoint: https://github.com/login/oauth/access_token
userinfo_endpoint: https://api.github.com/user
  • Enter to configure user field mappings in the Edit menu of the service, there you must edit the following information:

the following mapping is presented as: External field name → Internal field name

name → firstname
email → email
login → username
url → url
avatar_url → picture
location → city
  • The last step would be to confirm that the OAuth2 authentication plugin is enabled in the authentication plugins management page.
  • Additional note: if you configured a Github authentication service and any of your users is having problems to log in it can be because they do not have any public e-mails, this setting can be changed by your users accessing to Github>Settings>Profile and there selecting an e-mail to be public.