20.4.3.4 HTTPヘッダー変数

Webサーバーによって設定されたHTTPヘッダー変数にユーザー名を格納することによって、ユーザーを外部認証します。

ノート:

開発環境のセキュリティとパフォーマンスを確保するために、この機能はOracle Cloudで実行されているOracle APEXインスタンスでは使用できません。

20.4.3.4.1 HTTPヘッダー変数について

HTTPヘッダー変数では、ヘッダー変数を使用したユーザーの識別、およびOracle APEXのユーザー・セッションの作成がサポートされています。会社で、アプリケーションおよびテクノロジ全体でシングル・サインオンを実現するOracle Access Managerのような集中型Web認証ソリューションを使用する場合は、HTTPヘッダー変数認証スキームを使用します。これらのシステムによってユーザー資格証明検証が実行され、"REMOTE_USER" (デフォルト)などのHTTPヘッダー変数を使用してAPEXにユーザー名が渡されます。

20.4.3.4.2 HTTPヘッダー変数の設定

HTTPヘッダー変数を設定するには:

  1. ワークスペースのホームページで、「アプリケーション・ビルダー」アイコンをクリックします。
  2. アプリケーションを選択します。
  3. アプリケーションのホームページで、「共有コンポーネント」をクリックします。

    共有コンポーネント・ページが表示されます。

  4. 「セキュリティ」で、「認証スキーム」を選択します。
  5. 認証スキーム・ページで、「作成」をクリックします。
  6. 「ギャラリからの事前構成済スキームに基づく」を選択し、「次へ」をクリックします。
  7. 「名前」で、次の項目を指定します。
    1. 名前: 他のアプリケーション開発者が認証スキームを参照するための名前を入力します。
    2. スキーム・タイプ: 「HTTPヘッダー変数」を選択します。
  8. 「設定」で、次の項目を指定します。

    特定のフィールドについてさらに学習するには、フィールドレベル・ヘルプを参照してください。

    1. HTTPヘッダー変数名: ユーザー名を含むHTTPヘッダー変数の名前を指定します。指定しない場合、REMOTE_USERが使用されます。HTTPヘッダー変数は、Webサーバーによって設定される変数です。
    2. ユーザー名が空の場合のアクション: HTTPヘッダー変数に格納されているユーザー名が空の場合に実行するアクションを指定します。オプションは次のとおりです。
      • 組込みURLにリダイレクト: Webサーバーによるログインを開始します。この組込みURLは、コール時に強制的にログインするために、Webサーバーによって保護されるように設定する必要があります。ログイン後、Webサーバーは、認証スキームで使用できるように、検証されたユーザー名をHTTPヘッダー変数に格納する必要があります。組込みURLは次のとおりです。

        /apex/apex_authentication.callback

        ここで、接頭辞/apex/はサーバー構成によって異なります。

      • URLにリダイレクト: 外部サーバーでログインを開始し、HTTPヘッダー変数に検証済ユーザー名を設定します。アプリケーションで認証を完了するには、#CALLBACK#プレースホルダによって生成されたURLを使用して外部サーバーがアプリケーションにリダイレクトする必要があります。

      • エラー表示: 指定されたエラー・メッセージが表示され、アプリケーションでログインは実行されません。

    3. ユーザー名の検証: HTTPヘッダー変数に格納されているユーザー名が検証される頻度を指定します。オプションは次のとおりです。
      • リクエストごと: ログインがWebサーバーによって実行されると、CGI変数は常に設定されます。ユーザー名が現在のAPEXセッションに格納されているものと同じでない場合、セッションは無効になり、新しいログインが開始されます。ログアウトまたはユーザー名の変更が検出されるため、これは最も安全なオプションです。

      • ログイン後: Webサーバーがログインを実行し、コールバックをコールしてアプリケーションでの認証を完了した後にのみ、APEXセッションでユーザー名を検証して格納します。コールバックについては、「ユーザー名が空の場合のアクション」構成を参照してください。

    4. SSOサーバーのログアウトURL: 認証スキームがOracle Access Managerなどのサーバーに基づいている場合、この属性を使用して、中央のシングル・サインオン・サーバーからログアウトするURLを指定できます。置換パラメータ%POST_LOGOUT_URL%は、アプリケーションのログイン・ページのエンコードされたURLに置換されます。

      Oracle Access ManagerベースのSSOの例:

      /oamsso/logout.html?end_url=%POST_LOGOUT_URL%

  9. 「認証スキームの作成」をクリックします。