Identity & Access Management Training

Mastering SCIM
Identity Provisioning

A comprehensive guide to the System for Cross-domain Identity Management โ€” from core concepts to enterprise deployment with Delinea Secret Server.

RFC7642 / 7643 / 7644
RESTBased Protocol
JSONData Format
HTTPTransport Layer
IDENTITY PROVIDER Okta / Azure AD SCIM PROVISIONING LAYER RFC 7643/7644 SECRET SERVER USERS /Users endpoint GROUPS /Groups endpoint POST / GET PUT / PATCH DELETE

The Standard for Automated Identity

SCIM (System for Cross-domain Identity Management) is an open standard protocol that automates the exchange of user identity information between identity providers and cloud applications, eliminating manual provisioning.

๐Ÿ“‹
Standard

IETF Open Standard

Defined by RFCs 7642, 7643, and 7644. SCIM 2.0 is the current industry standard adopted by major cloud platforms worldwide.

๐Ÿ”„
Protocol

RESTful & JSON-Based

Operates over HTTPS using standard REST methods (GET, POST, PUT, PATCH, DELETE) with JSON payloads for all operations.

๐Ÿข
Architecture

Client-Server Model

The Identity Provider acts as the SCIM Client, pushing changes to the SCIM Server (service provider like Secret Server).

๐Ÿ›ก๏ธ
Security

Token-Based Auth

Secured via OAuth 2.0 Bearer tokens. All communications encrypted via TLS/HTTPS with defined authorization scopes.

Term Definition In Context
SCIM Client The initiating party that sends provisioning requests Okta, Azure AD, Ping Identity
SCIM Server The receiving application that processes provisioning requests Delinea Secret Server
Resource An entity managed by SCIM โ€” typically a User or Group User accounts, AD groups, roles
Schema Defines the attributes and structure for a resource type Core User schema, Enterprise User extension
Provisioning Creating/updating/deactivating accounts in a target system Onboarding employees into Secret Server
Deprovisioning Disabling or removing accounts when users leave Revoking PAM access on termination
Bearer Token Authentication credential passed in HTTP Authorization header Token generated in Secret Server for IdP

How SCIM Works

SCIM operates as a real-time synchronization bridge between your Identity Provider and downstream applications. When a change occurs in the IdP, SCIM instantly propagates that change.

Provisioning Flow

Identity Provider
Okta / Azure AD
SCIM Request
HTTPS+JSON
Bearer Token Auth
REST API
SCIM Endpoint
Secret Server
Provision
User / Group
PAM Accounts
1. Trigger
HR system or admin creates/modifies user in IdP
2. Format
IdP formats change as SCIM JSON payload
3. Transmit
HTTP request sent to Secret Server SCIM URL
4. Apply
Secret Server creates/updates/disables account

Core Resources

SCIM defines two primary resource types that map to users and groups in Delinea Secret Server.

๐Ÿ‘ค
Resource Type

/Users Endpoint

Represents individual user accounts. Contains attributes like userName, emails, displayName, active status, and enterprise extensions for department, manager, and employee number.

userName emails active department
๐Ÿ‘ฅ
Resource Type

/Groups Endpoint

Represents groups or teams that map to Secret Server roles. Contains displayName and a members array linking to user IDs. Used for bulk role assignment.

displayName members id externalId
๐Ÿ”
Discovery

/ServiceProviderConfig

Describes the SCIM capabilities supported by Secret Server โ€” including supported operations, authentication schemes, and pagination settings. Used by IdPs to auto-configure.

๐Ÿ“œ
Schema

/Schemas Endpoint

Returns the complete schema definitions for all resource types. Tells the IdP exactly which attributes are supported, required, or read-only in the target system.

๐Ÿ” Delinea Secret Server โ€” SCIM Integration

Delinea Secret Server exposes a SCIM 2.0-compatible REST API at /api/v1/scim. When integrated with an IdP, Secret Server acts as the SCIM Server (Service Provider). User accounts provisioned via SCIM become local Secret Server users assigned to configurable roles. Group memberships from the IdP map directly to Secret Server groups, enabling automated role-based access control for privileged accounts.

SCIM Methods

SCIM leverages standard HTTP methods to perform create, read, update, and delete operations on identity resources. Each method serves a specific provisioning purpose.

POST
GET
PUT
PATCH
DELETE
POST Create a new resource (User or Group)
POST /api/v1/scim/Users โ€” Create User in Secret Server
// HTTP Request
POST https://secretserver.example.com/api/v1/scim/Users
Authorization: Bearer <scim_token>
Content-Type: application/scim+json

{
  "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:User",
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
  ],
  "userName": "jane.doe@example.com",
  "name": {
    "givenName": "Jane",
    "familyName": "Doe"
  },
  "emails": [{
    "value": "jane.doe@example.com",
    "primary": true
  }],
  "active": true,
  "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "department": "Engineering",
    "manager": { "value": "john.smith" }
  }
}

// Response: 201 Created
{
  "id": "8a3f2b1c-4d5e-6f7a-8b9c-0d1e2f3a4b5c",
  "userName": "jane.doe@example.com",
  "active": true,
  "meta": { "resourceType": "User", "created": "2025-03-01T10:00:00Z" }
}
GET Retrieve users, groups, or query with filters
GET /api/v1/scim/Users โ€” Query Users with Filter
// Retrieve a specific user by ID
GET /api/v1/scim/Users/8a3f2b1c-4d5e-6f7a-8b9c-0d1e2f3a4b5c
Authorization: Bearer <scim_token>

// Filter users by email (used by IdP to check if user exists)
GET /api/v1/scim/Users?filter=userName+eq+"jane.doe@example.com"

// List users with pagination
GET /api/v1/scim/Users?startIndex=1&count=50

// Response: 200 OK (ListResponse)
{
  "schemas": ["urn:ietf:params:scim:api:messages:2.0:ListResponse"],
  "totalResults": 142,
  "startIndex": 1,
  "itemsPerPage": 50,
  "Resources": [ /* user objects */ ]
}
PUT Full replacement of an existing resource
PUT /api/v1/scim/Users/{id} โ€” Full User Update
// PUT replaces the ENTIRE resource โ€” include all attributes
PUT /api/v1/scim/Users/8a3f2b1c-4d5e-6f7a-8b9c-0d1e2f3a4b5c
Authorization: Bearer <scim_token>
Content-Type: application/scim+json

{
  "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
  "id": "8a3f2b1c-4d5e-6f7a-8b9c-0d1e2f3a4b5c",
  "userName": "jane.doe@example.com",
  "displayName": "Jane Doe (Senior)",
  "active": true,
  "emails": [{ "value": "jane.doe@example.com", "primary": true }]
}

// โš ๏ธ  Omitting any attribute may clear it. Use PATCH for partial updates.
PATCH Partial update โ€” most commonly used for deprovisioning
PATCH /api/v1/scim/Users/{id} โ€” Disable User (Deprovision)
// Most common SCIM operation โ€” set active: false to deprovision
PATCH /api/v1/scim/Users/8a3f2b1c-4d5e-6f7a-8b9c-0d1e2f3a4b5c
Authorization: Bearer <scim_token>
Content-Type: application/scim+json

{
  "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
  "Operations": [
    {
      "op": "Replace",
      "path": "active",
      "value": false      // Disables user in Secret Server
    },
    {
      "op": "Replace",
      "path": "displayName",
      "value": "Jane Doe (Deprovisioned)"
    }
  ]
}
// Response: 200 OK with updated user object
DELETE Permanently remove a resource (use with caution)
DELETE /api/v1/scim/Users/{id} โ€” Remove User
// Permanently delete โ€” most implementations prefer PATCH active:false
DELETE /api/v1/scim/Users/8a3f2b1c-4d5e-6f7a-8b9c-0d1e2f3a4b5c
Authorization: Bearer <scim_token>

// Response: 204 No Content (success, no body)

// โš ๏ธ  Best Practice: Use PATCH to set active=false instead of DELETE.
// This preserves audit trails and session history in Secret Server.
// DELETE is permanent and may violate compliance requirements.

Implementation Steps

Follow these steps to configure SCIM between your Identity Provider and Delinea Secret Server. Click each step to expand detailed instructions.

01
Enable SCIM in Delinea Secret Server โ–ผ
Activate the SCIM endpoint and obtain your authentication token

