GALSync Global Address List Synchronization

This guide is aimed at system administrators who are capable of connecting to remote systems such as Google Workspace (formerly G Suite) for Business and Office 365 Admin Panel.

Even if the new Cloudiway interface is user-friendly, GALSync is usually a detailed setup that requires a high level of competence and experience with mail systems and directories.

Overview:

  1. Introduction to GALSync
  2. Prerequisites
  3. Set up Cloudiway for GALSync
  4. Synchronization
  5. History
  6. Troubleshooting

1. Introduction to GALSync

1.1. Global Address List Synchronization

This guide provides steps for setting up GALSync using the Cloudiway platform. GALSync stands for Global Address List Synchronization.

The goal of a GAL Synchronization is to keep the address books up to date by creating users and groups from one side as contacts (or Mail users or Guest users) on the other side.

Although we provide support for our own products, we do not provide support for third-party products such as PowerShell or server administration of Google or Exchange.

To help you, we have prepared a demonstration video for you!

1.2. How it works:

GALSync tenant source target

(1) Pull users & groups from source tenant. Contacts and guest users are not pulled out from the source, only users and groups.

(2) Pull target

(3) Push new users or groups to target tenant as contacts ( or Mail users or Guest users ) and also push updates to previously created objects.

Note that source groups won’t be recreated as destination groups. Both source users and groups will be recreated at destination as contacts ( or Mail users or Guest users, except for source groups which won’t be recreated as guest users.).

1.3. Features

  • Pull options: You can synchronize all your users and groups or granularly filter them.
    • Filter by domain: You can select the Domain Names of the users and groups that you only want to synchronize.
    • Filter by mail-enabled security group: You can include or exclude users that are members of specific security groups.
    • Filter by object type: You can select to also synchronize groups and disabled users.
  • Push options: Insert source users and groups into destination address book as Contacts ( or Mail enabled users or Guest users). Displayed or hidden from the address book. If you also selected to insert source groups into destination, keep in mind that they won’t be created as groups but as the selected target type: Contacts or Mail users. Source groups won’t be recreated in the target tenant as guest users.
  • Simulation: A simulation mode is available to visualize and validate the changes before pushing them to the targets.
  • Automatic schedule: Once the rules are in place and working correctly, you can schedule the execution and run it automatically at the time of your choice.
  • Logs: Execution logs are available to keep track of the errors and changes.

1.4. Supported Systems

  • Google Workspace
  • Office 365
  • Exchange on-premises ( 2007 and later )

On-Premises environments require a local agent to be running. Please check out this article to set up GALSync On-Premises Connector:

GALSync On-Premises Connector Configuration

1.5. Performance & Security

We take your privacy and security seriously at Cloudiway, and we have invested significant effort into making our platform and your data secure. Cloudiway provides a cloud-based application hosted in Windows Azure… For more information about security, please refer to this article.

For more information about migration performance, please refer to this article.

2. Prerequisites

GALSync setup requires the assistance of our consulting team. Should you need help, please drop an email here.

2.1. Office 365 Service Account

The GALSync connector uses a mix of PowerShell commands and Graph API calls.

PowerShell command requires administrative privileges. The easiest approach is to use a tenant admin account. However, it’s possible to use an account with fewer privileges.

The following steps describe how to set up such account:

The account must be granted several roles:

  • Go to the O365 Exchange Admin Center
    1. Select “Roles”
    2. Select “Admin roles”
    3. Create a new role group GalSync

Exchange Admin Center Admin Roles

  • Give the group a name, description, and set the Write scope to Default
  • Assign the following roles to the role group:
    • Address Lists
    • Mail Recipient Creation
    • Mail Recipients

GALSync roles address list mail recipient

In the Members area, add the licensed service account to the role group.

Click Save

To create your Office 365 connector, check this article.

2.2. Azure Apps Registration

Graph APIs calls are performed through an Azure Active Directory Application which is granted specific permissions.

You can either create an Azure Active Directory Application manually or let the platform create one for you.

If you create the Application manually, you must grant the following permissions:

