<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Stroom – session</title>
    <link>/tags/session/</link>
    <description>Recent content in session on Stroom</description>
    <generator>Hugo -- gohugo.io</generator>
    <lastBuildDate>Wed, 29 Jul 2026 00:00:00 +0000</lastBuildDate>
    
	  <atom:link href="/tags/session/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>Docs: Sessions and Tokens</title>
      <link>/docs/user-guide/security/sessions-and-tokens/</link>
      <pubDate>Wed, 29 Jul 2026 00:00:00 +0000</pubDate>
      
      <guid>/docs/user-guide/security/sessions-and-tokens/</guid>
      <description>
        
        
        &lt;p&gt;Signing in to Stroom creates a session, and Stroom issues tokens that are used to prove who a user is, both to Stroom itself and between the nodes of a cluster.
This page describes how sessions and tokens are ended, both by users for themselves and by administrators.&lt;/p&gt;
&lt;h2 id=&#34;ending-your-own-sessions&#34;&gt;Ending Your Own Sessions&lt;/h2&gt;
&lt;p&gt;Any user can end their own sessions other than the one they are currently using, by selecting&lt;/p&gt;





  &lt;div class=&#34;stroom-theme-dark stroom-menu&#34;&gt;
    
    

      

      
      


      

  
  
  &lt;div class=&#34;stroom-menu-item-background&#34; style=&#34;margin-top: 0px;&#34;&gt;
    
    &lt;div class=&#34;stroom-menu-item &#34; &gt;

      &lt;div class=&#34;stroom-menu-item-text&#34;&gt;User
      &lt;/div&gt;
        &lt;div class=&#34;stroom-menu-item-arrow&#34;&gt;
          &lt;span class=&#34;stroom-icon inline-svg-button icon-button  &#34; &gt;
    &lt;span class=&#34;face&#34; title=&#34;Arrow right&#34;&gt;&lt;svg xmlns=&#34;http://www.w3.org/2000/svg&#34; width=&#34;1427.7665&#34; height=&#34;1427.7665&#34; viewBox=&#34;0 0 1427.7665 1427.7665&#34;&gt;&lt;g style=&#34;stroke:currentColor;stroke-width:167.567&#34;&gt;&lt;path d=&#34;m 415.05387,83.70929 c -39.92654,0.4303 -75.41463,48.3887 -40.0468,81.9121 C 567.552,348.69899 760.75555,531.15431 953.73208,713.82391 760.75555,896.49341 567.552,1078.9486 375.00707,1262.0262 c -46.19471,43.7855 28.48812,112.1966 76.0571,67.1681 195.93558,-185.823 392.95261,-370.82479 587.98693,-557.52749 5.6117,-4.8034 10.4633,-10.2473 14.4855,-16.1231 9.643,-12.4844 13.9638,-27.0796 13.6909,-41.7198 0.2729,-14.6402 -4.0479,-29.2354 -13.6909,-41.7198 -4.0222,-5.8758 -8.8738,-11.3198 -14.4855,-16.1231 C 844.01678,469.27821 646.99975,284.27629 451.06417,98.45319 439.91519,87.89979 427.27628,83.57749 415.05387,83.70929 Z&#34;/&gt;&lt;/g&gt;&lt;/svg&gt; &lt;/span&gt;
  &lt;/span&gt;
        &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

      

      
      
        
      


      

  
  
  &lt;div class=&#34;stroom-menu-item-background&#34; style=&#34;margin-top: 7px;&#34;&gt;
    
    &lt;div class=&#34;stroom-menu-item stroom-menu-item-leaf&#34; &gt;

      &lt;div class=&#34;stroom-menu-item-text&#34;&gt;Sign Out Other Sessions
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;/div&gt;



