|
| 1 | +--- |
| 2 | +updated_at: February 03, 2026 |
| 3 | +title: Sync Google Workspace Users to Smallstep |
| 4 | +html_title: Google Workspace Smallstep Integration Guide |
| 5 | +--- |
| 6 | + |
| 7 | +### Prerequisites |
| 8 | + |
| 9 | +You will need: |
| 10 | + |
| 11 | +* An account on the Smallstep platform. Need one? [Register here](https://smallstep.com/signup) |
| 12 | +* Google Admin console privileges for your organization. |
| 13 | +* A single domain name that your users will use, added and verified in the Google Admin console. |
| 14 | +* A Google Cloud Platform (GCP) project dedicated to Smallstep in your Google Workspace Organization. |
| 15 | + * [Create a GCP project here](https://console.cloud.google.com/projectcreate) |
| 16 | + |
| 17 | +### Features |
| 18 | + |
| 19 | +The following provisioning features are supported: |
| 20 | + |
| 21 | +* New Users and Periodical Pull of All Groups |
| 22 | + * New users created through Google Workspace will be created in the third party application. |
| 23 | + * Groups and Memberships will be synchronized periodically |
| 24 | +* Push Profile Updates |
| 25 | + * Updates made to the user's profile through Google Workspace will be pushed to the third party application. |
| 26 | +* Push User Deactivation |
| 27 | + * Deactivating the user or disabling the user's access to the application through Google Workspace will remove the user from Smallstep. They will no longer be able to sign in. |
| 28 | +* Reactivate Users |
| 29 | + * User accounts can be reactivated in the application. |
| 30 | + |
| 31 | +## Overview |
| 32 | +1. Configure the Google Auth Platform |
| 33 | +2. Set up API client access |
| 34 | +3. Configure Google Workspace settings in Smallstep Console |
| 35 | + |
| 36 | +## Step-by-step instructions |
| 37 | + |
| 38 | +### 1. Configure Google Auth Platform |
| 39 | + |
| 40 | +1. Configure the Google Auth Platform |
| 41 | + 1. Visit [Configure Google Auth Platform](https://console.cloud.google.com/auth/overview/create) |
| 42 | + 2. Under App Information: |
| 43 | + - **App Name**: `Smallstep` |
| 44 | + - **User support email**: choose a Google email address |
| 45 | + 3. Under Audience: |
| 46 | + - Choose **Internal** |
| 47 | + 5. Update **Contact Information** |
| 48 | + 3. Agree to terms |
| 49 | + 6. **Create** |
| 50 | +2. Create an OAuth client |
| 51 | + 1. Visit [Create an OAuth client](https://console.cloud.google.com/auth/clients/create) |
| 52 | + 2. Choose **Application type: Web application** |
| 53 | + 3. Name it **Smallstep** |
| 54 | + 4. Under Authorized Redirect URIs, choose **+ Add URI** |
| 55 | + - Specify `https://api.smallstep.com/auth/openid/callback` |
| 56 | + 5. **Create** |
| 57 | + 6. Copy the value of **Client ID** and **Client secret** and save them. |
| 58 | + |
| 59 | + |
| 60 | +### 2. Connect your Google Workspace IdP |
| 61 | + |
| 62 | +1. In the Smallstep dashboard, visit [Connect a new Google Workspace IdP](https://smallstep.com/app/?next=/settings/users/identity-providers/gsuite/connect) |
| 63 | +2. Enter the **client ID** and **client secret** from above. |
| 64 | +3. For the **configuration endpoint**, enter the following string: |
| 65 | + |
| 66 | + ``` |
| 67 | + https://accounts.google.com/.well-known/openid-configuration |
| 68 | + ``` |
| 69 | + |
| 70 | +4. For Domain, enter your company's primary Google Workspace domain name. |
| 71 | +5. For Google Workspace Admin Email, enter the email address of a Google Workspace administrator. |
| 72 | +6. Under User Syncing, select Sync users or Invite only. |
| 73 | +7. **Save** |
| 74 | + |
| 75 | +### 3. Set up API client access |
| 76 | + |
| 77 | +In Google Workspace, you'll need to do a [Domain-wide Delegation](https://support.google.com/a/answer/162106). |
| 78 | +You only need to do this once for Smallstep. If you have multiple Smallstep teams, |
| 79 | +your Google domain-wide delegation client ID is shared across those teams. |
| 80 | + |
| 81 | +1. Visit **[Domain-wide Delegation](https://admin.google.com/ac/owl/domainwidedelegation)**. |
| 82 | +2. Under API clients, choose **Add new**. |
| 83 | +3. For **Client ID**, fill in the API Client ID (a 21-digit number) given to you by Smallstep. |
| 84 | +4. For **Scopes**, enter the comma-delimited OAuth Scopes given to you by Smallstep. |
| 85 | +5. Choose **Authorize**. |
| 86 | + |
| 87 | +When you're finished, the Manage API Client Access screen page should resemble this: |
| 88 | + |
| 89 | + |
| 90 | + |
| 91 | +## Confirmation |
| 92 | + |
| 93 | +It may take some time for users to sync over from Google to Smallstep. |
| 94 | +Back in [the Smallstep Users tab](https://smallstep.com/app/?next=/users), you should see your directory with users synced. |
| 95 | + |
0 commit comments