Note: You are currently viewing documentation for Moodle 2.8. Up-to-date documentation for the latest stable version of Moodle may be available here: Google OAuth 2.0 setup.

Google OAuth 2.0 setup: Difference between revisions

From MoodleDocs
(updating Registering with Google instructions and linking to Google Dev doc rather than providing screenshots, since the UI is changed so often)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Repositories}}
{{Repositories}}
''Note: This page contains information for site administrators only.''
''Note: This page contains information for site administrators only.''
==OAuth 2.0==
Prior to Moodle 2.3, the [[Google Drive repository]] and [[Picasa web album repository]] and the [[Google Drive portfolio]] and [[Picasa portfolio]] could be used without any configuration or registration with Google. In April 2012, [http://googledevelopers.blogspot.com/2012/04/changes-to-deprecation-policies-and-api.html Google announced] to web application developers that they would be deprecating the service which Moodle was using to communicate with Google and strongly advised developers to move away from it. As a response to this change with Google's service, Moodle switched to use a new system for communicating with Google called 'OAuth 2.0'. The OAuth 2.0 system provides a better security system and more friendly experience to Moodle users, though it requires some additional configuration in Moodle.


==Registering with Google==
==Registering with Google==


Each Moodle site now needs to be registered with Google in order to use the Google Drive, Docs or Picasa plugins. As part of the registration process, you will need to enter a URL (something like <nowiki>http://yourmoodlesite.org/admin/oauth2callback.php</nowiki>) which is provided on all Google Drive, Docs and Picasa plugins configuration pages in Moodle e.g. ''Administration > Site administration > Plugins > Repositories > Google Drive''.
Each Moodle site needs to be registered with Google i.e. have a Google Developers Console project in order to use the Google Drive, Docs or Picasa plugins. As part of the registration process, you will need to enter an authorized redirect URI (something like <nowiki>http://yourmoodlesite.org/admin/oauth2callback.php</nowiki>) which is provided on all Google Drive, Docs and Picasa plugins configuration pages in Moodle, such as ''Site administration > Plugins > Repositories > Google Drive''.
 
# Visit the [https://code.google.com/apis/console#access Google APIs Console] (or the new URL [https://cloud.google.com/console/project#access Google Cloud APIs Console]) and sign into your google account. You will be asked to create a project if this is your first time using this form.
# Click the link on the left "API Access"
# Click the button 'Create an OAuth 2.0 client ID'
# Enter the branding information 'Product name' (i.e. the name of your Moodle site) and 'Product logo' (i.e. the URL of your site logo). By providing a descriptive name and link to distinct image then your users will know they are signing into the correct place.
# Click the Next button
# In 'Client ID Settings' select 'Web application' as application type.
# Click the '(more options)' link next to 'Your site or hostname' then in 'Authorized Redirect URIs' enter the URL (something like <nowiki>http://yourmoodlesite.org/admin/oauth2callback.php</nowiki>) from the plugin configuration page in Moodle, and leave the 'Authorized JavaScript Origins' field blank
# Click the button 'Create client ID'
 
The Google Drive repository plugin also requires the Drive API to be enabled as follows:
 
# In the [https://code.google.com/apis/console#access Google APIs Console] click the link on the left "APIs"
# Click the button opposite Drive API to turn it on
 
Your site will then be registered with Google and you will be provided with a client ID and secret to configure all Google Drive, Docs and Picasa plugins.


Tip: If you have more than one Moodle site to register with Google, you can add an authorized redirect URI for each site in step 7. The same name and logo would then be displayed on the authorisation screen for each Moodle site.
To create a Google Developers Console project:


# Go to the [https://console.developers.google.com/ Google Developers Console] and sign in to your Google account.
# Follow the instructions provided in the Google Developers doc [https://developers.google.com/identity/sign-in/web/devconsole-project Creating a Google Developers Console project and client ID].
# When creating a new Client ID
#* In the Application type section of the dialog, select Web application.
#* Leave the Authorized JavaScript origins field empty and in the Authorized redirect URI field, enter the URL from your site.


<gallery perrow=3 caption="Registering with Google - click on each to enlarge">
Tip: If you have more than one Moodle site to register with Google, you can add an authorized redirect URI for each site. The same name and logo would then be displayed on the authorisation screen for each Moodle site.
Image:google_oauth1.png|1. Create project
File:google_oauth2.png|2. Creating an OAuth 2.0 Client ID
File:google_oauth3.png|3. Branding information
File:google_oauth4.png|6. Client ID settings
File:DriveAPI.png|7. Enabling the Drive API
File:google_oauth5.png|Registered details
File:google_oauth6.png|Authorisation screen
</gallery >


==Configuring the Google Drive and Picasa repositories==
==Configuring the Google Drive and Picasa repositories==

Latest revision as of 14:29, 3 February 2016

Note: This page contains information for site administrators only.

Registering with Google

Each Moodle site needs to be registered with Google i.e. have a Google Developers Console project in order to use the Google Drive, Docs or Picasa plugins. As part of the registration process, you will need to enter an authorized redirect URI (something like http://yourmoodlesite.org/admin/oauth2callback.php) which is provided on all Google Drive, Docs and Picasa plugins configuration pages in Moodle, such as Site administration > Plugins > Repositories > Google Drive.

To create a Google Developers Console project:

  1. Go to the Google Developers Console and sign in to your Google account.
  2. Follow the instructions provided in the Google Developers doc Creating a Google Developers Console project and client ID.
  3. When creating a new Client ID
    • In the Application type section of the dialog, select Web application.
    • Leave the Authorized JavaScript origins field empty and in the Authorized redirect URI field, enter the URL from your site.

Tip: If you have more than one Moodle site to register with Google, you can add an authorized redirect URI for each site. The same name and logo would then be displayed on the authorisation screen for each Moodle site.

Configuring the Google Drive and Picasa repositories

  1. Go to Administration > Site administration > Plugins > Repositories > Manage Repositories
  2. Activate the Google Drive and/or Picasa repositories by selecting 'Enable and visible' in the dropdown menu
  3. Configure each repository by entering the client ID and secret. Make sure you don't include any white space in the text boxes!
  4. Save changes

Configuring the Google Drive and Picasa portfolios

  1. Go to Administration > Site administration > Plugins > Portfolios > Manage Portfolios
  2. Activate the Google Drive and/or Picasa portfolios by selecting 'Enable and visible' in the dropdown menu
  3. Configure each portfolio by entering the client ID and secret
  4. Save changes


Once configured, Google will present Moodle users with a nice authorisation screen with your Moodle site name and logo for your users to authorise.