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

OAuth 経由で Liferay API にリクエストを行う Client Extension を使用しているとき、Web Server がベーシック認証を要求し続ける

投稿者

Ricardo Couso

knowledge-article-header-disclaimer-how-to

knowledge-article-header-disclaimer

legacy-article

learn-legacy-article-disclaimer-text

問題

  • Liferay 環境の前の Web サーバーは Basic Auth で設定されています。
  • Liferay は OAuth を使用して Liferay API にリクエストを行う Client Extension (CX) を使用します。
  • CXを使用するページがロードされると、ウェブサーバーは基本的な認証情報を一度提供した後でも要求し続ける。

環境

  • 四半期リリース 2024.Q1

解像度

  • ウェブサーバーがBasic Authで設定されている場合、最初のリクエストは認証情報の入力を求める。 それ以降のものは、再尋問を避けるために、トークン付きのBasicタイプのヘッダーAuthorizationを含む。
  • OAuth を使用した Liferay API へのリクエストは、Bearer タイプの Authorization で行われます。
  • ヘッダーAuthorizationで使用できるトークンは1つだけであり、Bearerが使用されるので、Webサーバーは認証情報を要求する。
  • この問題を避けるために、CXからのリクエストはLiferay APIへのものなので、OAuthを使う必要がないことに注意してください(認証サーバーとリソースサーバーは同じです)。 代わりに、この例のようにapiメソッドを使うこともできる:
    api('o/headless-admin-user/v1.0/my-user-account')
        .then((response) = response.json())
            .then((response) = {

追加情報

did-this-article-resolve-your-issue

legacy-knowledge-base