&lt;p&gt;from the main menu.&lt;/p&gt;
&lt;p&gt;This is useful after signing in from a machine that is no longer under their control.
It applies across every browser and device, and across every node in the cluster.&lt;/p&gt;
&lt;p&gt;Completing a password reset also ends all of that user&amp;rsquo;s sessions, including the one being used at the time.
See &lt;a href=&#34;../../docs/user-guide/security/signing-in/&#34;&gt;Signing In&lt;/a&gt;.&lt;/p&gt;
&lt;h2 id=&#34;the-user-access-screen&#34;&gt;The User Access Screen&lt;/h2&gt;
&lt;p&gt;A user holding the &lt;code&gt;Manage Users&lt;/code&gt; or &lt;code&gt;Administrator&lt;/code&gt; &lt;span class=&#34;glossary-link&#34;&gt;
    &lt;a href=&#34;../../docs/glossary/a/glossary-application-permission&#34;&gt;
      &lt;span&gt;Application permission&lt;/span&gt;
      &lt;i class=&#34;glossary-link-icon fas fa-book fa-sm text-primary&#34;&gt;&lt;/i&gt;
    &lt;/a&gt;&lt;span class=&#34;glossary-tooltip&#34;&gt;
      &lt;span class=&#34;glossary-tooltip-title&#34;&gt;Application permission&lt;/span&gt;
      &lt;span class=&#34;glossary-tooltip-summary&#34;&gt;This is a permission that is not specific to a single document. It applies to all documents or is not related to documents in any way.&lt;/span&gt;&lt;span class=&#34;glossary-tooltip-truncated&#34;&gt;Click to see more details...&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; can see and end the access held by other users by selecting&lt;/p&gt;





  &lt;div class=&#34;stroom-theme-dark stroom-menu&#34;&gt;
    
    

      

      
      


      

  
  
  &lt;div class=&#34;stroom-menu-item-background&#34; style=&#34;margin-top: 0px;&#34;&gt;
    
    &lt;div class=&#34;stroom-menu-item &#34; &gt;

      &lt;div class=&#34;stroom-menu-item-text&#34;&gt;Security
      &lt;/div&gt;
        &lt;div class=&#34;stroom-menu-item-arrow&#34;&gt;
          &lt;span class=&#34;stroom-icon inline-svg-button icon-button  &#34; &gt;
    &lt;span class=&#34;face&#34; title=&#34;Arrow right&#34;&gt;&lt;svg xmlns=&#34;http://www.w3.org/2000/svg&#34; width=&#34;1427.7665&#34; height=&#34;1427.7665&#34; viewBox=&#34;0 0 1427.7665 1427.7665&#34;&gt;&lt;g style=&#34;stroke:currentColor;stroke-width:167.567&#34;&gt;&lt;path d=&#34;m 415.05387,83.70929 c -39.92654,0.4303 -75.41463,48.3887 -40.0468,81.9121 C 567.552,348.69899 760.75555,531.15431 953.73208,713.82391 760.75555,896.49341 567.552,1078.9486 375.00707,1262.0262 c -46.19471,43.7855 28.48812,112.1966 76.0571,67.1681 195.93558,-185.823 392.95261,-370.82479 587.98693,-557.52749 5.6117,-4.8034 10.4633,-10.2473 14.4855,-16.1231 9.643,-12.4844 13.9638,-27.0796 13.6909,-41.7198 0.2729,-14.6402 -4.0479,-29.2354 -13.6909,-41.7198 -4.0222,-5.8758 -8.8738,-11.3198 -14.4855,-16.1231 C 844.01678,469.27821 646.99975,284.27629 451.06417,98.45319 439.91519,87.89979 427.27628,83.57749 415.05387,83.70929 Z&#34;/&gt;&lt;/g&gt;&lt;/svg&gt; &lt;/span&gt;
  &lt;/span&gt;
        &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;

      

      
      
        
      


      

  
  
  &lt;div class=&#34;stroom-menu-item-background&#34; style=&#34;margin-top: 7px;&#34;&gt;
    
    &lt;div class=&#34;stroom-menu-item stroom-menu-item-leaf&#34; &gt;

      &lt;div class=&#34;stroom-menu-item-text&#34;&gt;User Access
      &lt;/div&gt;
    &lt;/div&gt;
  &lt;/div&gt;
  &lt;/div&gt;



&lt;p&gt;from the main menu.&lt;/p&gt;
&lt;p&gt;The screen lists users along with how many sessions and tokens each currently holds, and shows the sessions held for the selected user across every node in the cluster.&lt;/p&gt;
&lt;p&gt;Two actions are available.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;End this user&amp;rsquo;s sessions and revoke their tokens&lt;/em&gt; does exactly that, across the whole cluster rather than just the node serving the request.
It does not withdraw their access: the account is untouched and they can sign in again.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;em&gt;Open this user&lt;/em&gt; opens the selected user, where they can be disabled.
This is offered alongside revocation because the two are easily confused and do quite different things, as described below.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;revoking-disabling-and-the-difference-between-them&#34;&gt;Revoking, Disabling, and the Difference between Them&lt;/h2&gt;
&lt;p&gt;Three actions are easy to confuse, and each does something different.
To stop someone using Stroom completely and immediately, you need the last two together.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;th&gt;Ends sessions and tokens&lt;/th&gt;
&lt;th&gt;Prevents signing in again&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;em&gt;End sessions and revoke tokens&lt;/em&gt;, on the User Access screen&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Disable the Stroom &lt;span class=&#34;glossary-link&#34;&gt;
    &lt;a href=&#34;../../docs/glossary/u/glossary-user&#34;&gt;
      &lt;span&gt;User&lt;/span&gt;
      &lt;i class=&#34;glossary-link-icon fas fa-book fa-sm text-primary&#34;&gt;&lt;/i&gt;
    &lt;/a&gt;&lt;span class=&#34;glossary-tooltip&#34;&gt;
      &lt;span class=&#34;glossary-tooltip-title&#34;&gt;User&lt;/span&gt;
      &lt;span class=&#34;glossary-tooltip-summary&#34;&gt;Refers to a Stroom User that is linked to either an &lt;em&gt;Account&lt;/em&gt; in Stroom&amp;rsquo;s internal &lt;em&gt;Identity Provider&lt;/em&gt; or a user account in an external &lt;em&gt;Identity Provider&lt;/em&gt;. A Stroom User is primarily concerned with authorisation (i.e. application/document permissions and group memberships) rather than authentication, though disabling one also refuses that person at authentication and ends any access they currently hold.&lt;/span&gt;&lt;span class=&#34;glossary-tooltip-truncated&#34;&gt;Click to see more details...&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, on the Users screen&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Disable the account, on the Manage Accounts screen&lt;/td&gt;
