Skip to content

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

Open
xlgmokha wants to merge 1 commit into
xlgmokha/auth-1362cfrom
xlgmokha/auth-1362d
Open

feat(scim): implement /scim/v2/ServiceProviderConfig#2662
xlgmokha wants to merge 1 commit into
xlgmokha/auth-1362cfrom
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
Add a core package for the SCIM 2.0 core schema of RFC 7643 and use
it to answer `GET /scim/v2/ServiceProviderConfig` with a real
document instead of a 501.

The response reports every attribute RFC 7643, Section 5 marks as
required, each declaring no support, since none of patch, bulk,
filter, changePassword, sort, or etag is implemented.
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.

1 participant