File Search Google Drive Setup Guide: Service Account with Custom Admin Role
Note: This document describes the option available to create a Service Account with Custom Admin privileges, dedicated for Moveworks to ingest your Google Drive files, users, and groups for permission-enforced File Search.
1. Create Google Cloud Project and Grant Scopes to Moveworks Project
1. Create Google Cloud Project
- Create a Google Cloud Project for Moveworks
- Sign into https://console.cloud.google.com/cloud-resource-manager using an account with Google Workspace Super Admin privileges
- Click +Create Project
- Name the project Moveworks and select the top-level organization OU for your Google Workspace
- Click Create
- Once completed, click Select Project from Notifications or via Search
2. Grant SDK and API Scopes to Project
- Turn on the Admin SDK and Google Drive APIs for your Google Cloud Project
- From the top-left Navigation Menu, click APIs & Services > Enabled APIs & Services.
- Click +Enable APIs & Services.
- Search for each of the following APIs, and select Enable:
- Admin SDK
- Google Drive API
2. Create a Service Account and Save Service Account Key
-
Navigate to APIs & Services > Credentials
-
Select Create Credentials > Service Account
-
Create the Service account by adding the name, ID and description and select Create and Continue - Note: Granting access to a project or Granting users access to this service account is optional
-
Click on Actions > Manage keys
-
Select Add Key > Create new key
-
Select JSON as the Key type and click Create. You should see a notification that the service account JSON file has been downloaded and saved to your computer.
-
Save this Service Account JSON Key
Get and Save Customer ID for your Google Workspace
- Follow the instructions here to grab the Customer ID:
- Go to Admin Console, select Account → Account Settings → Profile
- Save the Customer ID
- Instructions here at: https://support.google.com/a/answer/10070793?hl=en
3. Create and Assign a Custom Admin Role for Reading Groups/Users
- Create a Custom Admin Role, via these instructions here from Google
- Navigate to Google Admin Console, and create a new Admin Role
- Select the following privileges to assign to the Role
- Users → Read Users
- Groups → Read Groups
- Create the Role
- Assign the new custom admin role to the Service Account you created in Step 2 Above, by following the steps here.
4. Share Desired Google Drive Folders with Service Account
-
In this step, make sure that each Google Drive Folder you wish to ingest has been shared access with the new Service Account with Custom Admin privileges that you have built in previous steps.
-
-
Add the Service Account as Content Manager. If your preference is to only grant Viewer access, please make sure that you have edited the following Shared Drive setting, allowing Viewers to download files:
5. Configure File Ingestion using the Google Drive Connector
Configure Google Drive Connector in MW Setup
-
Create a Google Drive connector
-
Select Service Account Auth
-
Open the JSON Key text file from Step 2 and copy the content of the "private_key"
-
Open a new text file and paste the private key. Make sure new line characters, if applicable, are replaced with new lines. Once formatted correctly save the file as a .pem file type.
-
The formatting show look similar to the below:
-
-
Upload the .pem file from the previous step in the Gdrive Service Account Auth Private Key field.
-
Leave “Impersonated User” as blank, given there is no Domain Wide Delegation
Add Google Drive as an Identity Source in User Ingestion
- Navigate to the User Identity module within Moveworks Setup and click 'import users'
- Under 'Select sources to ingest employees' add Google Drive to the list of sources using the Google Drive connector your created in step 1 above to import the users google drive details.
- Click next to advance to the next page where you will see Google Drive under Configure selected sources. Click the pencil next to the Google Drive source and then select Gdrive Source Filter. You will then need to input the Customer ID that you previously saved into the Google Workspace Customer ID field.
- Click next to advance to the Set join key page and select the appropriate field to merge the google drive record data with the data from other sources. This will typically be primaryEmail.
Configure File Ingestion
Note, if user ingestion has not been set up previously, reach out to your Customer Success team
- In the MW Setup, go to the Answers > Ingestions > File Knowledge Screen.
- Select the Google Drive Connector and *provide a Name** your File ingestion config
- Continue to the Ingestion Details page and Specify each Folder, using the Folder IDs
- Copy and paste Folder IDs in the following manner:
- If the URL of your Google Drive folder is <https://drive.google.com/drive/folders/FOLDERID, then input the FOLDERID
- You can assign a Domain to each Folder, i.e IT, HR, Finance, etc.– this Domain is used for tagging in Analytics, enabling you to filter Search usage for each of your domains
- Copy and paste Folder IDs in the following manner:
- Select Use Google Drive connector Only, as this is the only connector needed for reading both files and permissions (users and groups).
- Save the File Ingestion
6. Launch File Search to your employees (if not already)
- Refer back to the main File Search Self-Serve guide: File Search Self-Serve – Configuration Guide.
Updated 3 days ago