WebLogin - Webアプリケーションでのログイン

Webアプリケーションにおけるログインを処理します。
このコンポーネントではセッションにログイン情報を関連づけるだけで認証機能自体はありません。

■ストリーム情報

入力フォーマットすべて
接続数1
説明すべてのストリームを入力できます。
出力フォーマットすべて
説明 入力ストリームをそのまま出力します。

■コンポーネントプロパティ

名前プロパティ型マッピング説明
ユーザー名string入力&出力 ログインユーザー名を指定します。
セッションライフタイムint入力&出力 セッションの有効時間を秒単位で指定します。
空または0以下の数字が指定された場合はセッションライフタイムは変更されません。
ログ出力boolean入力&出力 システムログ(FlowService.log)にメッセージ「ユーザーがログインしました」を出力するかどうかを指定します。
はい [true] - 出力します。
いいえ [false] - 出力しません。
権限category入力&出力 ログインユーザーに対して付与する権限を指定します。
詳しくは、下記トピック「権限の使用方法」を参照してください。

■トランザクション処理

コミット何もしません。
ロールバック何もしません。

■エラー処理

このコンポーネントがエラーを発生することはありません。

■WebLoginコンポーネントの使用方法

本コンポーネントはWebアプリケーションにおけるログイン状態を管理するためにのみ使用されます。
通常はログイン画面から実行されるフロー内に組み込まれ、その内容はほとんどの場合左図のような形になります。


1、ユーザー名とパスワードをパラメーターとして受け取り、

2、何らかの方法でそのユーザー名とパスワードを検証し、

3-1、正しければログイン状態にして次画面へ移動

3-2、正しくなければログイン画面に戻る


ログイン状態の場合にしか実行できないフローを作成するために必要な作業は

だけです。

■セッションについて

セッションとはWebアプリケーションにおける同一ブラウザからの連続するアクセスを識別するものです。
セッションが有効な間はセッション変数に以前にアクセスした情報を保存し、後から取り出すことができるなど Webアプリケーションの構築ではなくてはならないものとなってます。
(本コンポーネントもセッションを利用してログイン状態を保持しています。)

セッションはWebブラウザが最初にフローサービスのWebサーバーにアクセスした時に生成され、 以降同一ブラウザからのアクセスは同じセッションIDとなりますが、同一セッションIDが使用される期間と セッションの有効期間は同じではありません。

具体的には以下の場合にセッションは無効化され、それ以前に保持していた情報はクリアされます。

Webアプリケーションではセキュリティ確保のため一定時間アクセスがない場合はログイン状態を解除するのが一般的ですが、 本コンポーネントでセッションライフタイムの時間を指定することでタイムアウトまでの時間を制御することができます。
(セッションライフタイムを指定しなかった場合は最初にアクセスしたURLで生成されたセッションのライフタイムが維持されます。)

■権限の使用方法

権限は任意の名前を付けて複数登録することができます。
例えば、本コンポーネントで以下のような権限を登録します。

権限名付与する説明
UserAdminはいユーザー管理権限
MasterAdminいいえマスタ管理権限

実行時にこれらの権限を操作するには、本コンポーネントの前にMapperコンポーネントを配置し、権限を付与する場合には「true」、付与しない場合には「false」をマッピングします。

本コンポーネントでログイン後、Webブラウザから別のフローを実行する場合にそのフローのHttpStartコンポーネントで「WebLoginで必要な権限」プロパティに「UserAdmin」を指定しておくと、ログインユーザーにUserAdmin権限がない場合には「権限がない」というエラーになります。