The SCIM sync project is including fields on update event in JSON body even when they are not included in the mapping. The value in the body of these fields is null causing the provider to throw an error. Similar error as follows:
The remote server returned an error: (400) Bad Request.{"status":400,"errorCode":"gw.api.rest.exceptions.BadInputException",...............title' is not allowed to have an explicit nullvalue","properties":{"parameterName":"body","parameterLocation":"body","lineNumber":30}}]}
The issue can occur when the SCIM connector uses HTTP PUT for object updates and there are unmapped properties.
For HTTP PUT, the connector first reads the object, then applies the changes and uses HTTP PUT to publish the object to the SCIM endpoint. Unmapped properties result in null values prior to writing.
For further reference please refer to https://tools.ietf.org/html/rfc7644#section-3.5
There are two ways of changing an object's attributes: HTTP PUT or HTTP PATCH. Configure the provider to use HTTP PATCH method for object updates. The service defines this in its ServerProviderConfig json, which the SCIM connector reads.
"patch":{"supported":true}
Only when this attribute is available and set to true (e.g. "patch":{"supported":true}), the SCIM Connector uses the PATCH method to only update the changed attributes.
© 2024 One Identity LLC. ALL RIGHTS RESERVED. Feedback Terms of Use Privacy Cookie Preference Center