Skip to content

v0.3.0

Choose a tag to compare

@wheredoipressnow wheredoipressnow released this 06 Oct 03:48
· 30 commits to main since this release

[0.3.0]

ex_scim

Breaking Changes

  • Users.Patcher.patch/2 and Groups.Patcher.patch/2 error tuple {:invalid_patch, scim_type, message}
  • Operations.Bulk error tuple {:too_large, message} for :max_operations and :max_payload_size
  • Operations.Bulk :base_url option removed

Added

  • ExScim.Authorization.Adapter behaviour and :authorization_adapter config
  • ExScim.Authorization.DefaultPolicy with the scim:* scopes
  • ExScim.Resources.PatchError exception
  • Config.scim_base_url/1 with tenant-specific base URL

Changed

  • /Bulk per-operation authorization via the configured policy
  • Operations.Bulk tenant-aware location

Fixed

  • PATCH op on a non-traversable path returning noTarget
  • PATCH remove without path returning noTarget
  • meta.location on User and Group resources
  • /Bulk location on every operation except failed POST
  • /Bulk insufficientScope scimType on denied operations

ex_scim_client

Added

  • Auth strategies on Client.new/2: {:bearer, token}, {:basic, username, password}, {:header, name, value}, :none

ex_scim_ecto

Changed

  • ex_scim dependency (~> 0.2.2 -> ~> 0.3.0)

ex_scim_phoenix

Added

  • ExScimPhoenix.Plugs.Authorize plug

Changed

  • Endpoint authorization via the configured policy

Fixed

  • Enforce scim:read scope on /.search, /Users/.search, /Groups/.search
  • 400 on malformed PATCH ops for /Users, /Groups, /Me
  • 400 invalidFilter on invalid /.search filter
  • /Me self-registration with an email JWT claim
  • 413 on /Bulk over maxOperations or maxPayloadSize
  • Location header on POST /Users, POST /Groups
  • /Me Location header pointing to the user resource