Before configuring your IdP, you must enable SCIM within Secret Server and generate a bearer token for authentication.

  • Navigate to Admin โ†’ Configuration โ†’ SCIM in Secret Server
  • Enable the SCIM feature toggle
  • Click Generate Token โ€” this creates a long-lived API key for your IdP
  • Record the SCIM Base URL: https://[your-server]/api/v1/scim
  • Optionally configure a default role for newly provisioned users
02
Add SCIM Application in Identity Provider โ–ผ
Configure Okta, Azure AD, or Ping to connect to Secret Server

In your Identity Provider, create a new SCIM-enabled application or use the generic SCIM connector template.

  • Okta: Create a new app integration โ†’ Select "SWA" or use the API Service app โ†’ Enable SCIM provisioning โ†’ Enter Base URL and Bearer Token
  • Azure AD: Enterprise Applications โ†’ New Application โ†’ Configure Provisioning โ†’ Set Tenant URL and Secret Token
  • Ping Identity: Application Connections โ†’ Add Application โ†’ Choose SCIM Outbound
  • Test the connection to confirm Secret Server responds to the discovery endpoint
03
Map Attributes Between IdP and Secret Server โ–ผ
Define how IdP user attributes map to Secret Server fields

Attribute mapping ensures user data from your IdP correctly populates fields in Secret Server.

  • Map userName โ†’ Secret Server username (typically email)
  • Map name.givenName + name.familyName โ†’ display name
  • Map emails[primary eq true].value โ†’ email address
  • Map active โ†’ account enabled/disabled status
  • Map enterprise extension department for departmental filtering
  • Review any custom schema extensions Secret Server supports
04
Configure Group Sync & Role Mapping โ–ผ
Map IdP groups to Secret Server roles for automated RBAC

Group synchronization allows IdP groups to automatically assign Secret Server roles and folder permissions.

  • Assign the relevant groups in your IdP to the SCIM application
  • In Secret Server, navigate to Admin โ†’ Groups to view synced groups
  • Map each SCIM group to Secret Server roles (e.g., "PAM_Admins" โ†’ "Administrator")
  • Configure folder-level permissions based on group membership
  • Enable Sync Now to perform an initial synchronization
05
Enable Provisioning Events โ–ผ
Turn on Create, Update, and Deactivate provisioning actions

Select which lifecycle events the IdP should automatically push to Secret Server.

  • Create Users: Automatically provision new hires from IdP to Secret Server
  • Update User Attributes: Sync profile changes (name, department, title)
  • Deactivate Users: Set active=false on termination (triggers immediately)
  • Sync Groups: Reflect group membership changes to Secret Server roles
  • Avoid enabling "Delete Users" โ€” prefer deactivation for audit compliance
06
Test, Validate & Monitor โ–ผ
Verify provisioning works end-to-end before go-live

Testing ensures your SCIM integration works correctly under all lifecycle scenarios.

  • Create a test user in the IdP and confirm they appear in Secret Server
  • Update a test user's attributes and verify they sync within minutes
  • Deactivate the test user in IdP and confirm the Secret Server account is disabled
  • Review Provisioning Logs in your IdP for any errors (400/500 responses)
  • Check Secret Server's Audit Log for all SCIM-triggered changes
  • Set up alerting on SCIM provisioning failures for production monitoring

โš™๏ธ Secret Server SCIM Endpoint Reference

The full base URL format is: https://[server-address]/SecretServer/api/v1/scim (on-prem) or https://[tenant].secretservercloud.com/api/v1/scim (cloud). The ServiceProviderConfig discovery endpoint at /api/v1/scim/ServiceProviderConfig returns supported capabilities and can be used to auto-configure compliant IdPs.

Why Use SCIM?

SCIM delivers transformative improvements to how organizations manage identity lifecycles โ€” especially in privileged access environments like Delinea Secret Server.

โšก

Instant Provisioning

User accounts are created in Secret Server automatically when added to the IdP โ€” no manual tickets, no waiting. New hires have PAM access within minutes of onboarding.

๐Ÿ”’

Rapid Deprovisioning

When an employee is terminated or changes roles, SCIM immediately disables their Secret Server account. This closes a critical security gap โ€” eliminating orphaned privileged accounts.

๐ŸŽฏ

Single Source of Truth

