G Suite: Difference between revisions
| (41 intermediate revisions by 5 users not shown) | |||
| Line 13: | Line 13: | ||
==Prerequisites== | ==Prerequisites== | ||
===Module requirements=== | ===Module requirements=== | ||
[[ | [[Google app API]] | ||
==Installation== | ==Installation== | ||
[[File:Googleappsadminsettings.png|none|frame]] | |||
[[File:Googleappsadminsettings.png|none| | |||
=== Organization settings === | |||
See description how to create/setup further down this page | See description how to create/setup further down this page | ||
=== Users === | |||
==== Mail Alias ==== | |||
Choose what to use as the users mail address (login). | Choose what to use as the users mail address (login). | ||
==== Forward mail to on premise mail server ==== | |||
This will forward the users Google mail to the primary mail address from AD (If user does not have a proxy address it will read it from the mail attribute) | |||
====Disable users==== | |||
When marked the users will be disabled when they are no longer attending classes. | When marked the users will be disabled when they are no longer attending classes. | ||
====Delete users==== | |||
Choose if users are to be deleted after grace period has ended | |||
Choose if users are to be deleted after grace period has ended | |||
==== Keep alive x days ==== | |||
Keep users as active in Google before disabling. This triggers when user is no longer on a template that has a google setting. | |||
Specify a grace period where users are disabled. | ====Keep disabled before deleting x days==== | ||
Specify a grace period where users are kept as disabled users in Google. | |||
=== Metadata configuration === | |||
Specify extra information to set on users in Google. | |||
See this [https://developers.google.com/workspace/admin/directory/reference/rest/v1/schemas https://developers.google.com/workspace/admin/directory/reference/rest/v1/schemas] | |||
=== Distribution lists === | |||
=====Maintain lists===== | |||
Mark this to create distribution groups in Google. The groups will be created, updated and deleted if this is specified. | |||
=====Delete lists===== | |||
Mark this to delete distributions groups when they are no longer active in the administrative system. Check the data export manuals too when this happens | Mark this to delete distributions groups when they are no longer active in the administrative system. Check the data export manuals too when this happens | ||
=====Delete unused lists after x days===== | |||
Specify in days how long the distribution groups are to be kept alive in Google before deletion. | |||
=== Template security groups === | |||
=====Maintain===== | |||
This will create the security group entered in the field “template security group” in the destination node in the template settings. | This will create the security group entered in the field “template security group” in the destination node in the template settings. | ||
=== Timetable === | |||
=====Maintain===== | |||
Mark this to create timetable blocks in Google Apps. They will be created, updated and deleted. | Mark this to create timetable blocks in Google Apps. They will be created, updated and deleted. | ||
=====Delete old===== | |||
Mark this to delete old timetable blocks from calendars. | Mark this to delete old timetable blocks from calendars. | ||
=== | ===Site=== | ||
[[File:Googleappssite.png|none|thumb|720x720px]] | [[File:Googleappssite.png|none|thumb|720x720px]] | ||
==== See [[LMS Settings]] for options not described below ==== | |||
[[ | |||
==== Drive ==== | |||
=== | |||
[[File:Googleappsdrive.png|none|thumb|720x720px]] | [[File:Googleappsdrive.png|none|thumb|720x720px]] | ||
===== See [[LMS Settings]] for options not described below ===== | |||
==== Classroom ==== | |||
There can only be a maximum of 990 classrooms in total in one organization. | There can only be a maximum of 990 classrooms in total in one organization. | ||
| Line 517: | Line 90: | ||
If a user has too many classrooms it will be very slow for this user. | If a user has too many classrooms it will be very slow for this user. | ||
[[File:Googleappsclassroomsettings.png|none|thumb|720x720px]] | [[File:Googleappsclassroomsettings.png|none|thumb|720x720px]]See [[LMS Settings]] for options not described below | ||
[[ | |||
=== Organization Settings === | |||
When creating Google API refer to this lInk | When creating Google API refer to this lInk | ||
[[Google app API|http://wiki.inlogic.dk/index.php/Google_app_API]] [[File:Googleappsorganizationsettings.png|none|thumb|378x378px]] | [[Google app API|http://wiki.inlogic.dk/index.php/Google_app_API]] [[File:Googleappsorganizationsettings.png|none|thumb|378x378px]] | ||
''' | '''Description''' | ||
Add a description to be able to identify the account. | Add a description to be able to identify the account. | ||
''' | '''Admin login''' | ||
Mail address of an administrative user | Mail address of an administrative user | ||
''' | '''Password''' | ||
Password for the admin login specified | Password for the admin login specified | ||
''' | '''Domain''' | ||
The google domain that is used. | The google domain that is used. | ||
''' | '''Client ID, Client Secret''' | ||
This is obtained when following the instructions in the PDF document | This is obtained when following the instructions in the PDF document | ||
''' | '''Refresh token''' | ||
This will be generated the first time google synchronization is started. If this is reset UMS will asked for it again when the next synchronization is run. | This will be generated the first time google synchronization is started. If this is reset UMS will asked for it again when the next synchronization is run. | ||
''' | '''Timetable Users''' | ||
This can be used when creating timetable blocks. Look in timetable documentation for this feature. | This can be used when creating timetable blocks. Look in timetable documentation for this feature. | ||
| Line 741: | Line 130: | ||
[[File:Googleappstemplateeditor.png|none|thumb|687x687px]] | [[File:Googleappstemplateeditor.png|none|thumb|687x687px]] | ||
''' | '''Setting''' | ||
This is the setting described above | This is the setting described above | ||
''' | '''Organization setting''' | ||
Specify where the users are created | Specify where the users are created | ||
| Line 771: | Line 160: | ||
A list of categories added to the site when creating it separated with a ; | A list of categories added to the site when creating it separated with a ; | ||
A category called UMS will be added | A category called UMS will be added as well. (This cannot be change) | ||
''' | '''SQL Groups''' | ||
Members of these groups will be attached to all sites created with this setting as teachers | Members of these groups will be attached to all sites created with this setting as teachers | ||
[[ | [[File:Googleappssqlgroups.png|none|thumb|458x458px]] | ||
''' | '''Group name''' | ||
This can only be a group that is found in UMS | This can only be a group that is found in UMS | ||
You get a list of these groups by running this SQL command: | You get a list of these groups by running this SQL command: | ||
Select Distinct Aktivitet As Activity From Students Order By Activity | |||
Select Distinct Aktivitet As Activity From Students Order By Activity | |||
'''Drive settings''' | '''Drive settings''' | ||
Settings used when creating drives from this template | Settings used when creating drives from this template | ||
''' | '''Careful, do not name any of these type of subfolders with the same name.''' | ||
[[File:GoogleApps Drive Settings.jpg|none|frame]] | |||
'''Path''' | |||
The path where the drives are created | The path where the drives are created | ||
'''Create user specific subfolder''' | '''Create user specific subfolder''' | ||
Can only be used with learner rights set to viewer. | |||
Create a folder for each student that is attached to each drive | Create a folder for each student that is attached to each drive | ||
| Line 804: | Line 194: | ||
'''Create subfolder (Teacher Read/Write - Student Read)''' | '''Create subfolder (Teacher Read/Write - Student Read)''' | ||
Can only be used with learner rights set to viewer. | |||
A folder where teachers can upload data that students can only read | A folder where teachers can upload data that students can only read | ||
| Line 812: | Line 204: | ||
'''Create subfolder (Teacher Read/Write - Student Read/Write)''' | '''Create subfolder (Teacher Read/Write - Student Read/Write)''' | ||
Can only be used with learner rights set to viewer. | |||
A folder where teachers and students can share data both with read/write | A folder where teachers and students can share data both with read/write | ||
| Line 822: | Line 216: | ||
[[File:Googleappsstudents.png|none|thumb|279x279px]] | [[File:Googleappsstudents.png|none|thumb|279x279px]] | ||
''' | '''SQL Groups''' | ||
Members of these groups will be attached to all sites created with this setting as teachers | Members of these groups will be attached to all sites created with this setting as teachers | ||
[[ | [[File:Googleappssqlgroups.png|none|thumb|458x458px]] | ||
''' | '''Group name''' | ||
This can only be a group that is found in UMS | This can only be a group that is found in UMS | ||
You get a list of these groups by running this SQL command: | You get a list of these groups by running this SQL command: | ||
Select Distinct Aktivitet As Activity From Students Order By Activity | |||
Select Distinct Aktivitet As Activity From Students Order By Activity | |||
'''Classroom settings''' | '''Classroom settings''' | ||
Settings used when creating classrooms from this template | Settings used when creating classrooms from this template | ||
[[File:Googleappsclassroomsettings2.png|none|thumb]] | [[File:Googleappsclassroomsettings2.png|none|thumb]] S'''QL Groups''' | ||
''' | |||
Members of these groups will be attached to all sites created with this setting as teachers | Members of these groups will be attached to all sites created with this setting as teachers | ||
[[ | [[File:Googleappssqlgroups.png|none|thumb|458x458px]] | ||
''' | '''Group name''' | ||
This can only be a group that is found in UMS | This can only be a group that is found in UMS | ||
You get a list of these groups by running this SQL command: | You get a list of these groups by running this SQL command: | ||
Select Distinct Aktivitet As Activity From Students Order By Activity | |||
Select Distinct Aktivitet As Activity From Students Order By Activity | |||
==Installation G Suite Sync== | ==Installation G Suite Sync== | ||
Steps to make UMS sync work with G Suite. | Steps to make UMS sync work with G Suite. | ||
Log on | Log on https://console.developers.google.com with your Google Admin account. | ||
[[Google app API]] | |||
[[ | |||
Go to the UMS “usermanagement folder” and run “GoogleApps_Sync.exe” manually. | Go to the UMS “usermanagement folder” and run “GoogleApps_Sync.exe” manually. | ||
| Line 929: | Line 274: | ||
|Runs all the parameters in this table | |Runs all the parameters in this table | ||
|- | |- | ||
| | |CreateLearners | ||
| | | | ||
|- | |- | ||
| | |CreateStaff | ||
| | | | ||
|- | |- | ||
| | |UpdateLearners | ||
| | | | ||
|- | |- | ||
| | |UpdateStaff | ||
| | | | ||
|- | |- | ||
| | |RenameLearners | ||
| | |Rename the learners with a new mail/Login | ||
|- | |- | ||
| | |RenameTeachers | ||
| | |Rename the teachers with a new mail/Login | ||
|- | |- | ||
| | |DeleteLearners | ||
| | | | ||
|- | |- | ||
| | |DeleteStaff | ||
| | | | ||
|- | |- | ||
| | |DisableLearners | ||
| | | | ||
|- | |- | ||
| | |EnableLearners | ||
| | | | ||
|- | |- | ||
| | |DisableStaff | ||
| | | | ||
|- | |- | ||
| | |EnableStaff | ||
| | | | ||
|- | |- | ||
| | |UpdateLearnerOU | ||
| | |Move the learners to the correct OU | ||
|- | |- | ||
| | |UpdateTeacherOU | ||
| | |Move the teachers to the correct OU | ||
|- | |- | ||
| | |UpdateTeacherMailForward | ||
| | | | ||
|- | |- | ||
| | |UpdateLearnerMailForward | ||
| | | | ||
|} | |} | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 992: | Line 329: | ||
|GroupsOnly | |GroupsOnly | ||
|Runs all the parameters in this table | |Runs all the parameters in this table | ||
|- | |||
|CreateGroups | |||
| | |||
|- | |||
|CleanUpGroups | |||
| | |||
|- | |||
|AddTeachersToGroups | |||
| | |||
|- | |||
|RemoveTeachersFromGroups | |||
| | |||
|- | |||
|AddLearnersToGroups | |||
| | |||
|- | |||
|RemoveLearnersFromGroups | |||
| | |||
|} | |} | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 1,000: | Line 355: | ||
|TemplateGroupsOnly | |TemplateGroupsOnly | ||
|Runs all the parameters in this table | |Runs all the parameters in this table | ||
|- | |||
|RemoveUsersFromTemplateGroups | |||
|Remove users from template security groups | |||
|- | |||
|AddUsers2TemplateGroups | |||
|Add users to template security groups | |||
|- | |||
|DeleteTemplateGroups | |||
|Delete groups that are no longer template security groups | |||
|} | |} | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 1,008: | Line 372: | ||
|WebSitesOnly | |WebSitesOnly | ||
|Runs all the parameters in this table | |Runs all the parameters in this table | ||
|- | |- | ||
| | |AddSites2DB | ||
| | |Add new sites to UMS DB | ||
|- | |||
|CreateSites | |||
| | |||
|- | |||
|UpdateSites | |||
| | |||
|- | |||
|DeleteSites | |||
| | |||
|- | |||
|AddTeachers2Site | |||
| | |||
|- | |||
|AddLearners2Site | |||
| | |||
|- | |||
|DeleteTeachersWebSites | |||
| | |||
|- | |||
|DeleteLearnersWebSites | |||
| | |||
|} | |} | ||
{| class="wikitable" | {| class="wikitable" | ||
| Line 1,024: | Line 404: | ||
|ClassroomOnly | |ClassroomOnly | ||
|Runs all the parameters in this table | |Runs all the parameters in this table | ||
|- | |||
|AddClassrooms2DB | |||
|Add new classrooms to UMS DB | |||
|- | |||
|CreateClassrooms | |||
| | |||
|- | |||
|UpdateClassrooms | |||
| | |||
|- | |||
|DeleteClassrooms | |||
| | |||
|- | |||
|AddTeachers2Classroom | |||
| | |||
|- | |||
|AddLearners2Classroom | |||
| | |||
|- | |||
|DeleteTeachersClassroom | |||
| | |||
|- | |||
|DeleteLearnersClassroom | |||
| | |||
|} | |} | ||
==Technical settings== | ==Technical settings== | ||
| Line 1,058: | Line 462: | ||
'''The reason why that error occurs is that the mail adr. is used by another group or user. Test by manually creating a group in google admin portal. The image below shows the error.''' | '''The reason why that error occurs is that the mail adr. is used by another group or user. Test by manually creating a group in google admin portal. The image below shows the error.''' | ||
'''To correct this error''': create a '''USER''' with the same email address and then delete it again. After this, it will be possible to create the Group. | |||
[[File:Fgd.png|left|thumb|935x935px]] | [[File:Fgd.png|left|thumb|935x935px]] | ||
Latest revision as of 14:03, 1 December 2025
UMS integrates to G Suite with the module G Suite Sync which:
- Creates users and their e-mail accounts
- Maintains users in G Suite, i.e. data changes are synchronised to UMS
- Synchronises passwords
- Deletes users who no longer attend the school
Integration to G Suite quickly becomes profitable. With UMS, the school saves resources by automating many manual tasks
- Avoid having to program scripts to synchronise the data
- Users are automatically created with data from your student administration system
- It reduces the workload for the IT-department
Prerequisites
Module requirements
Installation

Organization settings
See description how to create/setup further down this page
Users
Mail Alias
Choose what to use as the users mail address (login).
Forward mail to on premise mail server
This will forward the users Google mail to the primary mail address from AD (If user does not have a proxy address it will read it from the mail attribute)
Disable users
When marked the users will be disabled when they are no longer attending classes.
Delete users
Choose if users are to be deleted after grace period has ended
Keep alive x days
Keep users as active in Google before disabling. This triggers when user is no longer on a template that has a google setting.
Keep disabled before deleting x days
Specify a grace period where users are kept as disabled users in Google.
Metadata configuration
Specify extra information to set on users in Google.
See this https://developers.google.com/workspace/admin/directory/reference/rest/v1/schemas
Distribution lists
Maintain lists
Mark this to create distribution groups in Google. The groups will be created, updated and deleted if this is specified.
Delete lists
Mark this to delete distributions groups when they are no longer active in the administrative system. Check the data export manuals too when this happens
Delete unused lists after x days
Specify in days how long the distribution groups are to be kept alive in Google before deletion.
Template security groups
Maintain
This will create the security group entered in the field “template security group” in the destination node in the template settings.
Timetable
Maintain
Mark this to create timetable blocks in Google Apps. They will be created, updated and deleted.
Delete old
Mark this to delete old timetable blocks from calendars.
Site

See LMS Settings for options not described below
Drive

See LMS Settings for options not described below
Classroom
There can only be a maximum of 990 classrooms in total in one organization.
Google designed features (Not UMS)
If a teacher leaves the school, the material that he has put into classrooms will be deleted as well.
If a user has too many classrooms it will be very slow for this user.

See LMS Settings for options not described below
Organization Settings
When creating Google API refer to this lInk
http://wiki.inlogic.dk/index.php/Google_app_API

Description
Add a description to be able to identify the account.
Admin login
Mail address of an administrative user
Password
Password for the admin login specified
Domain
The google domain that is used.
Client ID, Client Secret
This is obtained when following the instructions in the PDF document
Refresh token
This will be generated the first time google synchronization is started. If this is reset UMS will asked for it again when the next synchronization is run.
Timetable Users
This can be used when creating timetable blocks. Look in timetable documentation for this feature.
Template Settings
This is where you specify which templates are synchronized with Google and how.

Setting
This is the setting described above
Organization setting
Specify where the users are created

Path
This is where all users is placed
Use this path when below 13 years of age
This is where users that are under 13 years is placed. If this is not specified everyone will be placed under the path setting. (This is helpful when it comes to Google+)
OU Description
The description that is set on the OU when it is created.
Site settings
Settings used when creating sites from this template

Site category
A list of categories added to the site when creating it separated with a ;
A category called UMS will be added as well. (This cannot be change)
SQL Groups
Members of these groups will be attached to all sites created with this setting as teachers

Group name
This can only be a group that is found in UMS
You get a list of these groups by running this SQL command:
Select Distinct Aktivitet As Activity From Students Order By Activity
Drive settings
Settings used when creating drives from this template
Careful, do not name any of these type of subfolders with the same name.

Path
The path where the drives are created
Create user specific subfolder
Can only be used with learner rights set to viewer.
Create a folder for each student that is attached to each drive
Suffix
A text string that is appended to the folder name
Create subfolder (Teacher Read/Write - Student Read)
Can only be used with learner rights set to viewer.
A folder where teachers can upload data that students can only read
Suffix
A text string that is appended to the folder name
Create subfolder (Teacher Read/Write - Student Read/Write)
Can only be used with learner rights set to viewer.
A folder where teachers and students can share data both with read/write
Suffix
A text string that is appended to the folder name
Example

SQL Groups
Members of these groups will be attached to all sites created with this setting as teachers

Group name
This can only be a group that is found in UMS
You get a list of these groups by running this SQL command:
Select Distinct Aktivitet As Activity From Students Order By Activity
Classroom settings
Settings used when creating classrooms from this template

SQL Groups
Members of these groups will be attached to all sites created with this setting as teachers

Group name
This can only be a group that is found in UMS
You get a list of these groups by running this SQL command:
Select Distinct Aktivitet As Activity From Students Order By Activity
Installation G Suite Sync
Steps to make UMS sync work with G Suite.
Log on https://console.developers.google.com with your Google Admin account.
Go to the UMS “usermanagement folder” and run “GoogleApps_Sync.exe” manually.
Login to Google using credentials from Google Organization settings.
When logged in succesfully, “Accept” the following

If you get a “This page can’t be displayed”

Do not be alarmed. The job has been activated and you can check your GoogleApps_Sync.log to confirm that the job has completed running.
Parameters
> GoogleApps_Sync.exe [<optional> Action]
Eg.
> GoogleApps_Sync.exe
> GoogleApps_Sync.exe UsersOnly
| Parameter | Description |
|---|---|
| UsersOnly | Runs all the parameters in this table |
| CreateLearners | |
| CreateStaff | |
| UpdateLearners | |
| UpdateStaff | |
| RenameLearners | Rename the learners with a new mail/Login |
| RenameTeachers | Rename the teachers with a new mail/Login |
| DeleteLearners | |
| DeleteStaff | |
| DisableLearners | |
| EnableLearners | |
| DisableStaff | |
| EnableStaff | |
| UpdateLearnerOU | Move the learners to the correct OU |
| UpdateTeacherOU | Move the teachers to the correct OU |
| UpdateTeacherMailForward | |
| UpdateLearnerMailForward |
| Parameter | Description |
|---|---|
| GroupsOnly | Runs all the parameters in this table |
| CreateGroups | |
| CleanUpGroups | |
| AddTeachersToGroups | |
| RemoveTeachersFromGroups | |
| AddLearnersToGroups | |
| RemoveLearnersFromGroups |
| Parameter | Description |
|---|---|
| TemplateGroupsOnly | Runs all the parameters in this table |
| RemoveUsersFromTemplateGroups | Remove users from template security groups |
| AddUsers2TemplateGroups | Add users to template security groups |
| DeleteTemplateGroups | Delete groups that are no longer template security groups |
| Parameter | Description |
|---|---|
| WebSitesOnly | Runs all the parameters in this table |
| AddSites2DB | Add new sites to UMS DB |
| CreateSites | |
| UpdateSites | |
| DeleteSites | |
| AddTeachers2Site | |
| AddLearners2Site | |
| DeleteTeachersWebSites | |
| DeleteLearnersWebSites |
| Parameter | Description |
|---|---|
| ClassroomOnly | Runs all the parameters in this table |
| AddClassrooms2DB | Add new classrooms to UMS DB |
| CreateClassrooms | |
| UpdateClassrooms | |
| DeleteClassrooms | |
| AddTeachers2Classroom | |
| AddLearners2Classroom | |
| DeleteTeachersClassroom | |
| DeleteLearnersClassroom |
Technical settings
FAQ
Why do I not get the drive/site created?
1. Activity
a. Is there a user on the activity with a primary template that has an office 365 setting attached
b. Is the flag Aktivitet_LMS = True
2. Course
a. Is there a user on the course with a primary template that has an office 365 setting attached
b. Is the flag Skolefag_LMS = True
CreateGroups Error
Get root folders [Inlogic_Alle 1e-elever]
(CreateGroups) Error Google.Apis.Requests.RequestError
Not Authorized to access this resource/api [403] Errors [ Message[Not Authorized to access this resource/api] Location[ - ] Reason[forbidden] Domain[global]
Get root folders
(CreateGroups) Error Google.Apis.Requests.RequestError
Not Authorized to access this resource/api [403]
Errors [ Message[Not Authorized to access this resource/api] Location[ - ] Reason[forbidden] Domain[global]
The reason why that error occurs is that the mail adr. is used by another group or user. Test by manually creating a group in google admin portal. The image below shows the error.
To correct this error: create a USER with the same email address and then delete it again. After this, it will be possible to create the Group.
