Skip to content

Commit e015cd4

Browse files
authored
Merge pull request #496 from smallstep/carl/sso-workspace
Add google workspace user sync docs
2 parents 4135780 + fddab48 commit e015cd4

3 files changed

Lines changed: 99 additions & 2 deletions

File tree

manifest.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,10 @@
102102
"title": "Sync Okta Users",
103103
"path": "/tutorials/sync-okta-users-to-smallstep.mdx"
104104
},
105+
{
106+
"title": "Sync Google Workspace Users",
107+
"path": "/tutorials/sync-google-workspace-users-to-smallstep.mdx"
108+
},
105109
{
106110
"title": "Sync Entra ID Users",
107111
"path": "/tutorials/sync-entra-id-users-to-smallstep.mdx"

tutorials/connect-workspace-one-to-smallstep.mdx

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@ description: Connect Workspace ONE UEM to Smallstep for unified device identity.
77

88
Smallstep can integrate with [Omnissa Workspace ONE UEM](https://www.omnissa.com/products/workspace-one-unified-endpoint-management/) to keep your device inventory in sync and to exchange SCEP tokens. A SCEP token is a single-use password that's used by devices to get a certificate from Smallstep.
99

10-
To configure the connection, let's first set up an Application in Entra ID. Then, we'll add the client credentials to Smallstep.
11-
1210
# Prerequisites
1311

1412
You will need:
Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
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+
![](/graphics/quickstart/g-suite-api-clients.png)
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

Comments
 (0)