The Identity Provider becomes the authoritative system. No duplicate user management across PAM, AD, and other tools. One change in the IdP propagates everywhere.

๐Ÿ“Š

Compliance & Audit

Automated provisioning creates consistent, auditable trails. Every user change is logged with timestamps and source. Supports SOC 2, ISO 27001, and PCI-DSS access controls.

๐Ÿ’ฐ

Reduced Operational Cost

Eliminates manual IT helpdesk work for user provisioning. Studies show SCIM reduces identity administration time by 60โ€“80% for enterprises with 1,000+ users.

๐Ÿ”„

Consistent Role Assignment

Group memberships automatically assign the correct Secret Server roles and folder permissions. Eliminates permission drift and ensures least-privilege principles are maintained.

๐Ÿ—๏ธ

Scalability

Handles provisioning for thousands of users without performance degradation. Supports bulk operations and pagination for large enterprise directories.

๐Ÿ”—

IdP Agnostic

SCIM 2.0 is supported by Okta, Azure AD, OneLogin, Ping Identity, and more. No vendor lock-in โ€” switch IdPs without reconfiguring Secret Server.

Without SCIM vs With SCIM

โŒ Manual Provisioning
  • Hours/days for new account setup
  • Manual deprovisioning tickets
  • Risk of missed deactivations
  • Inconsistent role assignments
  • Human error in attribute entry
  • No real-time sync
  • Compliance gaps in audit trails
โœ… SCIM Automated
  • Instant provisioning on hire
  • Real-time deprovisioning on termination
  • Zero orphaned accounts
  • Consistent RBAC via group sync
  • Accurate attributes from authoritative source
  • Near real-time synchronization
  • Full automated audit trail

Common Use Cases

SCIM with Delinea Secret Server addresses critical identity lifecycle scenarios across the enterprise, from onboarding to offboarding and everything in between.

๐Ÿš€ Onboarding

Employee Joiner Automation

When HR creates a new hire in Workday or the IdP, SCIM automatically provisions a Secret Server account with the correct role based on their job title group. Day-one PAM access without a single IT ticket.

๐Ÿšช Offboarding

Instant Termination Access Revocation

When an employee is terminated, the IdP disables their account and SCIM sets active: false in Secret Server within seconds. No manual process โ€” no lingering privileged access.

โ†•๏ธ Role Change

Internal Transfer & Promotion

When a developer moves to a DevOps role, their IdP group changes. SCIM updates group membership in Secret Server, automatically granting infrastructure access while removing developer-only permissions.

๐Ÿข M&A

Mergers & Acquisitions

During company mergers, thousands of acquired employees need PAM access. SCIM can bulk-provision entire acquired directories into Secret Server by integrating the acquired company's IdP within hours.

๐Ÿ‘ท Contractors

Temporary / Contractor Access

External contractors are provisioned in the IdP with a defined end date. When their contract expires, the IdP automatically deactivates them and SCIM removes their Secret Server access โ€” no manual tracking required.

โ˜๏ธ Multi-Cloud

Hybrid & Multi-Tenant Environments

Organizations with multiple Secret Server instances (on-prem + cloud tenants) use SCIM to synchronize users from a central IdP across all environments, maintaining consistent access controls enterprise-wide.

๐Ÿ“‹ Compliance

SOX / PCI / ISO Audit Preparation

SCIM ensures all access changes are automatically logged with source attribution. Auditors receive clean, machine-generated evidence of provisioning events for access reviews and certifications.

๐Ÿ” Reconciliation

Periodic Access Recertification

SCIM's GET operations allow periodic sweeps to identify accounts in Secret Server that no longer exist in the IdP โ€” enabling automated cleanup of stale accounts discovered during access certification cycles.

๐ŸŽฏ PAM-Specific SCIM Advantage

In Privileged Access Management, speed of deprovisioning is critical. A disgruntled employee with active PAM access represents a high-severity risk. SCIM eliminates the gap between HR termination and PAM access revocation โ€” reducing the window of unauthorized privileged access from hours (manual) to seconds (automated). This is often cited as the single highest-ROI justification for SCIM in PAM environments.

Test Your Knowledge

Answer these questions to validate your understanding of SCIM and its integration with Delinea Secret Server.

Question 1 of 7