Toggle menu

Base Provider Parameters

Every provider in the array of providers you set in your Worker Configuration Properties will include some of the properties below.

Type specific parameters, like the clientId and secret of a Google provider, are added in the params object.

Parameters

NameTypeDescription
providerNameString, requiredName of the provider. Any unique identifier. This allows you to create multiple providers of the same type (eg two Facebook providers using different Facebook accounts)

This name is also used as the name of the user group created to hold users when they log in with this provider
providerDisplayNameString, requiredDisplay name of the provider. Doesn't have to be unique.

Typically output in the templates, eg "Login with {{this.providerDisplayName}}"
typeString, requiredThe underlying type, eg SAML2, Facebook, etc
userPrefixString, requiredPrefix added to users created by this provider
paramsObject 
params.allowLinkingFromThisProviderBooleanControls whether account linking will be enabled when logging in with this provider (assuming this provider isn't already linked to an account). If false, logging in with this provider will never offer the ability to link to another account, also account management mode will never include this provider in the list providers that can be added. This setting is always false for the iCMSiteUser and standard LDAP and ADFS providers (see those providers for an explanation)

Default: true
params.allowLinkingToThisProviderBooleanControls whether existing accounts with this provider will be offered as an account to link to when logging in with a new provider. The provider being used to log in with must also have this set as true.

This setting is always false for the standard LDAP and ADFS providers (see those providers for an explanation)

Default: true
params.autoSubmitIfOnlyProviderBooleanIf true the login form will automatically submit (using client-side JavaScript) if this provider is the only provider on the page (ie you have only selected this provider in the article extras of your Authentication template - you can have more than one set up in your config file).

This option is designed to give a fairly seamless automatic login on staff/intranet subsites using network logins.

Default: false
params.checkConsentToStoreDataBooleanIf true, the user will be presented with a screen that explicitly asks for their permission to store their user details in our system. Every type supports this option.

Default: false
params.consentMessageStringMessage output on the check consent dialogue.

Default text:

"By clicking 'Allow' you give us your permission to access and store basic profile information acquired from the third party provider.
<br><br>
This data is handled in accordance with our terms of service and privacy policies."
params.failIfConsentNotGivenBooleanIf checkConsentToStoreData is true and failIfConsentNotGiven is true, and the user declines to allow our system to store their information, this will be treated as an authentication error.

If checkConsentToStoreData is true and failIfConsentNotGiven is false, and the user declines to allow our system to store their information:
  • The user will be successfully logged in
  • The third party user ID will be retrieved, but no other profile information
  • A site user will be created/updated using the unique identifier, but storing no other information
Every type supports this option.

Default: false
params.profileFieldsToUpdateArrayA list of abstract classes defined in the worker's top level userProfileToObjectFieldMapping. When an existing user logs in with this provider, these profile fields will be updated with values from that provider. For example:

"profileFieldsToUpdate": ["FIRSTNAME", "LASTNAME"]
params.providerSpecificStringProvider specific parameters, see the various provider articles

Examples

See the Worker Configuration Properties for an example full configuration, and provider specific articles for examples of each provider.

Last modified on September 17, 2024

Share this page

Facebook icon Twitter icon email icon

Print

print icon