Confluence のセッション タイムアウトを調整する方法

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

プラットフォームについて: Server および Data Center のみ。この記事は、Server および Data Center プラットフォームのアトラシアン製品にのみ適用されます。

Support for Server* products ended on February 15th 2024. If you are running a Server product, you can visit the Atlassian Server end of support announcement to review your migration options.

*Fisheye および Crucible は除く

要約

Confluence には、デフォルトで 2 つのセッション cookie クッキーがあります。

  • JSESSIONID: Tomcat が使用および管理します。
    • デフォルトでは、これがセッション cookie と見なされます。

      Session cookies are deleted when the current session ends. The browser defines when the "current session" ends, and some browsers use session restoring when restarting. This can cause session cookies to last indefinitely.

  • seraph.confluence: Confluence アプリケーションが使用し、Seraph Framework を通じて管理されます。
    • この cookie は、ログイン時にユーザーによってログイン情報を記憶オプションが選択されているときに使用されます。
    • このオプションはクラスター化された Confluence Data Center では強制されており、ユーザーがログイン ページで目にすることはありません。これを変更したい場合は「Confluence で「ログイン情報を記憶する」機能を設定する方法」をご参照ください。

    • このオプションは、「SSO for Atlassian Server and Data Center App」を通じて SSO をデフォルト設定で設定する場合にも適用されます。
    • デフォルトでは、これは永続的な cookieと見なされます。

      Permanent cookies are deleted at a date specified by the Expires attribute, or after a period of time specified by the Max-Age attribute


seraph.confluence が設定されておらず、セッションを識別する唯一の cookie が JSESSIONID の場合、セッションは次の場合に失われます (ユーザーは再認証が必要)。

  • ユーザーがブラウザを閉じた
  • アプリケーション ノードが再起動された
  • クラスター化された Data Center 上の別のアプリケーション ノードにユーザーが送られた
  • ユーザーがログアウトした
  • ユーザーが 60 分間アイドル状態である
    • これは Confluence エディターでの作業には適用されません。つまり、ユーザーがエディター上で 60 分を超えてアイドル状態になってもセッションは失われません。


seraph.confluence が設定されている場合、デフォルトの max-age は 14 日間 (1209600 秒) に設定され、ブラウザーが Cookie を自動的に削除し、上記で詳しく説明したルールが適用されます。ただし、この cookie が有効である間は JSESSIONID よりも優先されるため、次の場合にユーザーはセッションを失うことはありません

  • ブラウザが閉じられた
  • アプリケーション ノードが再起動された
  • クラスター化された Data Center 上の別のアプリケーション ノードにユーザーが送られた
  • ユーザーがブラウザでアイドル状態である


Confluence 管理者がユーザーのセッション タイムアウトを調整する必要がある場合、これら 2 つのセッション cookie の失効時間を調整します。

変更は次の設定ファイルに適用できます。

  • <confluence-install>/conf/web.xml
    • ここで、Web サーバーでグローバルに割り当てられる Tomcat セッション クッキーが管理されます。

  • <confluence-install>/confluence/WEB-INF/web.xml
    • ここで、Confluence アプリケーションに割り当てられる Tomcat セッション cookie (JSESSIONID) が管理されます。
    • ここで調整された値は前述のファイルよりも優先されます。
  • <confluence-install>/confluence/WEB-INF/classes/seraph-config.xml
    • このファイルで調整された値は、 seraph.confluence cookie に適用されます。
    • これは、Confluence がクラスター化されている場合の主な設定です。これを設定する必要がある場合は「Confluence で「ログイン情報を記憶する」機能を設定する方法」をご参照ください。


環境

Confluence Data Center および Server

ソリューション

アイドル タイムアウトを変更する

ユーザーが 5 時間アイドル状態になったときにセッションを無効にしたいとします (これは単なる例であり、必要に応じて値を変更する必要があります)。ただし、[記憶する] オプションがオンになっている場合を除きます。その場合、修正する必要があるファイルは <confluence-install>/confluence/WEB-INF/web.xml のみです。


  1. <confluence-install>/confluence/WEB-INF/web.xml を編集し、次のようなブロックを検索してください。これがデフォルトの設定です。

        <session-config>
            <session-timeout>60</session-timeout>
            <tracking-mode>COOKIE</tracking-mode>
        </session-config>
  2. 構成を次のように調整します。セッションのタイムアウトは分単位で設定されます。

        <session-config>
            <session-timeout>300</session-timeout>
            <tracking-mode>COOKIE</tracking-mode>
        </session-config>
  3. Confluence を再起動して変更を適用します。

