feat: patch user scim v2 endpoint (#9219)

# Which Problems Are Solved
* Adds support for the patch user SCIM v2 endpoint

# How the Problems Are Solved
* Adds support for the patch user SCIM v2 endpoint under `PATCH
/scim/v2/{orgID}/Users/{id}`

# Additional Context
Part of #8140
This commit is contained in:
Lars
2025-01-27 13:36:07 +01:00
committed by GitHub
parent ec5f18c168
commit 189f9770c6
31 changed files with 3601 additions and 125 deletions

View File

@@ -54,6 +54,14 @@ const (
// specified attribute and filter comparison combination is not supported.
ScimTypeInvalidFilter scimErrorType = "invalidFilter"
// ScimTypeInvalidPath The "path" attribute was invalid or malformed.
ScimTypeInvalidPath scimErrorType = "invalidPath"
// ScimTypeNoTarget The specified "path" did not
// yield an attribute or attribute value that could be operated on.
// This occurs when the specified "path" value contains a filter that yields no match.
ScimTypeNoTarget scimErrorType = "noTarget"
// ScimTypeUniqueness One or more of the attribute values are already in use or are reserved.
ScimTypeUniqueness scimErrorType = "uniqueness"
)
@@ -99,6 +107,20 @@ func ThrowInvalidFilter(parent error) error {
}
}
func ThrowInvalidPath(parent error) error {
return &wrappedScimError{
Parent: parent,
ScimType: ScimTypeInvalidPath,
}
}
func ThrowNoTarget(parent error) error {
return &wrappedScimError{
Parent: parent,
ScimType: ScimTypeNoTarget,
}
}
func IsScimOrZitadelError(err error) bool {
return IsScimError(err) || zerrors.IsZitadelError(err)
}