&lt;td&gt;No&lt;/td&gt;
&lt;td&gt;Yes&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Ending sessions and revoking tokens does both of those things and no more.
It deliberately leaves the account alone, so the password still works and the user can sign in again.
Every token revoked this way is dead permanently, but their access as a whole is not withdrawn.
It forces re-authentication rather than shutting anybody out, which makes it the right action when you want to be certain that whoever is currently signed in has to prove who they are again.&lt;/p&gt;
&lt;p&gt;Disabling the Stroom &lt;span class=&#34;glossary-link&#34;&gt;
    &lt;a href=&#34;../../docs/glossary/u/glossary-user&#34;&gt;
      &lt;span&gt;User&lt;/span&gt;
      &lt;i class=&#34;glossary-link-icon fas fa-book fa-sm text-primary&#34;&gt;&lt;/i&gt;
    &lt;/a&gt;&lt;span class=&#34;glossary-tooltip&#34;&gt;
      &lt;span class=&#34;glossary-tooltip-title&#34;&gt;User&lt;/span&gt;
      &lt;span class=&#34;glossary-tooltip-summary&#34;&gt;Refers to a Stroom User that is linked to either an &lt;em&gt;Account&lt;/em&gt; in Stroom&amp;rsquo;s internal &lt;em&gt;Identity Provider&lt;/em&gt; or a user account in an external &lt;em&gt;Identity Provider&lt;/em&gt;. A Stroom User is primarily concerned with authorisation (i.e. application/document permissions and group memberships) rather than authentication, though disabling one also refuses that person at authentication and ends any access they currently hold.&lt;/span&gt;&lt;span class=&#34;glossary-tooltip-truncated&#34;&gt;Click to see more details...&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; does everything the above does, and additionally refuses them at authentication, whether they are signing in interactively or presenting a token.
This is the action to take when someone must be stopped, and is what the &lt;em&gt;Open this user&lt;/em&gt; button on the User Access screen is for.&lt;/p&gt;
&lt;p&gt;Disabling the account, which only applies when Stroom is its own &lt;span class=&#34;glossary-link&#34;&gt;
    &lt;a href=&#34;../../docs/glossary/i/glossary-idp&#34;&gt;
      &lt;span&gt;Identity Provider (IDP)&lt;/span&gt;
      &lt;i class=&#34;glossary-link-icon fas fa-book fa-sm text-primary&#34;&gt;&lt;/i&gt;
    &lt;/a&gt;&lt;span class=&#34;glossary-tooltip&#34;&gt;
      &lt;span class=&#34;glossary-tooltip-title&#34;&gt;Identity Provider (IDP)&lt;/span&gt;
      &lt;span class=&#34;glossary-tooltip-summary&#34;&gt;An &lt;strong&gt;Id&lt;/strong&gt;entity &lt;strong&gt;P&lt;/strong&gt;rovider is a system or service that can authenticate a user and assert their identity. &lt;em&gt;Identity providers&lt;/em&gt; can support single sign on (SSO), which allows the user to sign in once to the &lt;em&gt;Identity Provider&lt;/em&gt; so they are then authenticated to all systems using that IDP.&lt;/span&gt;&lt;span class=&#34;glossary-tooltip-truncated&#34;&gt;Click to see more details...&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, stops them authenticating at all.
It does not disturb a session that is already running.
See &lt;a href=&#34;../../docs/user-guide/security/user-accounts/&#34;&gt;User Accounts&lt;/a&gt;.&lt;/p&gt;

