7.4.2 バックエンドシステムの対応(DB連携)
DB連携の場合に作成するページを認証方式ごとに説明します。なお,DB連携の場合,バックエンドシステムとの認証方式はフォーム認証・ベーシック認証となります。
- <この項の構成>
- (1) フォーム認証
- (2) ベーシック認証
(1) フォーム認証
フォーム認証の場合に作成するページを次に示します。
- サマリページ
- サマリ画面を出力します。サマリ画面内のバックエンドシステムへのリンクはURL表記を絶対パスで記述し,リクエスト中にポータルのセッションIDなどの認証情報を記述します。
- ログインページ
- リクエスト中に記述しているポータルの認証情報をキーに,バックエンドシステムのユーザID,およびパスワードをDBから取得して,ユーザ認証を行います。認証が完了した場合,リクエスト先へフォワード,またはリダイレクトします。
(2) ベーシック認証
ベーシック認証の場合に作成するページを次に示します。
- サマリページ
- サマリ画面を出力します。サマリ画面内のバックエンドシステムへのリンクはURL表記を絶対パスで記述し,リクエスト中にポータルのセッションIDなどの認証情報を記述します。
- HTTPヘッダ変更モジュール
- ベーシック認証の場合,リクエスト中に認証用のAuthorizationヘッダを付ける必要があります。ヘッダを付けるため,次のどちらかのモジュールを設置します。
- Webサーバの前段にAuthorizationヘッダを付けるGatewayを設置する
- WebサーバにAuthorizationヘッダを付ける機能拡張モジュールを追加する
- このモジュールでの処理を説明します。
- 初回リクエスト時は,リクエスト中に記述されているポータルの認証情報をキーに,バックエンドシステムのユーザIDとパスワードを認証情報DBから取得し,Authorizationヘッダを付けます。
- 応答返却時には,ポータルの認証情報をCookieとしてクライアントに設定します。2回目以降のリクエストでは,Cookieにある認証情報を参照してバックエンドシステムへシングルサインオンを行います。