Confluence をクラスター化している場合は、上記の変更をすべてのノードに適用する必要があります。
ローリング リスタートで良いため、完全なダウンタイムは発生しません。

remember me cookie の有効期間を変更する

seraph.confluence cookie の有効期間を 2 日間に変更したいとします (これは単なる例であり、値は必要に応じて変更する必要があります)。その場合、修正する必要があるファイルは <confluence-install>/confluence/WEB-INF/classes/seraph-config.xml のみです。
通常、これはセッション タイムアウトを変更する必要があるときに変更する構成です。


  1. <confluence-install>/confluence/WEB-INF/classes/seraph-config.xml を編集し、以下の初期化パラメータを追加します。

            <!-- session-timeout -->
            <init-param>
                <param-name>autologin.cookie.age</param-name>
                <param-value>172800</param-value>
            </init-param>

    デフォルトでは、autologin.cookie.age パラメーターはこのファイルに設定されていません。以前に変更を加えた場合は、それを検索してそこで値を変更することをお勧めします。
    上記の構成ブロックは、以下のように <parameters> タグに含める必要があります。


  2. Confluence を再起動して変更を適用します。


Confluence をクラスター化している場合は、上記の変更をすべてのノードに適用する必要があります。
ローリング リスタートで良いため、完全なダウンタイムは発生しません。

認証後、一定時間経過後にユーザーのログアウトを強制する

厳格なセキュリティ ポリシーがあり、ユーザーがアイドル状態であるかどうかに関係なく、認証後 8 時間 (これは単なる例であり、値は必要に応じて変更する必要があります) でユーザー セッションを期限切れにする必要があるとします。
これにより、ユーザーは Confluence エディターでアクティブに作業している場合でもログアウトされます。これは場合によっては望ましくない動作となるため、このオプションを選択するときは慎重に行う必要があります。
このオプションは、上記の両方の解決策の組み合わせでは不十分な場合にのみ選択できます。

各ファイルで推奨される構成変更です。


  1. <confluence-install>/conf/web.xml を編集し、次のようなブロックを検索してください。これがデフォルトの設定です。

        <session-config>
            <session-timeout>30</session-timeout>
        </session-config>
  2. 構成を次のように調整します。

        <session-config>
            <session-timeout>480</session-timeout>
            <tracking-mode>COOKIE</tracking-mode>
            <cookie-config> 
              <max-age>28800</max-age> 
            </cookie-config>
        </session-config>
    • session-timeout は分単位で設定され、max-age は秒単位で設定されます。
    • max-ageJSESSIONID に追加すると、永続的 cookie に変わります。
  3. <confluence-install>/confluence/WEB-INF/web.xml を編集し、次のようなブロックを検索してください。これがデフォルトの設定です。

        <session-config>
            <session-timeout>60</session-timeout>
            <tracking-mode>COOKIE</tracking-mode>
        </session-config>
  4. 構成を次のように調整します。

        <session-config>
            <session-timeout>480</session-timeout>
            <tracking-mode>COOKIE</tracking-mode>
            <cookie-config> 
              <max-age>28800</max-age> 
            </cookie-config>
        </session-config>
  5. <confluence-install>/confluence/WEB-INF/classes/seraph-config.xml を編集し、以下の初期化パラメータを追加します。

            <!-- session-timeout -->
            <init-param>
                <param-name>autologin.cookie.age</param-name>
                <param-value>28800</param-value>
            </init-param>

    デフォルトでは、autologin.cookie.age パラメーターはこのファイルに設定されていません。以前に変更を加えた場合は、それを検索してそこで値を変更することをお勧めします。
    上記の構成ブロックは、以下のように <parameters> タグに含める必要があります。


  6. Confluence を再起動して変更を適用します。

Confluence をクラスター化している場合は、上記の変更をすべてのノードに適用する必要があります。
ローリング リスタートで良いため、完全なダウンタイムは発生しません。

参考資料

Confluence のクッキー

HTTP authentication with Seraph

HTTP Cookie - Wikipedia

HTTP cookies を使用する - Mozilla

Confluence で「ログイン情報を記憶する」機能を設定する方法



最終更新日 2023 年 9 月 28 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.