User.Read.All, 
Group.Read.All, 
Directory.Read.All
OrgContact.Read.All

To enable the modification of Guest or Mail user:
User.ReadWrite.All

To create items as Guests:
User.Invite.All

Please consult our How To Create Azure Apps Registration page to create the Azure Active Directory Application and associated permissions.

2.3. Google Workspace Service Account

The Google service account needs to be a super admin and requires a valid Google user license.

2.4. Google feeds

From your Google Workspace migration account, give access to your API (Google feeds).

https://apps-apis.google.com/a/feeds/user/,
https://apps-apis.google.com/a/feeds/groups/,
https://apps-apis.google.com/a/feeds/policies/,
https://www.google.com/m8/feeds/,
https://apps-apis.google.com/a/feeds/alias/,
https://www.googleapis.com/auth/admin.directory.user,
https://www.googleapis.com/auth/admin.directory.user.readonly,
https://www.googleapis.com/auth/directory.readonly,
https://www.googleapis.com/auth/contacts

This article explains how to add the Google feeds:

Google Workspace Connector Configuration

3. Set up Cloudiway for GALSync

The following chapter shows how to setup GalSync between Google Workspace, Office 365.

Reminder: check out this article to configure GALSync On-Premises Connector.

3.1. Create Your Connectors

Connectors are multi-directional. Cloudiway needs to be able to communicate with both your source and target domains. To do this, Cloudiway uses connectors. Please refer to this page to configure your connectors.

Create Connectors Guide

Google Workspace Connector Configuration

Office 365 Connector Configuration

When you create both connectors, make sure to select GALSync in Coexistence Products:

G Suite and Office 365 Connectors

3.2. GALSync Configuration

Once your connectors are created, you must configure them for GALSync.

Go to GALSync > Configuration, select your connector.

Note: Every connector works only for it’s own configurations (pull or push). When different configuration needed, we should create separate connectors. ex. if different groups or users filtered with a mail-enabled security group. Same applies for target tenants.

3.2.1. Pulling Options

Select if you wish to enable the following options:

Pull Options:

  • Pull Groups: whether or not to synchronize groups.
  • Pull Disabled Users: whether or not to synchronize disabled users.

Pull Members:

  • Pull Specific Groups: synchronize only members of the specified groups. Everything else will be filtered out. This is the recommended way of pulling users and groups from your tenant to avoid pulling service accounts and other users and groups you do not want to pull out of the tenant. Create a dedicated mail-enabled security group and add as members all the users and groups.
  • Exclude Specific Groups: synchronize everything except the members of specified groups.
    • Important note: The group Display name must be provided and not the e-mail address of the group.

Note: The Cloudiway tools will still pull all objects in the tenant into the list, but will only push the source users and groups based on your filtering rules above. When pulling or filtering by groups, only objects directly added to mail-enabled groups are supported. Nested groups or non-mail-enabled groups are not supported.

3.2.2. Pull Filters

Pulling Filters

If you don’t want to pull the entire directory, you can specify filters to synchronize only the users and groups of your choice.

The filters are based on attributes that match conditions:

  • Equals
  • DoesNotEqual
  • Contains
  • DoesNotContain
  • StartWith
  • DoesNotStartWith
  • MatchRegex
  • DoesNotMatchRegex
  • DateAfter
  • DateBefore
  • EndsWith
  • DoesNotEndWith

3.2.3. Push Options 

For Office 365, you can define various pushing options:

GALSync Office 365 Push Options

Push Type: source users and groups can be created at destination as:

  • Mail Contact: use this option to only add email addresses in the address book. This option doesn’t allow future migration of the source users to the target tenant. We do not recommend this option.
  • Mail User: use this option if you plan to migrate your source users to the target tenant later on (when you are ready to migrate, just add a O365 License to the mail-enabled user).
  • Guest User: (activated by default) use this option to allow adding the source users as guest users into the target Microsoft Teams or SharePoint Sites. With this option, source groups won’t be recreated in the target tenant as guest users.

