legacy-knowledge-base
公開されました Jun. 30, 2025

LiferayのAuthトークンがページソースに表示されているので、非表示にする必要がある。

written-by

Amit Tiwari

How To articles are not official guidelines or officially supported documentation. They are community-contributed content and may not always reflect the latest updates to Liferay DXP. We welcome your feedback to improve How To articles!

While we make every effort to ensure this Knowledge Base is accurate, it may not always reflect the most recent updates or official guidelines.We appreciate your understanding and encourage you to reach out with any feedback or concerns.

legacy-article

learn-legacy-article-disclaimer-text

問題

  • burp suiteツールを使用してトラフィックを傍受する場合、Liferay Authトークンがページソースで見えるため、ユーザーから見て脆弱な環境となる可能性があります。

Environment

  • Liferay DXP 7.0+

解決策

  • この観測された動作は予想されるものであり、セキュリティ上のリスクはありません。 その理由は以下の通りです:Liferay Auth Token は 認証された REST/JSONWS コールを Liferay に戻すのに必要なので、隠すことはできない。 その仕組みはこうです:
    1. ブラウザはLiferayのインスタンスを呼び出します。
    2. アプリケーションサーバーは、新しいHttpSessionを作成し、そこにp_authトークン値を格納します。
    3. Liferay は p_auth トークンをブラウザに返し、 認証された REST/JSONWS 呼び出しを自分の Liferay に戻すことができます。 LiferayがAPIアクセスや部分的なページレンダリングなどのために依存するものです。
    4. これらの呼び出しがLiferayに到達すると、p_authトークンの値がHttpSessionの値と比較されます。
    5. トークン値が一致しない場合、エラーが返されます(403または404のいずれか)。
    6. トークンが一致した場合、サービスコールは実行され、要求されたデータが返されます。
  • ここで重要なのは、HttpSessionを作成するアプリケーションサーバーの役割です。 Liferayの各新しいブラウザセッションは、アプリケーションサーバーが着信リクエストを既存のHttpSessionに接続するために使用するユニークなJSESSIONID値を取得し、初回アクセスのために新しいHttpSesssionが作成され、JSESSIONIDブラウザセッションクッキーが返されます。 JSESSIONIDクッキーはHttpOnlyです。つまり、ブラウザのスクリプト 、クッキーを見たり、不正な方法(誰かのp_authトークン値を使ってバックエンドにREST/JSONWSコールを行うなど)で使用することはできません。 つまり、他人のp_authトークンを使用する悪者は、サーバー側で新しいHttpSessionを取得し、それは受信したトークンと同じp_auth値を持たないので、これはセキュリティリスクではないことが確認されます。
did-this-article-resolve-your-issue

legacy-knowledge-base