The iCMSiteUser type handles the logins of users who have registered directly with your site (ie user who use your site registration form, not a third party provider).
Provider Linking
The iCMSiteUser provider always has
Provider linking lets users link the provider they are logging in with to an account that already exists. For an iCMSiteUser login to work, it must already exist in iCM. Because linking on login is only concerned with adding new providers to existing accounts, and does not linking user accounts together, linking from this provider doesn't make sense - an account with this iCMSiteUser provider must already exist and be the current user's account.
The default configuration does allow linking to this provider on login. If a user has already registered directly with your site and has an account with an iCMSiteUser provider, when they log in with a third party provider with a matching email address, they will be presented with options to link accounts. See the Linking Providers, Account and Profile Management article for a full description.
Note that our standard registration form checks for existing email addresses, so users registering directly with your site won't be able to create a user if they have previously created an account that already has their email address.
User Lockouts
This provider can optionally lockout a user upon n number of failed login attempts. This behaviour is enabled by setting
Note that lockouts only apply to this provider, not to the user account. A user with two providers, iCMSiteUser and Google for example, could lock their iCMSiteUser login, but still log in with their Google details.
Two-Factor Authentication
Two-factor authentication adds an additional layer of security to your site logins. If enabled in the worker configuration (the
The image below shows the default template displayed when entering the two-factor code:
![Two-Factor Challenge](/image/6859/Two-Factor-Challenge/gi-responsive__100.png?lastModified=1708611944567)
Parameters
As well as the parameters described in Base Provider Parameters, the following may be set in the params object.
Name | Type | Description |
---|---|---|
lockoutThreshold | Integer, optional | Default: 5 If the user fails to login via the ICMSiteUser provider this many times in a row the login will be locked out for the duration specified by lockoutDuration 0 = Lockout disabled |
lockoutDuration | Integer, optional | Default: 900000 (fifteen minutes) How long in milliseconds an iCMSiteUser login will be locked out for after surpassing the lockoutThreshold 0 = Forever |
loginWith2FA | Boolean, optional | Default: false If true, two-factor authentication will be enabled. A code is emailed to the user, and they have three attempts to enter it correctly |
Example
{
"providerName": "icmsiteuser",
"type": "icmsiteuser",
"providerDisplayName": "Website Site User",
"params": {
"loginWith2FA": false,
"allowLinkingFromThisProvider": false,
"allowLinkingToThisProvider": true,
}
}