4 データベース接続の設定
4.4 データベース接続の詳細設定
4.4.2 Appeon セキュリティ
次に示すスクリプトの例では、データベース接続のため、初期化ファイルApp.INI から値を読み込んでトランザクションオブジェクトに設定しています。この方法は 前述のスクリプトと比較してより高い安全性があります。
sqlca.DBMS = ProfileString(App.INI, "database",&
"dbms", "")
sqlca.database = ProfileString(App.INI,&
"database", "database", "")
sqlca.userid = ProfileString(App.INI, "database",&
"userid", "")
sqlca.dbpass = ProfileString(App.INI, "database",&
"dbpass", "") ...
Appeon Webユーザ名を取得できます。詳細な情報は、Appeonヘルプの「Appeonワ ークアラウンドガイド|AppeonワークアラウンドPBL リファレンス|
AppeonExtFuncs オブジェクト」を参照してください。
Pure-JavaScript 配布に対しては、Appeon Webユーザ名とパスワードを取得する方法
がもう1つあります。これは、Appeon グローバル変数appeon_user_name と
appeon_user_pin を使用することです。Appeonヘルプの「Appeonワークアラウンド ガイド|一般的なワークアラウンドテクニック|Appeon拡張機能の使い方|
Appeonグローバル変数appeon_user_nameとappeon_user_pin」を参照してください。
4.4.2.b データベース オーディット
クライアントサーバ/アーキテクチャでは、データベースのAUDITINGオプションを 有効にすると、すべてのログインユーザの記録を簡単に取ることができます。
Appeon によって配布されたWebアプリケーションは3階層アーキテクチャで実行
されます。クライアントからデータベース接続が要求されると、Appeon Serverはそ の呼び出しのユーザ IDとパスワードの正当性を検証します。この検証をパスすると、
Appeon Serverが一定のユーザIDとパスワードを使用してデータベースサーバに接
続し、結果としてデータベースに記録されるユーザIDとパスワードはクライアント から呼び出しを行ったユーザIDとパスワードと異なることになります。
EAServerコネクション キャッシュから ユーザ ID/パスワードをデータベースに渡す
Sybase ASEデータベースを使用する場合、SSAコネクションキャッシュプロパテ
ィを使用できます。このプロパティは、データベースのIDを、エンドユーザがサ ーバをアクセスするために使用したユーザID/パスワードに変更します。Sybaseデー タベースを使用する場合は、コネクションキャッシュのpropsファイル内にこのプ ロパティを設定できます。このプロパティは他のデータベースタイプを使用すると きは使用できません。
以下に示す情報は、EAServer Administrator Guide Appendix B - Connection Cache
Propertiesから取得したものです。詳細についてはEAServerのドキュメントを参照
してください。
コネクションキャッシュプロパティcom.sybase.jaguar.conncache.ssaは、この機能を サポートするデータベース接続のset-proxyサポートを有効にします。デフォルトで は、このプロパティはfalseに設定され、set-proxyサポートを無効にします。
この機能は、次のコマンドを認識するあらゆるデータベースで使用できます:
set session authorization "login-name"
プロキシ サポートが有効の場合、キャッシュから検索されたコネクションは、
EAServerクライアントに関連付けられたユーザ名に対しプロキシとしての動作を設
定します。プロキシに他のユーザ名を設定するためには、コンポーネント内でJava 言語のJCMCache.getProxyConnection() またはC言語の JagCmGetProxyConnection()を 使用します。
キャッシュ プロパティ(com.sybase.jaguar.conncache.username)に指定されたユーザ名 は、データベースのset-proxy権限を持ち、キャッシュを使用して供給されます。
このプロパティは、EAServer Manager内で、[Connection Cache Properties] ダイアログ の [All Properties]タブを使用して設定します。
データベース オーディット機能の再構成
データベース オーディット機能の対策として、ユーザIDを新しいフィールドとし てデータベースに追加することによって、データベースに保存されるオーディット 情報を再構築できます。
クライアント/サーバのアプリケーションでは、ユーザIDとパスワードの組み合わ せによりデータベースへの複数の接続を同時に持たないことを確認する必要があり ます。
ユーザがデータベースとの接続を望むたびに、そのユーザIDを含む呼び出しがデー タベース サーバに送られるように、クライアント/サーバ アプリケーションに必要 なコードを追加します。たとえば、データウィンドウのカラムとしてまたはストア ド プロシージャにユーザIDを送る場合、クライアントからの呼出しに含まれるユ ーザID情報はデータベース サーバのユーザIDフィールドに保存されます。