SCIM: Listen-API gibt paginierte Ergebnisse zurück; nicht unterstützte Filter abgelehnt (Ausstehend)

Achtung

Diese Verhaltensänderung ist in Bundle 2026_03 enthalten.

Den aktuellen Status des Bundles finden Sie unter Bundle-Verlauf.

Die SCIM-Listen-API-Endpunkte (GET /scim/v2/Users und GET /scim/v2/Groups) ändern sich, um eine paginierte Liste der Benutzenden oder Gruppen im Konto zurückzugeben, die optional mit einem angegebenen eq- oder sw-Filter übereinstimmt. Zuvor gaben diese Endpunkte ein einzelnes synthetisches Beispielobjekt zurück.

Ungefilterte Listenaufrufe

Vor der Änderung:

GET /scim/v2/Users und GET /scim/v2/Groups ohne einen filter-Parameter gaben ein einzelnes synthetisches Beispielobjekt zurück. Zum Beispiel gab GET /scim/v2/Users Folgendes zurück.

{
  "totalResults": 1,
  "startIndex": 1,
  "itemsPerPage": 1,
  "Resources": [{
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User", "..."],
    "id": "1",
    "externalId": "synthesis_user_external_id",
    "userName": "synthesis_user",
    "displayName": "synthesis_user_display_name",
    "active": false
  }]
}

Ebenso gab GET /scim/v2/Groups ein einzelnes synthetic_group-Objekt zurück.

Nach der Änderung:

Dieselben Aufrufe geben eine paginierte Liste von Benutzenden oder Gruppen im Konto mit standardmäßiger SCIM-Paginierung (startIndex, count) zurück.

Validierung des Filterausdrucks

Vor der Änderung:

Die Filterwerte wurden grob geparst. Nicht unterstützte Filterausdrücke, auch solche mit logischen Operatoren (and, or) und fehlerhaften Filterwerten, wurden stillschweigend akzeptiert und gaben 200 OK mit einem leeren``Resources``-Array zurück.

Nach der Änderung:

Filterwerte werden jetzt als JSON-Zeichenfolgen in Anführungszeichen im Einklang mit den JSON-Codierungsanforderungen von SCIM geparst. Nicht unterstützte oder fehlerhafte Filterausdrücke werden mit dem HTTP 400 Bad Request- und SCIM-Fehlertyp``invalidFilter`` abgelehnt. Unterstützte Einzelattributfilter mit eq oder sw sind nicht betroffen.

Unterstützung von ServiceProviderConfig-Filtern

Vor der Änderung:

GET /scim/v2/ServiceProviderConfig meldete filter.supported als Ganzzahl (0).

Nach der Änderung:

filter.supported ist ein boolescher Wert (true), wie von RFC 7643 gefordert.

Kundschaft, deren SCIM-Clients Filterausdrücke mit and oder or senden, sollte den Client aktualisieren, um einfache Filter zu verwenden oder 400 invalidFilter-Antworten zu verarbeiten.

Bemerkung

Kundschaft mit einer großen Anzahl von Benutzenden oder Gruppen kann längere Antwortzeiten bei ungefilterten Listenaufrufen feststellen. Um die Größe der Antworten zu reduzieren, verwenden Sie excludedAttributes=groups beim Auflisten von Benutzenden oder excludedAttributes=members beim Auflisten von Gruppen. Dadurch wird die Erweiterung der Mitgliedschaft verhindert, die der Hauptfaktor für die Antwortgröße und Latenz von großen Konten ist.

Ref: 2276