Push Options

  • Push Groups: enable or disable publications of group email addresses in the address book as Contacts ( or Mail enabled users or Guest users).
  • Push Empty Fields: propagate empty fields. If the field is empty at the source but not at the target, the target value will be deleted.
  • Force display in address list: used only when creating as target guest users. By default, Office 365 hides guest users from the address book. This option allows making them visible.

3.2.4. Push Customizations

The Push Customizations allows to select the attributes to push.

Office 365:

GALSync Office 365 Push Customizations

Google Workspace:

GALSync Push Customization

4. Synchronization

The Actions section allows you to manually synchronize your users and groups between tenants. When your rules are correct, you can automate and schedule the synchronizations.

GALSync Actions

4.1. Manual Synchronization

This chapter explains how to synchronize your users and groups between a source and a target tenant. This is a two-steps synchronization, the first step is to pull the users and groups from the source and then to push them to the target.

  1. Pull: choose both your Source and Target connectors, then click on PULL to pull the users and groups from your tenant. This step will pull (discover) the users and groups on the source tenant.
  2. Push: this step pushes the users and groups from the selected source to the selected target.

Note: we highly recommend testing this process between two temporary tenants or with fake users and groups before pushing between the final tenants.

List of actions:

  • Pull: Use this option to pull the users and groups from the source connector to the Cloudiway internal cache.
  • Push: Use this option to push to the target connector all the users and groups previously pulled out of the source connector to the Cloudiway internal cache by Pull option. It performs different actions: it pulls the objects from the target connector. It then determines what needs to be pushed, and finally pushes the changes to the target. Make sure you Push to target right after getting a Pull from source, otherwise pushed objects may not be up to date.
  • Simulate: Similar to the Push option except that it does not make any changes to the target. You can check the simulation results by clicking on the job (in the History section from the side menu) then clicking on View Simulation.
  • Clear cache: Use this option to empty the Cloudiway internal cache for the selected connector. This action cannot be performed while an action is already processing.
  • Delete contacts: Use this option to programmatically delete Google contacts through the Google connector. A Google administrator cannot manually delete shared contacts.

4.2. Data Discovery

Once a Pull action has successfully completed, you can visualize all the objects pulled out of the source connector. Go to Data Discovery and select the source connector.

GALSync Data Discovery

All the users, groups and guest users pulled out of the source connector will be displayed below with the corresponding state of the objects compared with the previous synchronization from the source connector to the Cloudiway internal cache:

  • Created
  • Pending Creation
  • Unknown
  • Modified
  • Pending Modification
  • Not Modified
  • Programmatically Filtered
  • Manually Filtered
  • Manually Unfiltered
  • Deleted
  • Pending Delete
  • Error

4.3. Automatic Synchronization

When your rules are correct, you can schedule two actions to automate the bi-directional synchronization from one tenant to the other, in the platform terminology from source to target and then schedule another action in the other direction, from target to source. Each scheduled action will automatically concatenate the Pull action from one tenant to Cloudiway internal cache and once it’s completed, the Push action from the Cloudiway cache to the other tenant, and vice versa for the other scheduled action.

Enable Automatic Run. Select Day of the Week and the Time (UTC) and click on ADD SCHEDULER.

Automatic Run

Then click on the “+” icon and select your Source and Target connectors and click on OK. The action will be scheduled to be launched automatically by Cloudiway on the selected day and time.

GALSync Scheduler

5. History

Switch to the History section to monitor the execution of your tasks, check the status of your jobs, and visualize the results.
GALSync History

Click on a job to display the results of the synchronization: Creations, Modifications, etc.

Scroll down the page. The Jobs Logs are available under the Jobs List.

GALSync Jobs Logs

6. Troubleshooting

Cloudiway provides an extensive knowledge base with many resources, including common error messages. Please visit the knowledge base here (where you can search for keywords or read through topics).

If you are concerned you might have any difficulty completing these steps, please consider a solution with our consulting team, contact us. This will ensure a fast, cost-effective, and stress-free implementation.

Cloud Migration Cloudiway
Want to try?
BOOK A DEMO
Cloud Migration Questions
Any questions?
Contact