Issue Description

When K2 Forms STS is enabled and a user token has expired, you may be logged out in the background and unable to access the K2 Application.

Resolution

  1. Ensure you have K2 4.7 installed.
  2. Download and Install the K2 4.7 March 2018 Cumulative Update from K2 Partner and Customer Portal.
  3. Download the K2 4.7 March 2018 Cumulative Update FP35 from K2 Partner and Customer Portal.
  4. Install the K2 4.7 March 2018 Cumulative Update FP35 to apply the fix.

Considerations

It is important that the SessionTokenLifetime values are never the same as the TokenExpiry values, including the default value of 1800. This will cause a “multiple login attempts detected” error. These values are stored in the web config files situated at the locations below:

  • C:\Program Files (x86)\K2 blackpearl\K2 smartforms Designer
  • C:\Program Files (x86)\K2 blackpearl\K2 smartforms Runtime
  • C:\Program Files (x86)\K2 blackpearl\WebServices\Identity\Sts\Forms
  • C:\Program Files (x86)\K2 blackpearl\WebServices\Identity\Sts\Windows

Note that the SessionTokenLifetime values are updated in the \Sts\Forms and \Sts\Windows config files and the TokenExpiry values are updated in the \K2 smartforms Designer and \K2 smartforms Runtime web config files, so there are four files where they should not have the same value.

When you experience this issue, you have to add the following value to the K2 SmartForms Runtime web.config file under <appSettings>:

<add key="TokenExpiry" value="1800">

This value is specified in seconds and is used as the minimum time a token needs to remain valid before K2 will re-authenticate. This could however prompt a user for credentials when accessing K2 forms.

The minimum value recommendation is 600 seconds.