&lt;div class=&#34;alert alert-warning&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;Warning&lt;/h4&gt;


    &lt;p&gt;This matters most when Stroom is configured to use an external &lt;span class=&#34;glossary-link&#34;&gt;
&lt;a href=&#34;../../docs/glossary/i/glossary-idp&#34;&gt;
&lt;span&gt;Identity Provider (IDP)&lt;/span&gt;
&lt;i class=&#34;glossary-link-icon fas fa-book fa-sm text-primary&#34;&gt;&lt;/i&gt;
&lt;/a&gt;&lt;span class=&#34;glossary-tooltip&#34;&gt;
&lt;span class=&#34;glossary-tooltip-title&#34;&gt;Identity Provider (IDP)&lt;/span&gt;
&lt;span class=&#34;glossary-tooltip-summary&#34;&gt;An &lt;strong&gt;Id&lt;/strong&gt;entity &lt;strong&gt;P&lt;/strong&gt;rovider is a system or service that can authenticate a user and assert their identity. &lt;em&gt;Identity providers&lt;/em&gt; can support single sign on (SSO), which allows the user to sign in once to the &lt;em&gt;Identity Provider&lt;/em&gt; so they are then authenticated to all systems using that IDP.&lt;/span&gt;&lt;span class=&#34;glossary-tooltip-truncated&#34;&gt;Click to see more details…&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;.
Revoking a user’s sessions and tokens does not touch the session they hold with that provider, so their next request is likely to sign them straight back in automatically, without their even being asked for a password.&lt;/p&gt;
&lt;p&gt;To prevent access when using an external &lt;span class=&#34;glossary-link&#34;&gt;
&lt;a href=&#34;../../docs/glossary/i/glossary-idp&#34;&gt;
&lt;span&gt;Identity Provider (IDP)&lt;/span&gt;
&lt;i class=&#34;glossary-link-icon fas fa-book fa-sm text-primary&#34;&gt;&lt;/i&gt;
&lt;/a&gt;&lt;span class=&#34;glossary-tooltip&#34;&gt;
&lt;span class=&#34;glossary-tooltip-title&#34;&gt;Identity Provider (IDP)&lt;/span&gt;
&lt;span class=&#34;glossary-tooltip-summary&#34;&gt;An &lt;strong&gt;Id&lt;/strong&gt;entity &lt;strong&gt;P&lt;/strong&gt;rovider is a system or service that can authenticate a user and assert their identity. &lt;em&gt;Identity providers&lt;/em&gt; can support single sign on (SSO), which allows the user to sign in once to the &lt;em&gt;Identity Provider&lt;/em&gt; so they are then authenticated to all systems using that IDP.&lt;/span&gt;&lt;span class=&#34;glossary-tooltip-truncated&#34;&gt;Click to see more details…&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;, disable the account at that provider, in Stroom, or both.&lt;/p&gt;


&lt;/div&gt;


&lt;h2 id=&#34;token-lifetimes&#34;&gt;Token Lifetimes&lt;/h2&gt;
&lt;p&gt;These are the defaults, and are configurable under &lt;code&gt;stroom.security.identity.token.&lt;/code&gt;.&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Token&lt;/th&gt;
&lt;th&gt;Property&lt;/th&gt;
&lt;th&gt;Default&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Access token&lt;/td&gt;
&lt;td&gt;&lt;code&gt;accessTokenExpiration&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;60 minutes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Refresh token&lt;/td&gt;
&lt;td&gt;&lt;code&gt;refreshTokenExpiration&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;30 days&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Password reset link&lt;/td&gt;
&lt;td&gt;&lt;code&gt;emailResetTokenExpiration&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;10 minutes&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;API key&lt;/td&gt;
&lt;td&gt;&lt;code&gt;defaultApiKeyExpiration&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;365 days&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Refresh tokens can be used only once, and each use issues a replacement.
If a refresh token is presented a second time, which suggests it has been copied, Stroom withdraws that token and every token descended from it.&lt;/p&gt;

&lt;div class=&#34;alert alert-primary&#34; role=&#34;alert&#34;&gt;
&lt;h4 class=&#34;alert-heading&#34;&gt;See Also&lt;/h4&gt;
&lt;div class=&#34;alert-content&#34;&gt;
  
  &lt;p&gt;&lt;a href=&#34;../../docs/user-guide/security/user-accounts/&#34;&gt;User Accounts&lt;/a&gt;
&lt;a href=&#34;../../docs/user-guide/security/signing-in/&#34;&gt;Signing In&lt;/a&gt;
&lt;a href=&#34;../../docs/user-guide/security/signing-keys/&#34;&gt;Signing Keys&lt;/a&gt;&lt;/p&gt;

&lt;/div&gt;
&lt;/div&gt;


      </description>
    </item>
    
  </channel>
</rss>
