Skip to content

feat(scim): implement /scim/v2/ServiceProviderConfig - #2662

Merged
xlgmokha merged 2 commits into
masterfrom
xlgmokha/auth-1362d
Aug 12, 2026
Merged

feat(scim): implement /scim/v2/ServiceProviderConfig#2662
xlgmokha merged 2 commits into
masterfrom
xlgmokha/auth-1362d

Conversation

@xlgmokha

Copy link
Copy Markdown
Contributor

What kind of change does this PR introduce?

Feature. GET /scim/v2/ServiceProviderConfig returns a real RFC-7643 document.

Extracted from #2643

What is the current behavior?

All three discovery endpoints return 501 in the RFC-7644 error form.
Nothing describes what this server supports, so a SCIM client has no way to discover its capabilities.

What is the new behavior?

A new scim/core package holds the SCIM 2.0 core schema types from RFC-7643.

The /ServiceProviderConfig endpoint reports every attribute RFC-7643 marks as REQUIRED. Each capability is set to supported: false.

authenticationSchemes advertises the OAuth bearer token scheme. A later PR will enforce it.

$ curl -s http://localhost:9999/scim/v2/ServiceProviderConfig | jq
{
  "schemas": [
    "urn:ietf:params:scim:schemas:core:2.0:ServiceProviderConfig"
  ],
  "patch": { "supported": false },
  "bulk": { "supported": false, "maxOperations": 0, "maxPayloadSize": 0 },
  "filter": { "supported": false, "maxResults": 0 },
  "changePassword": { "supported": false },
  "sort": { "supported": false },
  "etag": { "supported": false },
  "authenticationSchemes": [
    {
      "type": "oauthbearertoken",
      "name": "OAuth Bearer Token",
      "description": "Authentication scheme using the OAuth Bearer Token Standard",
      "specUri": "http://www.rfc-editor.org/info/rfc6750",
      "primary": true
    }
  ],
  "meta": {
    "resourceType": "ServiceProviderConfig",
    "location": "http://localhost:9999/scim/v2/ServiceProviderConfig"
  }
}

Additional context

@xlgmokha
xlgmokha changed the base branch from master to xlgmokha/auth-1362c July 30, 2026 23:11
@xlgmokha xlgmokha self-assigned this Jul 30, 2026
@xlgmokha xlgmokha changed the title feat(scim): implement ServiceProviderConfig feat(scim): implement /scim/v2/ServiceProviderConfig Jul 30, 2026
@xlgmokha
xlgmokha marked this pull request as ready for review July 30, 2026 23:17
@xlgmokha
xlgmokha requested a review from a team as a code owner July 30, 2026 23:17
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch from 37af5c7 to e82b9b0 Compare July 30, 2026 23:26
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch from e82b9b0 to e4946b0 Compare August 4, 2026 16:18
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch from e4946b0 to e82b9b0 Compare August 4, 2026 16:43
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch from e82b9b0 to 50ef933 Compare August 4, 2026 16:46
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch 2 times, most recently from f5400b2 to fe695d5 Compare August 4, 2026 17:27
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch from fe695d5 to e005c5f Compare August 4, 2026 19:52
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch from e005c5f to 2c377ff Compare August 4, 2026 20:05
Comment thread internal/api/scim/core/service_provider_config.go Outdated
Comment thread internal/api/scim/core/service_provider_config.go Outdated
Comment thread internal/api/scim/core/service_provider_config.go Outdated
Comment thread internal/api/scim/core/service_provider_config.go Outdated
Base automatically changed from xlgmokha/auth-1362c to master August 6, 2026 15:21
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch 5 times, most recently from c897658 to 0337335 Compare August 10, 2026 22:50
Add a core package for SCIM and use it to answer `GET /scim/v2/ServiceProviderConfig`.
@xlgmokha
xlgmokha force-pushed the xlgmokha/auth-1362d branch from 0337335 to be32c55 Compare August 12, 2026 15:29

@fadymak fadymak left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I appreciate how well thought out the SCIM module is 👌 Changes LGTM!

@xlgmokha
xlgmokha merged commit 3ac3620 into master Aug 12, 2026
13 checks passed
@xlgmokha
xlgmokha deleted the xlgmokha/auth-1362d branch August 12, 2026 16:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants