OpenID Connect role management modes
By default, fulfillmenttools uses OpenID Connect (OIDC) for authentication and to synchronize authorization information, such as roles and facility assignments.
For enterprise environments where authorization is managed separately from the Identity Provider (IdP), fulfillmenttools supports multiple role management modes.
This behavior is configured per OIDC provider using the field:
{
...
"roleManagementMode": "IDP_MANAGED"
...
}Supported values:
IDP_MANAGED(default)IDP_IDENTITY_ONLY(not recommended)
IDP_MANAGED (default)
This is the recommended mode.
In this mode, the Identity Provider is the single source of truth for:
User lifecycle
Authentication
Application roles
Facility assignments
Log in behavior
When a user signs in:
User identity is synchronized from the IdP
Roles are synchronized from the IdP
Facility assignments are synchronized from the configured groups
Existing role and facility assignments in fulfillmenttools are overwritten
Advantages
Single source of truth
No duplicate permission administration
Simpler compliance and auditing
Recommended by fulfillmenttools
Configuration
IDP_IDENTITY_ONLY
We recommend only using this mode when roles and facility assignments can't practically be managed in the Identity Provider.
In this mode, the Identity Provider is responsible only for:
Authentication
User identity
User lifecycle
Roles and facility assignments are managed directly in fulfillmenttools.
Log in behavior
When a user signs in:
User identity is synchronized from the IdP
User is created automatically if it doesn't already exist
Existing fulfillmenttools roles remain unchanged
Existing fulfillmenttools facility assignments remain unchanged
Groups received from the IdP are ignored for authorization purposes
Configuration
Managing roles and facilities in fulfillmenttools
When an OIDC provider is configured with IDP_IDENTITY_ONLY, roles and facility assignments can be managed through fulfillmenttools APIs.
Administrator role restriction
For OIDC users, the ADMINISTRATOR role remains managed by the Identity Provider.
It can't be assigned or removed locally through fulfillmenttools APIs or Backoffice.
Last updated
Was this helpful?

