About the Google Integration
The integration between Google and itslearning makes it possible to:
- Add files from Google Drive to itslearning, for example as course resource
- Attach a file from Google Drive to an assignment and provide each student (or group) with a copy to write their answer.
This last option is only available if a G Suite for Education domain is connected to itslearning.
To connect your G Suite domain to itslearning, the site setting “Enable G Suite connection management” needs to be modified. Please contact itslearning Support to change this setting.
To connect itslearning with your G Suite domain, you need to create a 'service account'. All copies made for assignment answers will be added to the Google Drive of this service account. This can be seen as a neutral place where assignment answers are stored. The integration will share the documents with the right students and teachers. Our integration manages the permissions during the assignment workflow.
- After a student has submitted his answer, he can no longer edit the document. If the teacher decides he needs to resubmit, edit permissions are given back.
- When using Google documents in group assignments, itslearning will ensure that all group members can work on this document.
- If a teacher is absent or has left the school, the substitute or replacement teacher will be able to follow-up all assignments in the itslearning course.
To organize answer documents for teachers on Google Drive, a folder will be created for each assignment
Lastly, the use of the service account prevents users from accidentally deleting assignment answers.They can delete the link to a shared document on their Google Drive, but the document itself will still be on the drive of the service account and attached to the answer in itslearning.
Setting up a G Suite connection
There are a couple of things you need to have, check or configure before you can start connecting your G Suite domain.
You need to have:
- an itslearning system administrator account
- a Google domain administrator account for the domain you want to connect
(Note: if you have multiple G Suite domains for teachers, each domain should be connected separately. Domains used for students do not need to be connected, though sharing permissions need to be configured correctly for this domain. This is explained further down.)
Enable Google Developer Console
It needs to be possible for the domain administrator to create projects and service accounts. For this to be possible, the Google Developer Console needs to be enabled for the Organizational Unit (OU) the administrator is part of.
To do so:
- Log on to https://admin.google.com and go to Apps>Additional Google Services;
- (to enable it only for the OU of the domain administrator, choose 'Settings for specific organizational units' and select the OU of the administrator);
- Look up the Google Developer Console and ensure it is enabled.
Check sharing permissions
For the integration to work, it must be possible:
- for teachers to share documents outside the domain;
- for student to receive documents from another domain.
This is needed because the service account is on Google's generic *.gserviceaccount.com domain. This domain cannot be whitelisted as it's not a G Suite domain.
To check and if necessary change the sharing permissions:
- Log on to https://admin.google.com and go to Apps>G Suite>Drive and Docs;
- On the 'Drive and Docs' page, open Sharing settings;
- Ensure that for the Organisational Unit (OU) teachers are added to, the setting Sharing options is set to ON;
- If you have limited sharing for students (either 'OFF' or by using whitelists) ensure that for the Organizational Unit (OU) students are added to, the setting Allow users in 'name of your domain' to receive files from users outside of 'name of your domain' is checked.
Note that changes to these settings can take up to 24 hours to be propagated to all users on G Suite.
Once you are done with the preparations, you can connect your G Suite domain to itslearning.
Log in to itslearning as system administrator and go to Admin >> Edit Global settings >> Cloud services. The page opens on the Google tab.
Currently there are a couple of settings that enable specific Google integrations. We plan to replace these with a generic 'Enable Google integration' setting. Until that time, it is recommended to only check Enable file linking using Google Drive. At least 'Enable file uploading using Google Drive' should be disabled, as it will not work with the creating-a-copy feature and will confuse teachers.
On this page, click Add a new G Suite Connection.
First you must log in to your G Suite domain. Click Log in to open the Google login form in a new window. Log in with your Google domain administrator account.
After you've logged in you are asked to grant access to an itslearning app we use to create and configure a service account. This app needs to following permissions:
|Permission||Why do we need this?|
|View and manage your data across Google Cloud Platform services||To create or select a service account for this domain.|
|Manage your Google API service configuration||To access the service account's Google Drive, we need to enable the Google Drive API.|
This app isn't verified
We are still in the process of approving our new app. Until that is done, you'll see a message that the app is not verified.
Please click 'Advanced' and then 'Go to itslearning.com (unsafe)'
(Trust us, it's safe ;-) )
Once you have connected your domain, the app no longer need these permissions. Feel free to remove them by going to https://myaccount.google.com/permissions while logged in as domain administrator. Remove the permission for itslearning Google Domain Admin.
After you've logged in and granted itslearning access to your domain, you'll be asked if you want itslearning to create a service account for you, or if you want to pick one you have created yourself.
Let itslearning create a new account
The easiest way is to have itslearning create a service account for you. In that case, you only have to keep Let itslearning create a new account and click Connect. We'll add a project and a service account called 'itslearning'. You can find this account https://console.developers.google.com when logging on with your Google domain administrator.
In itslearning, the domain will appear in the 'Connected G Suite domains' table.
You are now ready to go!
Using an existing account
It's also possible to use your own service account. Simply select the account you want to use and click Connect.
If you haven't created an account yet and you want to create one manually, follow the instructions under Step 3: https://support.google.com/a/answer/7378726?hl=en. Note: Step 1 only needs to be done if you don't have a project yet or if you don't want to use an existing one. Step 2 can be skipped as we will enable this API automatically once you connect this account to itslearning.
As soon as you have a service account created for your domain, it will appear in the list when selecting 'I have my own service account'.
Once you click Connect the domain will appear in the 'Connected G Suite domains' table. You are now ready to go!
What does the 'itslearning Google Domain Admin' app do?
To be able to create copies of Google docs, store these on a neutral drive and handle permissions, itslearning needs to have access to a service account on the Google domain, and that service account needs to have access to the Google Drive API.
For this, when connecting a G Suite domain to itslearning, we have created an app that:
- Allows you to create or select a service account. If you create a new service account, the app will:
- Create a new project in the domain called 'itslearning'
- Create a service account in this project, also called 'itslearning'
- Configures the created or selected service account to have access to the Google Drive API;
- Register the credentials of the service account in itslearning.
Once created, you can check the result by logging on as Google domain administrator to https://console.developers.google.com.
Please note that if you delete the service account or disable the Google Drive API the integration in itslearning will break.