Skip to content

Commit 4e4d586

Browse files
committed
edits
1 parent 862f100 commit 4e4d586

File tree

1 file changed

+81
-73
lines changed

1 file changed

+81
-73
lines changed

docs/vendor/team-management-scim-provisioning.mdx

Lines changed: 81 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -42,13 +42,14 @@ Before you configure SCIM, ensure that:
4242
* Your team has the SAML entitlement enabled.
4343
* You have a Vendor Service Account token with permissions to manage team members. See [Generate API Tokens](/vendor/replicated-api-tokens).
4444
* You have administrative access to your identity provider.
45+
* Your identity provider supports SCIM v2.0.
4546

4647
## Configure SCIM
4748

48-
You can configure SCIM using identity providers that support SCIM v2.0.
49-
5049
### Okta Configuration
5150

51+
This section describes how to enable SCIM provisioning for Replicated in Okta. For other identity providers, see [Other Identity Providers](#other-identity-providers) below.
52+
5253
#### Step 1: Add Replicated Application
5354
1. In the Okta Admin Console, go to **Applications > Applications**.
5455
2. Create a custom SAML 2.0 application.
@@ -92,27 +93,45 @@ If name fields are not provided, users are still created, but might have incompl
9293
:::
9394

9495
#### Step 6: Assign Users
96+
97+
:::note
98+
If your team already has users in Replicated, synchronize them with Okta before you assign users. See [Migrate from Existing User Management](#migrate) below.
99+
:::
100+
101+
To assign users in Okta:
95102
1. Go to the **Assignments** tab.
96103
2. Assign users or groups to grant access to Replicated.
97104

98105
Users are provisioned to your Replicated team automatically.
99106

100-
### Migrate from Existing User Management
107+
### Other Identity Providers
108+
109+
For identity providers other than Okta, you can use the following basic settings to configure SCIM:
110+
- **SCIM Base URL:** `https://api.replicated.com/vendor/scim/v2`
111+
- **Authentication Method:** Bearer Token
112+
- **Bearer Token:** Your Replicated Vendor API token
113+
- **SCIM Version:** 2.0
114+
115+
For more information, see [SCIM API](#scim-api) below.
101116

102-
If your team already has users in Replicated before you enable SCIM, you can synchronize the existing users with your identity provider. Before you begin, review the best practices:
117+
## Migrate from Existing User Management {#migrate}
118+
119+
If your team already has users in Replicated before you enable SCIM, you can synchronize the existing users with your identity provider.
120+
121+
The following are best practices for migrating from existing user management:
103122
* Test the environment first.
104123
* Perform a staged rollout starting with a small group of users.
105124
* Communicate the migration timeline.
106125
* Document the current user list and permissions before migration.
107126
* Monitor for provisioning errors during the first few days.
108127

109-
#### (Recommended) Automatic User Matching
128+
### (Recommended) Automatic User Matching
110129

111130
To automatically match users:
112131

113132
1. Ensure that all existing Replicated users have matching accounts in your identity provider. If email addresses do not match exactly or users exist in other teams, follow the steps in [Manual User Migration](#manual-user-migration) below.
114133

115-
1. Configure SCIM as described in [Idenitty Provider Configuration](#identity-provider-configuration) above, but do not assign any users yet.
134+
1. Configure SCIM as described in [Okta Configuration](#okta-configuration) above, but do not assign any users yet.
116135

117136
1. Test with a single user:
118137
1. Assign one existing user to the Replicated application in your identity provider.
@@ -135,7 +154,7 @@ To automatically match users:
135154
https://api.replicated.com/vendor/scim/v2/Users
136155
```
137156

138-
#### Manual User Migration
157+
### Manual User Migration
139158

140159
If email addresses do not match exactly or users exist in other teams, you can manually sync users instead.
141160

@@ -162,48 +181,43 @@ To manually migrate users:
162181
```
163182
Where `YOUR_TOKEN` is a Replicated Vendor Service Account token scoped to your team with permissions to manage team members. For more information, see [Authentication](#authentication) below.
164183

165-
### Generic SCIM Provider Configuration
166-
167-
For identity providers that support SCIM v2.0, use the basic settings and attributes described below to integrate with Replicated. For more information, see [SCIM API](#scim-api) below.
184+
## Test the SCIM Integration
168185

169-
#### Basic Settings
186+
### Test SCIM Endpoints
170187

171-
- SCIM Base URL: `https://api.replicated.com/vendor/scim/v2`
172-
- Authentication Method: Bearer Token
173-
- Bearer Token: Your Replicated Vendor API token
174-
- SCIM Version: 2.0
188+
You can use the following curl commands to manually test SCIM endpoints:
175189

176-
#### Required Attributes
190+
```bash
191+
# Test service provider configuration
192+
curl -H "Authorization: Bearer YOUR_TOKEN" \
193+
https://api.replicated.com/vendor/scim/v2/ServiceProviderConfig
177194

178-
Minimum required attributes (only email is strictly required):
195+
# List users
196+
curl -H "Authorization: Bearer YOUR_TOKEN" \
197+
https://api.replicated.com/vendor/scim/v2/Users
179198

180-
```json
181-
{
182-
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
183-
"userName": "[email protected]"
184-
}
199+
# Create user
200+
curl -X POST \
201+
-H "Authorization: Bearer YOUR_TOKEN" \
202+
-H "Content-Type: application/scim+json" \
203+
-d '{
204+
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
205+
"userName": "[email protected]",
206+
"emails": [{"value": "[email protected]", "primary": true}],
207+
"name": {"givenName": "Test", "familyName": "User"},
208+
"active": true
209+
}' \
210+
https://api.replicated.com/vendor/scim/v2/Users
185211
```
186212

187-
Recommended full attribute set:
213+
### Test Using Your Identity Provider
188214

189-
```json
190-
{
191-
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
192-
"userName": "[email protected]",
193-
"emails": [
194-
{
195-
"value": "[email protected]",
196-
"type": "work",
197-
"primary": true
198-
}
199-
],
200-
"name": {
201-
"givenName": "John",
202-
"familyName": "Doe"
203-
},
204-
"active": true
205-
}
206-
```
215+
To test the SCIM integration using your identity provider:
216+
217+
1. Test the connection using your identity provider's test feature.
218+
2. Provision a test user and verify creation.
219+
3. Deprovision the test user and verify deactivation.
220+
4. Review both the identity provider and Replicated audit logs.
207221

208222
## SCIM API
209223

@@ -255,43 +269,37 @@ Base URL: `https://api.replicated.com/vendor/scim/v2`
255269
2. Otherwise, if `userName` is set, it is used.
256270
3. Otherwise, if `emails[]` has values, the first `emails[0].value` is used.
257271

258-
## Test the SCIM Integration
259-
260-
### Test SCIM Endpoints
261-
262-
You can use the following curl commands to manually test SCIM endpoints:
263-
264-
```bash
265-
# Test service provider configuration
266-
curl -H "Authorization: Bearer YOUR_TOKEN" \
267-
https://api.replicated.com/vendor/scim/v2/ServiceProviderConfig
272+
### Required Attributes
268273

269-
# List users
270-
curl -H "Authorization: Bearer YOUR_TOKEN" \
271-
https://api.replicated.com/vendor/scim/v2/Users
274+
Minimum required attributes (only email is strictly required):
272275

273-
# Create user
274-
curl -X POST \
275-
-H "Authorization: Bearer YOUR_TOKEN" \
276-
-H "Content-Type: application/scim+json" \
277-
-d '{
278-
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
279-
"userName": "[email protected]",
280-
"emails": [{"value": "[email protected]", "primary": true}],
281-
"name": {"givenName": "Test", "familyName": "User"},
282-
"active": true
283-
}' \
284-
https://api.replicated.com/vendor/scim/v2/Users
276+
```json
277+
{
278+
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
279+
"userName": "[email protected]"
280+
}
285281
```
286282

287-
### Test Using Your Identity Provider
288-
289-
To test the SCIM integration using your identity provider:
283+
Recommended full attribute set:
290284

291-
1. Test the connection using your identity provider's test feature.
292-
2. Provision a test user and verify creation.
293-
3. Deprovision the test user and verify deactivation.
294-
4. Review both the identity provider and Replicated audit logs.
285+
```json
286+
{
287+
"schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
288+
"userName": "[email protected]",
289+
"emails": [
290+
{
291+
"value": "[email protected]",
292+
"type": "work",
293+
"primary": true
294+
}
295+
],
296+
"name": {
297+
"givenName": "John",
298+
"familyName": "Doe"
299+
},
300+
"active": true
301+
}
302+
```
295303

296304
## Troubleshooting
297305

0 commit comments

Comments
 (0)