Skip to content
Captain-P-Goldfish edited this page Nov 2, 2019 · 12 revisions

SCIM Wiki

This wiki shall provide a description how this project works and how it can be used.

This project is highly generic and allows you to define your own custom endpoints with custom resources by simply creating json documents. It is also possible to add new endpoints to your application during runtime which depends on your customized setup.

The implementation allows you to setup several endpoints that are seperated from one another which allows you to provide several different configurations for different realms. So you might be able to create a realm for managing users, groups, roles etc. and a second realm that is used for handling other resources as OpenID Connect clients or other resources that might be important for your application.

How to start

Create a new instance of ResourceEndpoint and give it a ServiceProvider instance which represents the current ServiceProviderConfiguration.

By default the following endpoints will be registered automatically on the ResourceEndpoint and be available. You do not need to change anything on these endpoints. These endpoints do have full reading access to all registered resource-types schemas and the service provider configuration.

  1. /ServiceProviderConfig
  2. /ResourceTypes
  3. /Schemas

If you for some reason do not want to provide these endpoints you will be able to disable them by overriding their EndpointDefinitions.

So back to the ResourceEndpoint it also needs EndpointDefinitions. An EndpointDefinition is registration type that contains a resource-type schema the main-schema definition of the resource and optional schema-extensions as well as a custom implementation that will handle the resource by storing, reading, updating or deleting it from a database.