JP4718662B2 - コンピュータシステム - Google Patents
コンピュータシステム Download PDFInfo
- Publication number
- JP4718662B2 JP4718662B2 JP2000085267A JP2000085267A JP4718662B2 JP 4718662 B2 JP4718662 B2 JP 4718662B2 JP 2000085267 A JP2000085267 A JP 2000085267A JP 2000085267 A JP2000085267 A JP 2000085267A JP 4718662 B2 JP4718662 B2 JP 4718662B2
- Authority
- JP
- Japan
- Prior art keywords
- name
- function
- user
- user type
- application program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Storage Device Security (AREA)
- Digital Computer Display Output (AREA)
Description
【発明の属する技術分野】
本発明は、対話形式の操作によりアプリケーションプログラムを実行するコンピュータシステムに係り、特に実装するアプリケーションプログラムの構成方式に関する。
【0002】
【従来の技術】
対話形式の操作によりアプリケーションプログラムを実行するコンピュータシステムでは、利用者のログイン名に対応して利用できる機能を制限する方法が広く採用されている。このログイン名に対応して各機能の使用の許可/禁止を設定する場合、従来では、まとまった機能の集合体を単位として使用の許可/禁止を設定する場合が多かった。
【0003】
しかし、最近は、機能の多様化やGUIの進歩などにより、単一機能毎に許可/禁止の設定が必要になるとともに、これらの設定を運用中に自由に追加・変更したいという要求が高まってきている。
【0004】
例えば、通常の利用者にはデータベースの参照・更新の双方の操作を許す一方で、トレーニングモードでの利用者には、データベースのデータ参照及び画面上のみでのデータ更新の操作は許すが、データベースヘの書き込みは禁止するなどの事例がある。
【0005】
また、GUIに関連する事項では、例えば対象の削除機能は、ドラッグ&ドロップ形式による指示,プルダウンメニュー形式による指示,ポップアップメニュー形式による指示により実現される。このうち、プルダウンメニューやポップアップメニューでは、表示される「削除」のメニューをカスケードすることで操作を禁止することが行われている。なお、カスケードとは、文字の色をメニューの背景色と同じにして選択できないようにすることである。
【0006】
【発明が解決しようとする課題】
しかし、こうした要求をアプリケーションプログラム側で実現するとすれば、アプリケーションプログラム中に利用者を識別し、小さな機能単位に使用の許可/禁止を判定する制御部分を埋め込まなければならないので、利用者の分類が増加し、アプリケーションプログラムが煩雑になるという問題があった。
【0007】
また、運用途中で、利用者の分類の追加や或る利用者に対する使用できる機能の許可/禁止を変更しようとした場合、アプリケーションプログラムを広範囲に渡って改造しなければならなかった。したがって、従来では、不都合があっても運用上の制約として回避することが多かった。
【0008】
こうした事情から利用者の分類は、例えば、正規オペレータ、臨時オペレータ、訓練オペレータ、責任者、システム管理者などの職種によるものが多く、個人毎に設定することは現実的に困難であった。
【0009】
本発明の目的は、職種毎ではなく、個人の利用者毎にできるだけ小さい機能単位での使用の許可/禁止を任意に設定できるようにするとともに、利用者の分類の追加や利用者に対して使用の許可/禁止の設定変更が随時行える構成を有するアプリケーションプログラムを実装したコンピュータシステムを提供することにある。
【0010】
【課題を解決するための手段】
上記目的を達成するために、本発明のコンピュータシステムは、対話形式の操作により複数のアプリケーションプログラムを実行するコンピュータシステムにおいて、ログイン時のユーザ名に対して利用者のタイプを対応付けた第1テーブルと、前記複数のアプリケーションプログラムについて、前記利用者のタイプ毎に、各アプリケーションプログラムが有する各単位機能に対して使用の許可または禁止を定義する第2テーブルと、利用者がログインした時、前記第1テーブルを参照してユーザ名から利用者タイプを決定し、前記第2テーブルを参照して前記アプリケーションプログラム毎に機能使用の許可テーブルを生成する機能使用の許可設定機構と、前記対話形式の操作によるプログラム実行時に、前記機能使用の許可設定機構が生成した前記機能使用の許可テーブルを参照して、利用者に対して該当機能の使用を許可するかどうかのチェックを行う処理が組み込まれた前記アプリケーションプログラムと、を備えることを特徴とする。
【0011】
かかる構成によれば、機能使用の許可設定機構が、個々のアプリケーションプログラム毎に機能使用の許可テーブルを生成することができる。したがって、実装する各アプリケーションプログラムは、予め決められた最低限のルールでプログラムを作成しておくことで、他のアプリケーションプログラムとは独立した形でプログラムの改造が可能となる。
【0012】
上記本発明のコンピュータシステムでは、利用者がログインした時にログイン時のユーザ名に対して利用者のタイプを対応づけた前記第1テーブルに該当するユーザ名が登録されていなかった時に、予め定めておいた利用者タイプを設定する手段、を備える。
【0013】
かかる構成によれば、ユーザ名が登録されていなかった時には予め定めておいた利用者タイプを使用できるので、特に利用者タイプに対して許可を与える利用者タイプのみテーブルのメンテナンスを行えばよいことになり、システム管理者の負担が軽減できるようになる。
【0014】
また、本発明のコンピュータシステムは、対話形式の操作により複数のアプリケーションプログラムを実行するコンピュータシステムにおいて、前記複数のアプリケーションプログラムについて、ログイン時のユーザ名に対して各アプリケーションプログラムが持つ単位機能の使用の許可または禁止を定義するテーブルと、利用者がログインした時、前記テーブルを参照して前記アプリケーションプログラム毎に機能使用の許可テーブルを生成する機能使用の許可設定機構と、前記対話形式の操作によるプログラム実行時に、前記機能使用の許可設定機構が生成した前記機能使用の許可テーブルを参照して、利用者に対して該当機能の使用を許可するかどうかのチェックを行う処理が組み込まれた前記アプリケーションプログラムと、を備えることを特徴とする。
【0015】
かかる構成によれば、ログイン時のユーザ名を利用者タイプ名として運用するので、利用者タイプの決定テーブルを不要とすることができ、メンテナンスの簡素化が図れるようになる。
【0016】
また、本発明のコンピュータシステムは、対話形式の操作により複数のアプリケーションプログラムを実行するコンピュータシステムにおいて、
ログイン時のユーザ名に対して利用者のタイプを対応付けた第1テーブルと、
前記複数のアプリケーションプログラムについて、前記利用者のタイプ毎に、各アプリケーションプログラムが有する各単位機能に対して使用の許可または禁止を定義する第2テーブルと、
バッチ処理にて前記第2テーブルを参照して前記アプリケーションプログラム毎に機能使用の許可テーブルを全ての利用者のタイプに対して生成するとともに、前記第2テーブルが更新された場合に前記アプリケーションプログラム毎に機能使用の許可テーブルを更新する機能使用の許可設定機構と、
前記対話形式の操作によるプログラム実行時に、ログイン時の利用者のタイプを前記第1テーブルを参照して確認する処理と、前記機能使用の許可設定機構が生成した前記機能使用の許可テーブルを参照して利用者に対して該当機能の使用を許可するかどうかのチェックを行う処理とが組み込まれた前記アプリケーションプログラムと、を備えることを特徴とする。
【0017】
かかる構成によれば、機能使用の許可設定機構がアプリケーションプログラム用の機能使用の許可テーブルをバッチ処理として予め作成しておくので、ログイン時に毎回、機能使用の許可テーブルを生成することがなくなる。したがって、システムの規模が大規模化し、1回のログインで多くのアプリケーションプログラムを動作させる場合に、テーブル作成などによる準備時間を減らすことができるようになる。
【0020】
【発明の実施の形態】
(第1の実施の形態)
図1は、本発明の第1の実施の形態によるコンピュータシステムの構成ブロック図である。図1において、ログイン時の利用者毎の動作環境設定機構1は、ユーザ名とパスワードの管理及びチェックを行い、ユーザ名に対応した動作環境を設定する働きをする既存の機能である。
【0021】
利用者タイプの決定テーブル2は、ログイン時のユーザ名に対し利用者のタイプ名を対応付けたテーブルである。利用者タイプ別の機能使用の許可定義テーブル3は、各アプリケーションプログラムが持つ単位機能毎に使用を許可または禁止する利用者タイプ名を定義したテーブルである。
【0022】
利用者毎の機能使用の許可設定機構4aは、ログイン時の利用者毎の動作環境設定機構1に付加されるものである。すなわち、利用者毎の機能使用の許可設定機構4aは、ログイン時の利用者毎の動作環境設定機構1から与えられたログイン時のユーザ名を検索キーにして利用者タイプの決定テーブル2から利用者タイプ名を決定する。決定した利用者タイプ名に対して利用者タイプ別の機能使用の許可定義テーブル3を参照して使用の「許可」「禁止」を拾い出し、各アプリケーションプログラム毎に機能使用の許可テーブルを生成する。
【0023】
図1では、アプリケーションプログラムは、A8,B9,C10の3つが示されている。したがって、アプリケーションプログラム用の機能使用の許可テーブルは、アプリケーションプログラムA用の機能使用の許可テーブル5と、アプリケーションプログラムB用の機能使用の許可テーブル6と、アプリケーションプログラムC用の機能使用の許可テーブル7との3つが示されている。
【0024】
アプリケーションプログラムA8は、処理時の制御を行うが、処理時にアプリケーションプログラムA用の機能使用の許可テーブル5を参照し、利用者に対して該当機能の使用を許可するかどうかをチェックする処理が組み込まれている。
【0025】
アプリケーションプログラムB9は、処理時の制御を行うが、処理時にアプリケーションプログラムA用の機能使用の許可テーブル6を参照し、利用者に対して該当機能の使用を許可するかどうかをチェックする処理が組み込まれている。
【0026】
アプリケーションプログラムC10は、処理時の制御を行うが、処理時にアプリケーションプログラムA用の機能使用の許可テーブル7を参照し、利用者に対して該当機能の使用を許可するかどうかをチェックする処理が組み込まれている。
【0027】
図2は、利用者タイプ決定テーブル2の構成例を示す。図2において、ユーザ名#1(3.1.N),ユーザ名#2(3.2.N),ユーザ名#3(3.3.N),・・・は、ログイン時のユーザ名に対応している。
【0028】
ユーザ名#1の利用者タイプ名(3.1.T),ユーザ名#2の利用者タイプ名(3.2.T),ユーザ名#3の利用者タイプ名(3.3.T),・・・は、ユーザ名に対応した利用者タイプ名を示している。
【0029】
図2の例では、役割/資格/権限に対応した利用者タイプ名を示している。利用者タイプ名「OPERATOR」は、一般の操作者である。利用者タイプ名「TRAINING」は、訓練者である。利用者タイプ名「MAINTAIN」は、システムの保守担当者である。利用者タイプ名「MANAGER」は、管理者である。
【0030】
図2の例では、ユーザ名#1(YAMADA)に対しユーザ名#1の利用者名(OPERATOR)が決定され、ユーザ名#2(WATANABE)に対しユーザ名#1の利用者名(TRAINING)が決定される。以下同様に、ユーザ名#5(KOBAYASHI)に対しユーザ名#1の利用者名(MANAGER)が決定されることが示されている。
【0031】
図3は、利用者タイプ別の機能使用の許可/禁止の規定例である。図3において、「機能名」「単位機能名」「利用者タイプ名」に分けて規定されている。「機能名」には、機能Aと機能Bと機能Cとが規定されている。機能Aは、アプリケーションプログラムA8に対応する。機能Bは、アプリケーションプログラムB9に対応する。機能Cは、アプリケーションプログラムC10に対応している。
【0032】
「単位機能名」は、アプリケーションプログラムの単位機能名を示している。機能A(アプリケーションプログラムA8)に対する単位機能名として、(A0)(A1)(A2)(A3)(A4)が規定されている。機能B(アプリケーションプログラムB9)に対する単位機能名として、(B0)(B1)が規定されている。機能C(アプリケーションプログラムC10)に対する単位機能名として、(C0)(C1)(C2)(C3)が規定されている。
【0033】
なお、(A0)(A1)(A2)(A3)(A4)等の単位機能名の決め方は、それぞれのアプリケーション毎に任意に設定すれば良い。例えば、機能Dに、独立した機能が8つあるのであればそれぞれを(D1)〜(D8)と決めれば良い。但し、利用者タイプにより、機能Dの全体を禁止したり、或る機能群をまとめて禁止したりするようなことが想定される場合には、アプリケーションプログラム側の処理を簡素化するため、例えば図4に示すように階層的に決める方が良い。
【0034】
図4において、フラグD0には3つのフラグD10,D20,D30が設けられている。フラグD10には2つのフラグD1,D2が設けられ、フラグD20には3つのフラグD3,D4,D5が設けられ、フラグD30には3つのフラグD6,D7,D8が設けられている。
【0035】
フラグD0は、機能D全体を許可するフラグである。フラグD10は、機能Dのうち、フラグD1とD2を許可するフラグである。フラグD20は、機能Dのうち、フラグD3とD4とD5を許可するフラグである。D30は、機能Dのうち、フラグD6とD7とD8を許可するフラグである。フラグD1〜D8は、機能Dのうち個々の機能を許可するフラグである。
【0036】
以下の説明では、機能Aについては、単位機能名(A0)が機能全体を意味し、単位機能名(A1)〜(A4)が個々の機能を意味する。機能Bについては、単位機能名(B0)が機能全体を意味し、単位機能名(B1)(B2)が個々の機能を意味する。機能Cについては、単位機能名(C0)が機能全体を意味し、単位機能名(C1)〜(C3)が個々の機能を意味するものとする。
【0037】
図3に戻って、「利用者タイプ名」には、「OPERATOR」「TRAINING」「MAINTAIN」「MANAGER」が規定されている。各利用者タイプについて、単位機能の使用を許可する場合には「YES」、許可しない場合には「NO」と規定されている。
【0038】
図5,図6は、利用者タイプ別の機能使用の許可定義テーブル3の構成例である。図5,図6では、図3の利用者タイプ別の機能許可/禁止の規定例を反映させた例を示している。
【0039】
図5、図6において、機能名(4.A)には、アプリケーションプログラムAのプログラム名が登録されている。単位機能名#0(4.A.0.F)には、単位機能名である(A0)が登録されている。単位機能名#0の許可された利用者タイプ名1(4.A.0.T1),単位機能名#0の許可された利用者タイプ名2(4.A.0.T2),単位機能名#0の許可された利用者タイプ名3(4.A.0.T3),単位機能名#0の許可された利用者タイプ名4(4.A.0.T4)には、それぞれ機能使用が許可された利用者タイプ名OPERATOR、TRAINING、MAINTAIN、MANAGERが登録されている。
【0040】
単位機能名#1(4.A.1.F)には、単位機能名である(A1)が登録されている。単位機能名#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),単位機能名#1の許可された利用者タイプ名3(4.A.1.T3),単位機能名#1の許可された利用者タイプ名4(4.A.1.T4)には、それぞれ機能使用が許可された利用者タイプ名OPERATOR、TRAINING、MAINTAIN、MANAGERが登録されている。
【0041】
単位機能名#2(4.A.2.F)には、単位機能名である(A2)が登録されている。単位機能名#2の許可された利用者タイプ名1(4.A.2.T1),単位機能名#2の許可された利用者タイプ名2(4.A.2.T2),単位機能名#2の許可された利用者タイプ名3(4.A.2.T3)には、それぞれ機能使用が許可された利用者タイプ名OPERATOR、TRAINING、MANAGERが登録されている。
【0042】
単位機能名#3(4.A.3.F)には、単位機能名である(A3)が登録されている。単位機能名#3の許可された利用者タイプ名1(4.A.3.T1)には、機能使用が許可された利用者タイプ名MAINTAINが登録されている。
【0043】
単位機能名#4(4.A.4.F)には、単位機能名である(A4)が登録されている。単位機能名#4の許可された利用者タイプ名1(4.A.4.T1)には、機能使用が許可された利用者タイプ名MANAGERが登録されている。
【0044】
次の機能名(4.B)には、アプリケーションプログラムBのおプログラム名が登録されている。単位機能名#0(4.B.0.F)には、単位機能名である(B0)が登録されている。単位機能名#0の許可された利用者タイプ名1(4.B.0.T1)には、機能使用が許可された利用者タイプ名MAINTAINが登録されている。
【0045】
単位機能名#1(4.B.1.F)には、単位機能名である(B1)が登録されている。単位機能名#1の許可された利用者タイプ名1(4.B.1.T1)には、機能使用が許可された利用者タイプ名MAINTAINが登録されている。
【0046】
単位機能名#2(4.B.2.F)には、単位機能名である(B2)が登録されている。単位機能名#2の許可された利用者タイプ名1(4.B.2.T1)には、機能使用が許可された利用者タイプ名MAINTAINが登録されている。
【0047】
また、機能名(4.C)には、アプリケーションプログラムCのプログラム名が登録されている。単位機能名#0(4.C.0.F)には、単位機能名である(C0)が登録されている。単位機能名#0の許可された利用者タイプ名1(4.C.0.T1),単位機能名#0の許可された利用者タイプ名2(4.C.0.T2),単位機能名#0の許可された利用者タイプ名3(4.C.0.T3),単位機能名#0の許可された利用者タイプ名4(4.C.0.T4)には、それぞれ機能使用が許可された利用者タイプ名OPERATOR、TRAINING、MAINTAIN、MANAGERが登録されている。
【0048】
単位機能名#1(4.C.1.F)には、単位機能名である(C1)が登録されている。単位機能名#1の許可された利用者タイプ名1(4.C.1.T1),単位機能名#1の許可された利用者タイプ名2(4.C.1.T2),単位機能名#1の許可された利用者タイプ名3(4.C.1.T3),単位機能名#1の許可された利用者タイプ名4(4.C.1.T4)には、それぞれ機能使用が許可された利用者タイプ名OPERATOR、TRAINING、MAINTAIN、MANAGERが登録されている。
【0049】
単位機能名#2(4.C.2.F)には、単位機能名である(C2)が登録されている。単位機能名#2の許可された利用者タイプ名1(4.C.2.T1),単位機能名#2の許可された利用者タイプ名2(4.C.2.T2),単位機能名#2の許可された利用者タイプ名3(4.C.2.T3)には、それぞれ機能使用が許可された利用者タイプ名OPERATOR、MAINTAIN、MANAGERが登録されている。
【0050】
単位機能名#3(4.A.3.F)には、単位機能名である(C3)が登録されている。単位機能名#3の許可された利用者タイプ名1(4.C.3.T1)には、機能使用が許可された利用者タイプ名MANAGERが登録されている。
【0051】
図7,図8,図9は、それぞれアプリケーションプログラムA用の機能使用許可テーブル5の構成例である。図7に示すように、利用者タイプ名がOPERATORの場合のアプリケーションプログラムA用の機能使用の許可テーブル5は、単位機能名#0(51.0.F)に対する単位機能名#0の許可サイン(51.0.S),単位機能名#1(51.1.F)に対する単位機能名#1の許可サイン(51.1.S),・・・,単位機能名#4(51.4.F)に対する単位機能名#4の許可サイン(51.4.S)から構成されている。
【0052】
例えば、単位機能名#0の許可サイン(51.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(A0)〜#2(A2)に対する許可サインが値「ON」で、単位機能名#3(A3)、#4(A4)に対する許可サインが値「OFF」となっている。
【0053】
図8に示すように、利用者タイプ名がMAINTAINの場合のアプリケーションプログラムA用の機能使用の許可テーブル5は、単位機能名#0(52.0.F)に対する単位機能名#0の許可サイン(52.0.S),単位機能名#1(52.1.F)に対する単位機能名#1の許可サイン(52.1.S),・・・,単位機能名#4(52.4.F)に対する単位機能名#4の許可サイン(52.4.S)から構成されている。
【0054】
例えば、単位機能名#0の許可サイン(52.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(A0)〜#3(A3)に対する許可サインが値「ON」で、単位機能名#4(A4)に対する許可サインが値「OFF」となっている。
【0055】
また、図9に示すように、利用者タイプ名がTRAININGのアプリケーションプログラムA用の機能使用の許可テーブル5は、単位機能名#0(53.0.F)に対する単位機能名#0の許可サイン(53.0.S),単位機能名#1(53.1.F)に対する単位機能名#1の許可サイン(53.1.S),・・・,単位機能名#4(53.4.F)に対する単位機能名#4の許可サイン(53.4.S)から構成されている。
【0056】
例えば、単位機能名#0の許可サイン(53.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(A0)、#1(A1)に対する許可サインが値「ON」で、単位機能名#2(A2)〜#4(A4)に対する許可サインが値「OFF」となっている。
【0057】
このように、アプリケーションプログラムA用の機能使用の許可テーブル5は、テーブル構造は利用者タイプ名に依らず同じであるが、利用者タイプ名に応じて単位機能名#0の許可サイン〜単位機能名#4の許可サインの値が一部異なっている。
【0058】
図10,図11,図12は、アプリケーションプログラムB用の機能使用許可テーブル6の構成例である。図10に示すように、利用者タイプ名がOPERATORの場合のアプリケーションプログラムB用の機能使用の許可テーブル6は、単位機能名#0(61.0.F)に対する単位機能名#0の許可サイン(61.0.S),単位機能名#1(61.1.F)に対する単位機能名#1の許可サイン(61.1.S),単位機能名#2(61.2.F)に対する単位機能名#2の許可サイン(61.2.S)から構成されている。
【0059】
例えば、単位機能名#0の許可サイン(61.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(B0)〜#2(B2)に対する許可サインの値が全て「OFF」となっている。
【0060】
図11に示すように、利用者タイプ名がMAINTAINの場合のアプリケーションプログラムB用の機能使用の許可テーブル6は、単位機能名#0(62.0.F)に対する単位機能名#0の許可サイン(62.0.S),単位機能名#1(62.1.F)に対する単位機能#1の許可サイン(62.1.S),単位機能名#2(62.2.F)に対する単位機能名#2の許可サイン(62.2.S)から構成されている。
【0061】
例えば、単位機能名#0の許可サイン(62.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(B0)〜#2(B2)に対する許可サインの値が全て「ON」となっている。
【0062】
また、図12に示すように、利用者タイプ名がTRAININGのアプリケーションプログラムB用の機能使用の許可テーブル6は、単位機能名#0(63.0.F)に対する単位機能名#0の許可サイン(63.0.S),単位機能名#1(63.1.F)に対する単位機能名#1の許可サイン(63.1.S),単位機能名#2(63.2.F)に対する単位機能名#4の許可サイン(63.2.S)から構成されている。
【0063】
例えば、単位機能名#0の許可サイン(63.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(B0)〜#2(B2)に対する許可サインの値が全て「OFF」となっている。
【0064】
このように、アプリケーションプログラムB用の機能使用の許可テーブル6は、テーブル構造は利用者タイプ名に依らず同じであるが、利用者タイプ名に応じて単位機能名#0の許可サイン〜単位機能名#2の許可サインの値が一部異なっている。
【0065】
図13,図14,図15は、アプリケーションプログラムC用の機能使用許可テーブル6の構成例である。図13に示すように、利用者タイプ名がOPERATORの場合のアプリケーションプログラムC用の機能使用の許可テーブル7は、単位機能名#0(71.0.F)に対する単位機能名#0の許可サイン(71.0.S),単位機能名#1(71.1.F)に対する単位機能名#1の許可サイン(71.1.S),・・・,単位機能名#3(71.3.F)に対する単位機能名#3の許可サイン(71.3.S)から構成されている。
【0066】
例えば、単位機能名#0の許可サイン(71.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(C0)〜#2(C2)に対する許可サインが値「ON」で、単位機能名#3(C3)に対する許可サインが値「OFF」となっている。
【0067】
図14に示すように、利用者タイプ名がMAINTAINの場合のアプリケーションプログラムC用の機能使用の許可テーブル7は、単位機能名#0(72.0.F)に対する単位機能名#0の許可サイン(72.0.S),単位機能名#1(72.1.F)に対する単位機能名#1の許可サイン(72.1.S),・・・,単位機能名#3(72.4.F)に対する単位機能名#3の許可サイン(72.4.S)から構成されている。
【0068】
例えば、単位機能名#0の許可サイン(72.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(C0)〜#2(C2)に対する許可サインが値「ON」で、単位機能名#3(C3)に対する許可サインが値「OFF」となっている。
【0069】
また、図15に示すように、利用者タイプ名がTRAININGのアプリケーションプログラムC用の機能使用の許可テーブル7は、単位機能名#0(73.0.F)に対する単位機能名#0の許可サイン(73.0.S),単位機能名#1(73.1.F)に対する単位機能名#1の許可サイン(73.1.S),・・・,単位機能名#3(73.4.F)に対する単位機能名#3の許可サイン(73.4.S)から構成されている。
【0070】
例えば、単位機能名#0の許可サイン(73.0.S)は,値が「ON」のとき許可、値が「OFF」のとき禁止と解釈する。図示例では、単位機能名#0(C0)、#1(C1)に対する許可サインが値「ON」で、単位機能名#2(C2)、#3(C3)に対する許可サインが値「OFF」となっている。
【0071】
このように、アプリケーションプログラムC用の機能使用の許可テーブル7は、テーブル構造は利用者タイプ名に依らず同じであるが、利用者タイプ名に応じて単位機能#0の許可サイン〜単位機能#3の許可サインの値が一部異なっている。
【0072】
次に、第1の実施の形態の動作を図16〜図19を参照して説明する。なお、図16は、利用者毎の機能使用の許可設定機構4aの動作を示すフローチャートである。図17〜図19は、アプリケーションプログラム9Aの動作を示すフローチャートである。図17〜図19では、アプリケーションプログラム8Aの動作を示すが、アプリケーションプログラム9B,10Cの動作も同様である。
【0073】
図16において、まず、利用者がログインしたとき、ユーザ名とパスワードのチェックがログイン時の利用者毎の動作環境設定機構1により実施される(ステップS1)。チェックがOKであれば、ユーザ名がログイン時の利用者毎の動作環境設定機構1から利用者毎の機能使用の許可設定機構4aに伝えられる。
【0074】
利用者毎の機能使用の許可設定機構4aは、利用者タイプの決定テーブル2を検索してユーザ名に対応した利用者タイプを次のようにして探すことを行う(ステップS2)。
【0075】
例えば、ユーザ名が、「TANATA」の場合について説明する。[1]ユーザ名#1(3.1.N),ユーザ名#2(3.2.N),ユーザ名#3(3.3.N)の順にサーチする。[2]ユーザ名#3(3.3.N)が「TANAKA」と一致することを検出する。[3]ユーザ名#3(3.3.N)に対応したユーザ名#3の利用者タイプ名(3.3.T)を取り出し、利用者タイプ名=OPERATORとする。
【0076】
次に、利用者タイプ名が見つかったかどうかを判断し(ステップS3)、指定されたユーザ名が利用者タイプの決定テーブル2に登録されていた場合には、利用者タイプ別の機能使用許可定義テーブル3を読み込み(ステップS4)、アプリケーションプログラムi用の機能使用許可テーブルを作成する(ステップS5)。このテーブルは、ログイン時のユーザ名毎に指定された動作環境内に次のようにして生成される。
【0077】
[1]最初の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.A)からアプリケーションプログラムA用の機能使用の許可テーブル5を作成する。2回目の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.B)からアプリケーションプログラムB用の機能使用の許可テーブル6を作成する。3回目の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.C)からアプリケーションプログラムC用の機能使用の許可テーブル7を作成する。
【0078】
[2]単位機能名#0(4.A.0.F)から単位機能名(A0)を取り出し、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.0.F)に書き込む。[3]単位機能名#0の許可された利用者タイプ名1(4.A.0.T1),単位機能名#0の許可された利用者タイプ名2(4.A.0.T2),・・・,単位機能名#0の許可された利用者タイプ名4(4.A.0.T4)を順次検索し、利用者タイプ名がOPERATORのレコードが登録されているかを調べる。
【0079】
[4]登録されている場合は、単位機能#0の許可サイン(51.0.S)に「ON」の値を書き込む。一方、登録されていなければ、単位機能#0の許可サイン(51.0.S)に「OFF」の値を書き込む。利用者タイプ名=OPERATORは、単位機能名#0の許可された利用者タイプ名1(4.A.0.T1)に登録されているので、単位機能#0の許可サイン(51.0.S)に値「ON」を書き込む。[5]次に、単位機能名#1(4.A.1.F)から単位機能名(A1)を取り出し、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.1.F)に書き込む。
【0080】
[6]単位機能名#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),・・・,単位機能名#1の許可された利用者タイプ名4(4.A.1.T4)を順次検索し、利用者タイプ名がOPERATORのレコードが登録されているかを調べる。
【0081】
[7]登録されている場合は、単位機能#1の許可サイン(51.1.S)に「ON」の値を書き込む。一方、登録されていなければ、単位機能#0の許可サイン(51.1.S)に「OFF」の値を書き込む。利用者タイプ名=OPERATORは、単位機能名#1の許可された利用者タイプ名1(4.A.1.T1)に登録されているので、単位機能#1の許可サイン(51.1.S)に値「ON」を書き込む。
【0082】
[8]順次、単位機能#iを処理し、単位機能#4(4.A.4.F)の処理が終わった時点で機能名(4.A)用、つまりアプリケーションプログラムA用のテーブル作成処理は終わる。
【0083】
以上のようにして、利用者タイプ別の機能使用許可定義テーブル3に登録された全ての機能名(アプリケーションプログラム)に対して、アプリケーションプログラムのテーブル機能使用の許可テーブルが作成できると(ステップS6)、リターンステータス(処理結果の状態)に「正常終了」を設定し(ステップS7)、終了する。
【0084】
一方、ステップS3において、指定されたユーザ名が利用者タイプの決定テーブル2に登録されていなかった場合には、リターンステータス(処理結果の状態)に「該当する利用者タイプなし」を設定し(ステップS8)終了する。
【0085】
次いで図17は、アプリケーションプログラムA8のコマンドリストメニューの表示時に機能の使用許可を反映させる場合の動作を示すフローチャートである。
【0086】
図17において、アプリケーションプログラムA用の機能使用の許可テーブル5を読み込み(ステップS10)、表示しようとするコマンドメニューのコマンドのうち、許可されていない単位機能名(コマンド)を次のようにして削除し(ステップS11)、通常処理(コマンドリストメニューの表示処理)へ進む(ステップS12)。
【0087】
このステップS11では、次の処理が行われる。[1]コマンドメニューとして表示しようとするコマンドのリストを読み込む。[2]コマンドのリスト内のコマンドと一致する単位機能名を検索する。
【0088】
[3]例えば、コマンド名(単位機能名)=A1であれば、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.0.F),単位機能名#1(51.1.F),・・・を検索し、単位機能名#1(51.1.F)に対応した単位機能#1の許可サイン(51.1.S)を調べる。
【0089】
[4]単位機能#1(51.1.S)が値「ON」であればコマンドのリストに残し、値「OFF」であればコマンドのリストから削除する。[5]コマンドのリストに登録されている全てのコマンド(単位機能)に対して上記[2]〜[4]の処理を実行する。
【0090】
次いで図18は、アプリケーションプログラムA8のプルダウンメニューまたはポップアップメニューの表示時に機能使用の許可を反映させる動作を示すフローチャートである。
【0091】
図18において、アプリケーションプログラムA用の機能使用の許可テーブル5を読み込み(ステップS15)、表示しようとするプルダウンメニューまたはポップアップメニュー内の単位機能のうち、許可されていない単位機能名を次のようにして削除またはカスケード(選択できない状態)にし(ステップS16)、通常の処理に進む。
【0092】
ステップS16では、次の処理が行われる。[1]プルダウンメニューまたはポップアップメニューとして表示しようとするメニューの設定リストを読み込む。[2]設定リスト内の単位機能と一致するアプリケーションプログラムA用の機能使用の許可テーブル5内の単位機能名を検索する。
【0093】
[3]例えば、単位機能名=A1であれば、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.1.0.F),単位機能名#1(51.1.F),・・・を検索し、単位機能名#1(51.1.F)に対応した単位機能#1の許可サイン(51.1.S)を調べる。
【0094】
[4]単位機能#1(51.1.S)が値「ON」であれば設定リストに残し、値「OFF」であれば設定リストから削除またはカスケードを指示する。[5]設定リストに登録されている全ての単位機能に対して上記[2]〜[4]の処理を実行する。
【0095】
次いで図19は、アプリケーションプログラムA8のドラッグアンドドロップ形式または直接コマンド形式などの実行時に機能使用の許可を反映させる動作を示すフローチャートである。
【0096】
図19において、アプリケーションプログラムA用の機能使用の許可テーブル5を読み込み(ステップS20)、該当機能の使用は許可されているかどうかを次のようにして判断し(ステップS21)、判断結果に応じてステップS22とS23の処理を行う。
【0097】
ステップS21では、次の処理が行われる。[1]該当機能の単位機能名と一致するアプリケーションプログラムA用の機能使用の許可テーブル5内の単位機能名を検索する。[2]例えば単位機能名=A1であれば、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.0.F),単位機能名#1(51.1.F),・・・を検索し、単位機能名#1(51.1F)に対応した単位機能#1の許可サイン(51.1.S)を調べる。
【0098】
[3]許可テーブル5の単位機能名#1(51.1.F)が値「ON」であれば、ステップS22へ進み、該当単位機能を実行し、終了する。一方、値「OFF」であれば、ステップS23へ進み、該当単位機能は使用許可されていないことをメッセージ表示し、該当機能は実行することなく終了する。
【0099】
このように本第1の実施の形態では、利用者毎の機能使用の許可設定機能4aが個々のアプリケーションプログラム毎に機能使用の許可テーブルを生成する。したがって、実装する各アプリケーションプログラムは、予め決められた最低限のルールでプログラムを作成しておくことで、他のアプリケーションプログラムとは独立した形でプログラムの改造が可能となる。
【0100】
(第2の実施の形態)
図20は、本発明の第2の実施の形態によるコンピュータシステムの構成ブロック図である。本第2の実施の形態は、第1の実施の形態の簡易な運用への適用例である。したがって、第1の実施の形態(図1)と同一構成部分には、同一符号・名称を付してある。ここでは、本第2の実施の形態に係る部分を中心に説明する。この点は、以下の各実施の形態においても同じである。
【0101】
簡易な運用では、ログインのユーザ名=利用者タイプ名として運用される場合が多い。この場合には、図20に示すように、第1の実施の形態(図1)における利用者タイプの決定テーブル2が不要となる。図20に示す利用者毎の機能使用の許可設定機構4bは、利用者別の機能使用の許可定義テーブル3のみを参照することになる。
【0102】
次に、本第2の実施の形態に係る部分の動作を図21を参照して説明する。図21は、利用者毎の機能使用の許可設定機構4bの動作を示すフローチャートである。なお、アプリケーションプログラムの動作は、第1の実施の形態(図17〜図19)と同様である。
【0103】
図21において、まず、利用者がログインした時、ユーザ名とパスワードのチェックがログイン時の利用者毎の動作環境設定機構1により実施される(ステップS30)。チェックがOKであれば、ユーザ名が、ログイン時の利用者毎の動作環境設定機構1から利用者毎の機能使用の許可設定機構4bに伝えられる。例えば、ユーザ名=OPERATORとする。
【0104】
ユーザ名(OPERATOR)を受け取ると、利用者毎の機能使用の許可設定機構4bは、利用者タイプ別の機能使用許可定義テーブル3を読み込み(ステップS31)、アプリケーションプログラムi用の機能使用許可テーブルを作成する(ステップS32)。このテーブルは、ログイン時のユーザ名毎に指定された動作環境内に次のようにして生成される。
【0105】
[1]最初の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.A)からアプリケーションプログラムA用の機能使用の許可テーブル5を作成する。2回目の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.B)からアプリケーションプログラムB用の機能使用の許可テーブル6を作成する。3回目の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.C)からアプリケーションプログラムC用の機能使用の許可テーブル7を作成する。
【0106】
[2]単位機能名#0(4.A.0.F)から単位機能名(A0)を取り出し、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.0.F)に書き込む。[3]単位機能名#0の許可された利用者タイプ名1(4.A.0.T1),単位機能名#0の許可された利用者タイプ名2(4.A.0.T2),・・・,単位機能名#0の許可された利用者タイプ名4(4.A.0.T4)を順次検索し、利用者タイプ名がOPERATORのレコードが登録されているかを調べる。
【0107】
[4]登録されている場合は、単位機能名#0の許可サイン(51.0.S)に「ON」の値を書き込む。一方、登録されていなければ、単位機能名#0の許可サイン(51.0.S)に「OFF」の値を書き込む。利用者タイプ名=OPERATORは、単位機能名#0の許可された利用者タイプ名1(4.A.0.T1)に登録されているので、単位機能名#0の許可サイン(51.0.S)に値「ON」を書き込む。[5]次に、単位機能名#1(4.A.1.F)から単位機能名(A1)を取り出し、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.1.F)に書き込む。
【0108】
[6]単位機能#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),・・・,単位機能名#1の許可された利用者タイプ名4(4.A.1.T4)を順次検索し、利用者タイプ名がOPERATORのレコードが登録されているかを調べる。
【0109】
[7]登録されている場合は、単位機能名#1の許可サイン(51.1.S)に「ON」の値を書き込む。一方、登録されていなければ、単位機能名#0の許可サイン(51.1.S)に「OFF」の値を書き込む。利用者タイプ名=OPERATORは、単位機能名#1の許可された利用者タイプ名1(4.A.1.T1)に登録されているので、単位機能名#1の許可サイン(51.1.S)に値「ON」を書き込む。
【0110】
[8]順次、単位機能名#iを処理し、単位機能名#4(4.A.4.F)の処理が終わった時点で機能名(4.A)用、つまりアプリケーションプログラムA用のテーブル作成処理は終わる。
【0111】
以上のようにして、利用者タイプ別の機能使用許可定義テーブル3に登録された全ての機能名(アプリケーションプログラム)に対して、アプリケーションプログラムのテーブル機能使用の許可テーブルが作成できると(ステップS33)、リターンステータス(処理結果の状態)に「正常終了」を設定し(ステップS34)、終了する。
【0112】
このように本第2の実施の形態では、ログイン時のユーザ名を利用者タイプ名として運用するので、利用者タイプの決定テーブルを不要とすることができ、メンテナンスが簡素化するという利点がある。
【0113】
(第3の実施の形態)
図22は、本発明の第3の実施の形態によるコンピュータシステムの構成ブロック図である。本第3の実施の形態は、第1の実施の形態においてログインしたユーザ名が利用者タイプの決定テーブル2になかった場合に拒絶せずに予めデフォルトとして設定された利用者タイプ名での利用を許す機構を組み込んだ構成例である。
【0114】
したがって、構成要素は、第1の実施の形態と同じであるが、利用者毎の機能使用の許可設定機構4cの動作が、第1の実施形態の利用者毎の機能使用の許可設定機構4aと異なるものとなっている。
【0115】
次に、本第3の実施の形態に係る部分の動作を図23を参照して説明する。図21は、利用者毎の機能使用の許可設定機構4cの動作を示すフローチャートである。なお、アプリケーションプログラムの動作は、第1の実施の形態(図17〜図19)と同様である。
【0116】
図23において、まず、利用者がログインした時、ユーザ名とパスワードのチェックがログイン時の利用者毎の動作環境設定機構1により実施される(ステップS40)。チェックがOKであれば、ユーザ名が、ログイン時の利用者毎の動作環境設定機構1から利用者毎の機能使用の許可設定機構4cに伝えられる。
【0117】
ユーザ名を受け取ると、利用者毎の機能使用の許可設定機構4cは、利用者タイプの決定テーブル2を検索してユーザ名に対応した利用者タイプ名を次のようにして検索する(ステップS41)。
【0118】
例えば、ユーザ名が「AKAGAKI」の場合について説明する。[1]ユーザ名#1(3.1.N),ユーザ名#2(3.2.N),ユーザ名#3(3.3.N)の順にサーチする。[2]ユーザ名「AKAGAKI」は登録されていないので検出されない。
【0119】
利用者毎の機能使用の許可設定機構4cは、指定されたユーザ名が利用者タイプの決定テーブル2に登録されていなかった場合には(ステップS42)、利用者タイプ=デフォルトの利用者タイプ名を設定する(ステップS43)。ユーザ名「AKAGAKI」の場合にはこのケースとなる。例えば、デフォルトの利用者タイプ名として「TRAINING」が指定されていたとすれば、利用者タイプ名=TRAININGを設定する。
【0120】
次に、利用者毎の機能使用の許可設定機構4cは、指定されたユーザ名が利用者タイプの決定テーブル2に登録されていた場合(ステップS42)、または、利用者タイプ=デフォルトの利用者タイプを設定(ステップS43)後に、利用者タイプ別の機能使用許可定義テーブル3を読み込み(ステップS44)、アプリケーションプログラムi用の機能使用許可テーブルを作成する。このテーブルは、ログイン時のユーザ名毎に指定された動作環境内に次のようにして生成される。
【0121】
[1]最初の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.A)からアプリケーションプログラムA用の機能使用の許可テーブル5を作成する。2回目の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.B)からアプリケーションプログラムB用の機能使用の許可テーブル6を作成する。3回目の場合は、利用者タイプ別の機能使用許可定義テーブル3の機能名(4.C)からアプリケーションプログラムC用の機能使用の許可テーブル7を作成する。
【0122】
[2]単位機能名#0(4.A.0.F)から単位機能名(A0)を取り出し、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.0.F)に書き込む。[3]単位機能名#0の許可された利用者タイプ名1(4.A.0.T1),単位機能名#0の許可された利用者タイプ名2(4.A.0.T2),・・・,単位機能名#0の許可された利用者タイプ名4(4.A.0.T4)を順次検索し、利用者タイプ名がTRAININGのレコードが登録されているかを調べる。
【0123】
[4]登録されている場合は、単位機能名#0の許可サイン(51.0.S)に「ON」の値を書き込む。一方、登録されていなければ、単位機能名#0の許可サイン(51.0.S)に「OFF」の値を書き込む。利用者タイプ名=TRAININGは、単位機能名#0の許可された利用者タイプ名1(4.A.0.T1)に登録されているので、単位機能名#0の許可サイン(51.0.S)に値「ON」を書き込む。[5]次に、単位機能名#1(4.A.1.F)から単位機能名(A1)を取り出し、アプリケーションプログラムA用の機能使用の許可テーブル5の単位機能名#0(51.1.F)に書き込む。
【0124】
[6]単位機能名#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),・・・,単位機能名#1の許可された利用者タイプ名4(4.A.1.T4)を順次検索し、利用者タイプ名がTRAININGのレコードが登録されているかを調べる。
【0125】
[7]登録されている場合は、単位機能名#1の許可サイン(51.1.S)に「ON」の値を書き込む。一方、登録されていなければ、単位機能名#0の許可サイン(51.1.S)に「OFF」の値を書き込む。利用者タイプ名=TRAININGは、単位機能名#1の許可された利用者タイプ名1(4.A.1.T1)に登録されているので、単位機能名#1の許可サイン(51.1.S)に値「ON」を書き込む。
【0126】
[8]順次、単位機能名#iを処理し、単位機能名#4(4.A.4.F)の処理が終わった時点で機能名(4.A)用、つまりアプリケーションプログラムA用のテーブル作成処理は終わる。
【0127】
以上のようにして、利用者タイプ別の機能使用許可定義テーブル3に登録された全ての機能名(アプリケーションプログラム)に対して、アプリケーションプログラムの機能使用の許可テーブルが作成できると(ステップS46)、リターンステータス(処理結果の状態)に「正常終了」を設定し(ステップS47)、終了する。
【0128】
このように本第3の実施の形態では、デフォルトの利用者タイプ名が使用できるので、特に利用者タイプに対して許可を与える利用者タイプのみテーブルのメンテナンスを行えばよいことになり、システム管理者の負担が軽減できる利点がある。
【0129】
(第4の実施の形態)
図24は、本発明の第4の実施の形態によるコンピュータシステムの構成ブロック図である。第1の実施の形態では、利用者毎の機能使用の許可設定機構4a(図1参照)をログイン時に動作させるので、ログインの度にアプリケーションプログラム用の機能使用の許可テーブル5〜7(図1参照)が生成されることになる。したがって、規模の大きいシステムでは、アプリケーションプログラムの数も多いので、ログイン後にアプリケーションプログラムが使えるようになるまでの待ち時間がかかる恐れがある。
【0130】
そこで、本第4の実施の形態では、図24において利用者毎の機能使用の許可設定機構4dが、バッチ処理で予め設定された全ての利用者タイプに対応したアプリケーションプログラムの機能使用の許可テーブルを全てのアプリケーションプログラムに対して用意しておくようしている。また、利用者毎の機能使用の許可設定機構4dは、利用者タイプ別の機能使用の許可定義テーブル3が更新された場合に手動でまたは自動的に起動され、各アプリケーションプログラム毎に機能使用の許可テーブルを更新することを行うようにしている。この場合には、アプリケーションプログラムには、利用者タイプを意識した処理を組み込むことになる。
【0131】
アプリケーションプログラム用の機能使用の許可テーブルは、利用者タイプに対応して複数件分用意されている。すなわち、利用者タイプ名=OPERATOR用として、アプリケーションプログラムA用の機能使用の許可テーブル51とアプリケーションプログラムB用の機能使用の許可テーブル61とアプリケーションプログラムC用の機能使用の許可テーブル71が用意されている。
【0132】
利用者タイプ名=MAINTAIN用として、アプリケーションプログラムA用の機能使用の許可テーブル52とアプリケーションプログラムB用の機能使用の許可テーブル62とアプリケーションプログラムC用の機能使用の許可テーブル72が用意されている。
【0133】
また、利用者タイプ名=TRAININGR用として、アプリケーションプログラムA用の機能使用の許可テーブル53とアプリケーションプログラムB用の機能使用の許可テーブル63アプリケーションプログラムC用の機能使用の許可テーブル73が用意されている。
【0134】
アプリケーションプログラムA308は、処理時の制御を行うが、処理時にアプリケーションプログラムA用の機能使用の許可テーブル51,52,53を参照し、利用者に対して該当機能の使用を許可するかどうかをチェックする処理が組み込まれている。
【0135】
アプリケーションプログラムB309は、処理時の制御を行うが、処理時にアプリケーションプログラムB用の機能使用の許可テーブル61,62,63を参照し、利用者に対して該当機能の使用を許可するかどうかをチェックする処理が組み込まれている。
【0136】
アプリケーションプログラムC310は、処理時の制御を行うが、処理時にアプリケーションプログラムC用の機能使用の許可テーブル71,72,73を参照し、利用者に対して該当機能の使用を許可するかどうかをチェックする処理が組み込まれている。
【0137】
次に、第4の実施の形態の動作を図25〜図29を参照して説明する。なお、図25は、利用者毎の機能使用の許可設定機構4dの動作を示すフローチャートである。図26〜図29は、アプリケーションプログラム308Aの動作を示すフローチャートである。図26〜図29では、アプリケーションプログラム308Aの動作を示すが、アプリケーションプログラム309B,310Cの動作同様である。
【0138】
図25において、利用者毎の機能使用の許可設定機構4dが利用者タイプ別の機能使用の許可定義テーブル3が更新された場合に手動によりまたは自動的に起動される(ステップS50)。起動されると、利用者毎の機能使用の許可設定機構4dは、利用者タイプ別の機能使用許可定義テーブル3を読み込み(ステップS51)、アプリケーションプログラムiの機能使用の許可テーブルを全ての利用者タイプに対して作成する(ステップS52)。
【0139】
最初の処理では、アプリケーションプログラムA用機能使用の許可テーブル51,52,53,・・が作成される。次の2回目の処理では、アプリケーションプログラムB用機能使用の許可テーブル61,62,63,・・が作成される。その次の3回目の処理では、アプリケーションプログラムC用機能使用の許可テーブル71,72,73,・・が作成される。
【0140】
具体的には、次のようにして作成される。[1]利用者タイプ別の機能使用許可定義テーブル3の単位機能名#0の許可された利用者タイプ名1(4.A.0.T1),単位機能名#0の許可された利用者タイプ名2(4.A.0.T2),単位機能名#0の許可された利用者タイプ名3(4.A.0.T3),単位機能名#0の許可された利用者タイプ名4(4.A.0.T4),単位機能名#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),単位機能名#1の許可された利用者タイプ名3(4.A.1.T3),単位機能名#1の許可された利用者タイプ名4(4.A.1.T4),・・・を読み取り、利用者タイプ名が「OPERATOR」「TRAINING」「MANAGER」であることを記録する。
【0141】
[2]利用者タイプ別の機能使用許可定義テーブル3の単位機能名#0(4.A.0.F),単位機能名#1(4.A.1.F),単位機能名#2(4.A.2.F),単位機能名#3(4.A.3.F),単位機能名#4(4.A.4.F)を読み出す。
【0142】
[3]アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51の初期状態を次のようにして作成する。<1>単位機能名#0(51.0.F)に単位機能名#0(4.A.0.F)を設定する。単位機能名#0の許可サイン(51.0.S)を値「OFF」に設定する。<2>単位機能名#1(51.1.F)に単位機能名#1(4.A.1.F)を設定する。単位機能名#1の許可サイン(51.1.S)を値「OFF」に設定する。
【0143】
<3>単位機能名#2(51.2.F)に単位機能名#2(4.A.2.F)を設定する。単位機能名#2の許可サイン(51.2.S)を値「OFF」に設定する。<4>単位機能名#4(51.4.F)に単位機能名#4(4.A.4.F)を設定する。単位機能名#4の許可サイン(51.4.S)を値「OFF」に設定する。
【0144】
[4]アプリケーションプログラムA用の機能使用の許可テーブルMAINTAIN用52の初期状態を次のようにして作成する。<1>単位機能名#0(52.0.F)に単位機能名#0(4.A.0.F)を設定する。単位機能名#0の許可サイン(52.0.S)を値「OFF」に設定する。<2>単位機能名#1(52.1.F)に単位機能名#1(4.A.1.F)を設定する。単位機能名#1の許可サイン(52.1.S)を値「OFF」に設定する。
【0145】
<3>単位機能名#2(52.2.F)に単位機能名#2(4.A.2.F)を設定する。単位機能名#2の許可サイン(52.2.S)を値「OFF」に設定する。<4>単位機能名#4(52.4.F)に単位機能名#4(4.A.4.F)を設定する。単位機能名#4の許可サイン(52.4.S)を値「OFF」に設定する。
【0146】
[5]アプリケーションプログラムA用の機能使用の許可テーブルTRAINING用53の初期状態を同様に作成する。[6]利用者タイプ別の機能使用許可定義テーブル3の単位機能名#0の許可された利用者タイプ名1(4.A.0.T1)を読み取り、「OPERATOR」であることを判定し、アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51の単位機能名#0の許可サイン(51.0.S)を「ON」に設定する。
【0147】
[7]利用者タイプ別の機能使用許可定義テーブル3の単位機能名#0の許可された利用者タイプ名2(4.A.0.T2)を読み取り、「TRAINING」であることを判定し、アプリケーションプログラムA用の機能使用の許可テーブルTRAINING用53の単位機能名#0の許可サイン(53.0.S)を値「ON」に設定する。
【0148】
[8]利用者タイプ別の機能使用許可定義テーブル3の単位機能名#0の許可された利用者タイプ名3(4.A.0.T3)を読み取り、「MAINTAIN」であることを判定し、アプリケーションプログラムA用の機能使用の許可テーブルMAINTAIN用52の単位機能名#0の許可サイン(52.0.S)を値「ON」に設定する。
【0149】
[9]以下、単位機能名#0の許可された利用者タイプ名4(4.A.0.T4),単位機能名#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),単位機能名#1の許可された利用者タイプ名4(4.A.1.T4)、単位機能名#2の許可された利用者タイプ名1(4.A.2.T1),単位機能名#2の許可された利用者タイプ名2(4.A.2.T2),単位機能名#2の許可された利用者タイプ名3(4.A.2.T3),単位機能名#3の許可された利用者タイプ名1(4.A.3.T1),単位機能名#4の許可された利用者タイプ名1(4.A.4.T1)に対して、同様の処理をして該当テーブルの単位機能名の許可サインを値「ON」に設定する。
【0150】
以上のようにして、利用者タイプ別の機能使用許可定義テーブル3に登録された全ての機能名(アプリケーションプログラム)に対して、アプリケーションプログラムの機能使用の許可テーブルを作成し(ステップS53)、テーブル作成処理を終了する。
【0151】
次に図26は、アプリケーションプログラムA308での初期処理の動作を示したフローチャートである。図26において、利用者タイプの決定テーブル2を読み込み(ステップS55)、利用者タイプの決定テーブルを検索してユーザ名に対応した利用者のタイプ名を次のようにして探すことを行い(ステップS56、S57)、その結果に応じてステップS58とS59の処理を行う。
【0152】
例えば、ユーザ名が「TANAKA」の場合について説明する。[1]ユーザ名#1(3.1.N),ユーザ名#2(3.2.N),ユーザ名#3(3.3.N)の順にサーチする。[2]ユーザ名#3(3.3.N)が「TANAKA」と一致することを検出する。{3]ユーザ名#3(3.3.N)に対応したユーザ名#3の利用者タイプ(3.3.T)を取り出し、利用者タイプ名=OPERATORとする。
【0153】
利用者タイプ名が見つかった場合は、その利用者タイプ名を記憶し(ステップS58)、後続の処理へ進む。一方、利用者タイプ名が見つからなかった場合は、機能の使用が許可されていないことをメッセージで表示し(ステップS59)、処理を終了する。
【0154】
次に図27は、アプリケーションプログラムA308でのコマンドリストメニューの表示時の動作を示したフローチャートである。図27において、利用者タイプに対応したアプリケーションプログラムA用の機能使用の許可テーブル51,52,53,・・のいずれかを読み込む(ステップS60)。ここでは上記のようにして記憶した利用者タイプ名に対応したアプリケーションプログラムA用の機能使用の許可テーブルを読み込む。例えば、ユーザ名が「TANAKA」であれば、利用者タイプ名が「OPERATOR」であるので、アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51を読み込む。
【0155】
次いで表示しようとするコマンドリストメニューのコマンドのうち、許可されていない単位機能名(コマンド名)を削除する。アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51が図7のように設定されている場合について説明する。
【0156】
[1]単位機能名#0の許可サイン(51.0.S)の値は「ON」であるので、単位機能名「A0」はコマンドリストから削除しない。[2]単位機能名#1の許可サイン(51.1.S)の値は「ON」であるので、単位機能名(A1)はコマンドリストから削除しない。[3]単位機能名#2の許可サイン(51.2.S)の値は「ON」であるので、単位機能名(A2)はコマンドリストから削除しない。[4]単位機能名#3の許可サイン(51.3.S)の値は「OFF」であるので、単位機能名(A3)はコマンドリストから削除する。[5]単位機能名#4の許可サイン(51.4.S)の値は「OFF」であるので、単位機能名(A4)はコマンドリストから削除する。以上のコマンドリストメニューの処理が終わると、コマンドリストメニューの表示処理へ進む(ステップS62)。
【0157】
次に、図28は、アプリケーションプログラムA308でのプルダウンメニューまたはポップアップメニューの表示時の動作を示したフローチャートである。図28において、利用者タイプに対応したアプリケーションプログラムA用の機能使用の許可テーブル51,52,53,・・・のいずれかを読み込む(ステップS65)。ここでは、上記のように記憶した利用者タイプ名に対応したアプリケーションプログラムA用の機能使用の許可テーブルを読み込む。例えば、ユーザ名が「TANATA」であれば、利用者タイプ名が「OPERATOR」であるので、アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51を読み込む。
【0158】
次いで、表示しようとするプルダウンメニューまたはポップアップメニュー内の単位機能名のうち、許可されていない単位機能名を次のようにして削除またはカスケード(選択できない状態)に設定し(ステップS66)。処理を終了する。アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51が図7のように設定されている場合について説明する。
【0159】
ステップS66では、次の処理が行われる。[1]単位機能名#0の許可サイン(51.0.S)の値は「ON」であるので、単位機能名(A0)は削除またはカスケード設定しない。[2]単位機能名#1の許可サイン(51.1.S)の値は「ON」であるので、単位機能名(A1)は削除またはカスケード設定しない。[3]単位機能名#2の許可サイン(51.2.S)の値は「ON」であるので、単位機能名(A2)は削除またはカスケード設定から削除しない。[4]単位機能名#3の許可サイン(51.3.S)の値は「OFF」であるので、単位機能名(A3)は削除またはカスケード設定する。[5]単位機能名#4の許可サイン(51.4.S)の値は「OFF」であるので、単位機能名(A4)は削除またはカスケード設定する。
【0160】
次に、図29は、アプリケーションプログラムA308でのドラッグアンドドロップ形式または直接コマンド形式などによる実行時の動作を示したフローチャートである。
【0161】
図29において、利用者タイプに対応したアプリケーションプログラムA用の機能使用の許可テーブル51,52,53・・・のいずれかを読み込む(ステップS67)。ここでは上記のように記憶した利用者タイプに対応したアプリケーションプログラムA用の機能使用の許可テーブルを読み込む。例えば、ユーザ名が「TANAKA」であれば、利用者タイプ名が「OPERATOR」であるので、アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51を読み込む。
【0162】
次いで、該当の単位機能の使用は許可されているかどうかを判断し(ステップS68)、その判断結果に応じてステップS69とS70の処理を行う。アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51が図7のように設定されている場合で、単位機能名(A3)が選択された場合の判断処理について説明する。
【0163】
[1]アプリケーションプログラムA用の機能使用の許可テーブルOPERATOR用51の単位機能名#0(51.0.F),単位機能名#1(51.1.F),単位機能名#2(51.2.F),単位機能名#3(51.3.F),単位機能名#4(51.4.F)をサーチして、単位機能名=A3のレコードを探す。該当するレコードは、単位機能名#3(51.3.F)である。[2]単位機能名の#3の許可サイン(51.3.S)値は「OFF」であるので、単位機能名(A3)は許可されていない。
【0164】
該当機能が許可されている場合は、ステップS69へ進み、該当単位機能を実行する。一方、許可されていない場合はステップS70へ進み、該当単位機能は使用を許可されていないことをメッセージ表示し、終了する。
【0165】
このように本第4の実施の形態では、利用者毎の機能使用の許可設定機構4dがアプリケーションプログラム用の機能使用の許可テーブルをバッチ処理として予め作成しておくので、ログイン時に毎回、機能使用の許可テーブルを生成することがなくなる。したがって、システムの規模が大規模化し、1回のログインで多くのアプリケーションプログラムを動作させる場合に、テーブル作成などによる準備時間を減らすことができ、待ち時間が減少する利点がある。
【0166】
(第5の実施の形態)
図30は、本発明の第5の実施の形態によるコンピュータシステムの構成ブロック図である。本第5の実施の形態は、利用者毎の機能使用の許可設定機構4a(図1参照)を実装しないで、個々のアプリケーションプログラムが直接、利用者タイプの決定テーブル2や利用者タイプ別の機能使用の許可定義テーブル3を参照する方式である。この場合には、個々のアプリケーションプログラムには、ユーザ名,利用者タイプを意識した処理が組み込まれることになる。
【0167】
図30において、アプリケーションプログラムA408、アプリケーションプログラムB409,アプリケーションプログラムC410は、それぞれ、ログイン時の利用者毎の動作環境設定機構1から与えられたログイン時のユーザ名を検索キーにして利用者タイプの決定テーブル2を参照し、ユーザ名を対応する利用者タイプ名を決定する。
【0168】
また、アプリケーションプログラムA408、アプリケーションプログラムB409,アプリケーションプログラムC410は、それぞれ、決定した利用者タイプ名に対して利用者タイプ別の機能使用の許可定義テーブル3を参照して使用の「許可」「禁止」の処理の制御を行う。
【0169】
次に、本第5の実施の形態の動作を図31〜図33を参照して説明する。なお、図31〜図33では、アプリケーションプログラムA408について示すが、アプリケーションプログラムB409やC410についても同様である。
【0170】
図31は、アプリケーションプログラムA408のコマンドリストメニューの表示時の動作を示したフローチャートである。図31において、利用者タイプの決定テーブル2を読み込み(ステップS74)、利用者タイプの決定テーブル2を検索してユーザ名に対応した利用者タイプ名を探すことを次のようにして行う(ステップS75)。例えば、ユーザ名が、「TANAKA」の場合について説明する。
【0171】
[1]ユーザ名#1(3.1.N),ユーザ名#2(3.2.N),ユーザ名#3(3.3.N)の順にサーチする。[2]ユーザ名#3(3.3.N)が「TANAKA」と一致することを検出する。[3]ユーザ名#3(3.3.N)に対応したユーザ名#3の利用者タイプ(3.3.T)を取り出し、利用者タイプ名=OPERATORとする。
【0172】
利用者タイプ名が見つかると(ステップS76)、利用者タイプ別の機能使用の許可定義テーブル3を読み込み(ステップS77)、表示しようとするコマンドリストメニューのコマンドのうち、許可されていない単位機能名(コマンド名)を次のようにして削除する(ステップS78)。
【0173】
利用者タイプ別の機能使用の許可定義テーブル3が図5のように設定されている場合について説明する。[1]単位機能名#0(4.A.0.F)の値である(A0)における、単位機能名#0の許可された利用者タイプ名1(4.A.0.T1),単位機能名#0の許可された利用者タイプ名2(4.A.0.T2),単位機能名#0の許可された利用者タイプ名3(4.A.0.T3),単位機能名#0の許可された利用者タイプ名4(4.A.0.T4)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[2]単位機能名#0の許可された利用者タイプ名1(4.A.0.T1)の値が「OPERATOR」である。したがって、単位機能名#0(A0)は許可されているのでコマンドリストから削除しない。
【0174】
[3]単位機能名#1(4.A.1.F)の値である(A1)における、単位機能名#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),単位機能名#1の許可された利用者タイプ名3(4.A.1.T3),単位機能名#1の許可された利用者タイプ名4(4.A.1.T4)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[4]単位機能名#1の許可された利用者タイプ名1(4.A.1.T1)の値が「OPERATOR」である。したがって、単位機能名#1(A1)は許可されているのでコマンドリストから削除しない。
【0175】
[5]単位機能名#2(4.A.2.F)の値である(A2)において、単位機能名#2の許可された利用者タイプ名1(4.A.2.T1),単位機能名#2の許可された利用者タイプ名2(4.A.2.T2),単位機能名#2の許可された利用者タイプ名3(4.A.2.T3)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[6]単位機能名#2の許可された利用者タイプ名1(4.A.2.T1)の値が「OPERATOR」である。したがって、単位機能名#2(A2)は許可されているのでコマンドリストから削除しない。
【0176】
[7]単位機能名#3(4.A.3.F)の値である「A3」における、単位機能名#3の許可された利用者タイプ名1(4.A.3.T1)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[8]単位機能名#3の許可された利用者タイプ名1(4.A.3.T1)の値は「OPERATOR」と一致しない。したがって、単位機能名#3(A3)は許可されていないのでコマンドリストから削除する。
【0177】
[9]単位機能名#4(4.A.4.F)の値である(A4)における、単位機能名#3の許可された利用者タイプ名1(4.A.4.T1)の値が利用者タイプ名「OPERATOR」と一致するか調べる。[10]単位機能名#4の許可された利用者タイプ名1(4.A.4.T1)の値は「OPERATOR」と一致しない。したがって、単位機能名#4(A4)は許可されていないのでコマンドリストから削除する。
【0178】
以上の削除処理を終了すると、コマンドリストメニューの表示処理へ進む(ステップS79)。一方、ステップS76において、利用者タイプ名が見つからなかった場合には、該当機能全体の使用が許可されていないことを意味するメッセージを表示して終了する(ステップS80)。
【0179】
次に、図32は、アプリケーションプログラムA408のプルダウンメニューまたはポップアップメニューの表示時の動作を示したフローチャートである。図32において、利用者タイプの決定テーブル2を読み込み(ステップS83)、利用者タイプの決定テーブル2を検索してユーザ名に対応した利用者タイプ名を探すことを次のようにして行う。
【0180】
例えば、ユーザ名が「TANAKA」の場合について説明する。[1]ユーザ名#1(3.1.N),ユーザ名#2(3.2.N),ユーザ名#3(3.3.N)の順にサーチする。[2」ユーザ名#3(3.3.N)が「TANAKA」と一致することを検出する。[3]ユーザ名#3(3.3.N)に対応したユーザ名#3の利用者タイプ(3.3.T)を取り出し、利用者タイプ名=OPERATORとする。
【0181】
利用者タイプ名が見つかった場合には(ステップS85)、利用者タイプ別の機能使用の許可定義テーブル3を読み込み(ステップS86)、表示しようとするプルダウンメニューまたはポップアップメニュー内の単位機能名のうち、許可されていない単位機能名を削除またはカスケード(選択できない状態)することを次のようにして行う(ステップS87)。
【0182】
利用者タイプ別の機能使用の許可定義テーブル3が図5のように設定されている場合について説明する。[1]単位機能名#0(4.A.0.F)の値である(A0)における、単位機能名#0の許可された利用者タイプ名1(4.A.0.T1),単位機能名#0の許可された利用者タイプ名2(4.A.0.T2),単位機能名#0の許可された利用者タイプ名3(4.A.0.T3),単位機能名#0の許可された利用者タイプ名4(4.A.0.T4)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[2]単位機能名#0の許可された利用者タイプ名1(4.A.0.T1)の値が「OPERATOR」である。したがって、単位機能名#0(A0)は許可されているので削除またはカスケードしない。
【0183】
[3]単位機能名#1(4.A.1.F)の値である(A1)における、単位機能名#1の許可された利用者タイプ名1(4.A.1.T1),単位機能名#1の許可された利用者タイプ名2(4.A.1.T2),単位機能名#1の許可された利用者タイプ名3(4.A.1.T3),単位機能名#1の許可された利用者タイプ名4(4.A.1.T4)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[4]単位機能名#1の許可された利用者タイプ名1(4.A.1.T1)の値が「OPERATOR」である。したがって、単位機能名#1(A1)は許可されているので削除またはカスケードしない。
【0184】
[5]単位機能名#2(4.A.2.F)の値である「A2」における、単位機能名#2の許可された利用者タイプ名1(4.A.2.T1),単位機能名#2の許可された利用者タイプ名2(4.A.2.T2),単位機能名#2の許可された利用者タイプ名3(4.A.2.T3)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[6]単位機能名#2の許可された利用者タイプ名1(4.A.2.T1)の値が「OPERATOR」である。したがって、単位機能名#2(A2)は許可されているので削除またはカスケードしない。
【0185】
[7]単位機能名#3(4.A.3.F)の値である(A3)における、単位機能名#3の許可された利用者タイプ名1(4.A.3.T1)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[8]単位機能名#3の許可された利用者タイプ名1(4.A.3.T1)の値は「OPERATOR」と一致しない。したがって、単位機能名#3(A3)は許可されていないので削除またはカスケードする。
【0186】
[9]単位機能名#4(4.A.4.F)の値である(A4)における、単位機能名#3の許可された利用者タイプ名1(4.A.4.T1)の値が利用者タイプ名「OPERATOR」と一致するか調べる。[10]単位機能名#4の許可された利用者タイプ名1(4.A.4.T1)の値は「OPERATOR」と一致しない。したがって、単位機能名#4(A4)は許可されていないので削除またはカスケードする。
【0187】
以上の削除処理を終了すると、コマンドリストメニューの表示処理へ進む(ステップS89)。一方、ステップS85において、利用者タイプが見つからなかった場合には、該当機能全体の使用が許可されていないことを意味するメッセージを表示して終了する(ステップS90)。
【0188】
次に、図33は、アプリケーションプログラムA408のドラッグアンドドロップ形式または直接コマンド形式などの実行時の動作を示したフローチャートである。図33において、利用者タイプの決定テーブル2を読み込み(ステップS95)、利用者タイプの決定テーブル2を検索してユーザ名に対応した利用者タイプ名を探すことを次のようにして行う(ステップS94)。
【0189】
例えば、ユーザ名が「TANAKA」の場合について説明する。[1]ユーザ名#1(3.1.N),ユーザ名#2(3.2.N),ユーザ名#3(3.3.N)の順にサーチする。[2]ユーザ名#3(3.3.N)が「TANAKA」と一致することを検出する。[3」ユーザ名#3(3.3.N)に対応したユーザ名#3の利用者タイプ(3.3.T)を取り出し、利用者タイプ名=OPERATORとする。
【0190】
利用者タイプ名が見つかった場合には(ステップS96)、利用者タイプ別の機能使用の許可定義テーブル3を読み込み(ステップS97)、該当単位機能は許可されているかを次のようにして調べる(ステップS98)。該当機能が(A2)であり、利用者タイプ別の機能使用の許可定義テーブル3が図5のように設定されている場合について説明する。
【0191】
[1]単位機能名#2(4.A.2.F)の値である(A2)において、単位機能名#3の許可された利用者タイプ名1(4.A.2.T1),単位機能名#3の許可された利用者タイプ名2(4.あ.2.T2),単位機能名#2の許可された利用者タイプ名3(4.A.2.T3)の値が利用者タイプ名「OPERATOR」と一致するかを調べる。[2]単位機能名#2の許可された利用者タイプ名1(4.A.2.T1)の値が「OPERATOR」と一致するので、許可されていると判断する。
【0192】
該当の利用者タイプ名が許可されている場合は、ステップS99へ進み、該当単位機能を実行する(ステップS99)。一方、ステップS96において利用者タイプ名が見つからなかった場合やステップS98において該当の利用者タイプ名が許可されていない場合は、ステップS100へ進み、該当機能全体の使用が許可されていないことを意味するメッセージを表示し終了する。
【0193】
このように本第5の実施の形態では、個々のアプリケーションプログラムが利用者タイプの決定テーブル2や利用者のタイプ別の機能使用の許可定義テーブル3を参照するので、構成が簡素になるという利点がある。但し、全てのアプリケーションプログラムに利用者毎の機能使用の許可設定機構を埋め込むことになるので、冗長性が出るとともに、新規のアプリケーションの追加に関してアプリケーション相互の独立性が低くなるという不利はある。
【0194】
【発明の効果】
以上説明したように本発明よれば、利用者毎に任意の機能構成を設定できるアプリケーションプログラムを実装できるので、予め決めた約束毎を守ってアプリケーションプログラムを作り込んでおくことにより、利用者タイプ毎の機能使用の許可の設定を任意に変更できるようになる。また、利用者タイプの追加/変更も任意に行えるようになる。さらに、各アプリケーションプログラムは、他のアプリケーションプログラムとは独立して機能の追加/変更を行うことができるようになる。
【0195】
また、本発明によれば、アプリケーションプログラム側では機能使用の許可方法を選択できるようになる。例えば、ポップアップメニューやプルダウンメニューまたはコマンドメニューなどのメニューで許可されていない機能を選択できないように制限する方法が採用できる。また、ドラッグ&ドロップによる指示またはコマンドラインから直接コマンドを入力することでアプリケーションが起動される場合に、機能の実行処理の受付条件として機能使用の許可をチェックする方法が採用できる。これらの2つの方法は、併用することもができ、また選択的に採用することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態によるコンピュータシステムの構成ブロック図である。
【図2】利用者タイプ決定テーブルの構成例である。
【図3】利用者タイプ別の機能使用の許可/禁止の規定例である。
【図4】機能(アプリケーションプログラム)の階層構成例である。
【図5】利用者タイプ別の機能使用の許可定義テーブルの構成例である。
【図6】利用者タイプ別の機能使用の許可定義テーブルの構成例である。
【図7】利用者タイプ名がOPERATORの場合のアプリケーションプログラムA用の機能使用の許可テーブルの構成例である。
【図8】利用者タイプ名がMAINTAINの場合のアプリケーションプログラムA用の機能使用の許可テーブルの構成例である。
【図9】利用者タイプ名がTRAININGの場合のアプリケーションプログラムA用の機能使用の許可テーブルの構成例である。
【図10】利用者タイプ名がOPERATORの場合のアプリケーションプログラムB用の機能使用の許可テーブルの構成例である。
【図11】利用者タイプ名がMAINTAINの場合のアプリケーションプログラムB用の機能使用の許可テーブルの構成例である。
【図12】利用者タイプ名がTRAININGの場合のアプリケーションプログラムB用の機能使用の許可テーブルの構成例である。
【図13】利用者タイプ名がOPERATORの場合のアプリケーションプログラムC用の機能使用の許可テーブルの構成例である。
【図14】利用者タイプ名がMAINTAINの場合のアプリケーションプログラムC用の機能使用の許可テーブルの構成例である。
【図15】利用者タイプ名がTRAININGの場合のアプリケーションプログラムC用の機能使用の許可テーブルの構成例である。
【図16】第1の実施の形態の利用者毎の機能使用の許可設定機構の動作を示すフローチャートである。
【図17】第1の実施の形態のアプリケーションプログラムのコマンドリストメニューの表示時の動作を示すフローチャートである。アプリケーションプログラムA8について示すが、B9,C10についても同様である。
【図18】第1の実施の形態のアプリケーションプログラムのプルダウンメニューまたはポップアップメニューの表示時の動作を示すフローチャートである。アプリケーションプログラムA8について示すが、B9,C10についても同様である。
【図19】第1の実施の形態のアプリケーションプログラムのドラッグアンドドロップ形式または直接コマンド形式などの実行時の動作を示すフローチャートである。アプリケーションプログラムA8について示すが、B9,C10についても同様である。
【図20】本発明の第2の実施の形態によるコンピュータシステムの構成ブロック図である。
【図21】第2の実施の形態の利用者毎の機能使用の許可設定機構の動作を示すフローチャートである。
【図22】本発明の第3の実施の形態によるコンピュータシステムの構成ブロック図である。
【図23】第3の実施の形態の利用者毎の機能使用の許可設定機構の動作を示すフローチャートである。
【図24】本発明の第4の実施の形態によるコンピュータシステムの構成ブロック図である。
【図25】第4の実施の形態の利用者毎の機能使用の許可設定機構の動作を示すフローチャートである。
【図26】第4の実施の形態のアプリケーションプログラムの初期処理の動作を示すフローチャートである。アプリケーションプログラムA308について示すが、B309,C310についても同様である。
【図27】第4の実施の形態のアプリケーションプログラムのコマンドリストメニューの表示時の動作を示すフローチャートである。アプリケーションプログラムA308について示すが、B309,C310についても同様である。
【図28】第4の実施の形態のアプリケーションプログラムのプルダウンメニュいまたはポップアップメニューの表示時の動作を示すフローチヤートである。アプリケーションプログラムA308について示すが、B309,C310についても同様である。
【図29】第4の実施の形態のアプリケーションプログラムのドラッグアンドドロップ形式または直接コマンド形式などの実行時の動作を示すフローチャートである。アプリケーションプログラムA308について示すが、B309,C310についても同様である。
【図30】本発明の第5の実施の形態のコンピュータシステムの構成ブロック図である。
【図31】第5の実施の実施の形態のアプリケーションプログラムのコマンドリストメニューの表示時の動作を示すフローチャートである。アプリケーションプログラムA408について示すが、B409,C410についても同様である。
【図32】第5の実施の形態のアプリケーションプログラムのプルダウンメニューまたはポップアップメニューの表示時の動作を示すフローチャートである。アプリケーションプログラムA408について示すが、B409,C410についても同様である。
【図33】第5の実施の形態のアプリケーションプログラムのドラッグアンドドロップ形式または直接コマンド形式などの実行時の動作を示すフローチャートである。アプリケーションプログラムA408について示すが、B409,C410についても同様である。
【符号の説明】
1 ログイン時の利用者毎の動作環境設定機構
2 利用者タイプの決定テーブル
3 利用者タイプ別の機能使用の許可定義テーブル
4a,4b,4c,4d 利用者毎の機能使用の設定機構
5 アプリケーションプログラムA用の機能使用の許可テーブル
6 アプリケーションプログラムB用の機能使用の許可テーブル
7 アプリケーションプログラムC用の機能使用の許可テーブル
8、308,408 アプリケーションプログラムA
9,309,409 アプリケーションプログラムB
10,310,410 アプリケーションプログラムC
51 アプリケーションプログラムA用の機能使用の許可テーブル(OPERATOR用)
52 アプリケーションプログラムA用の機能使用の許可テーブル(MAINTAIN用)
53 アプリケーションプログラムA用の機能使用の許可テーブル(TRAINING用)
61 アプリケーションプログラムB用の機能使用の許可テーブル(OPERATOR用)
62 アプリケーションプログラムB用の機能使用の許可テーブル(MAINTAIN用)
63 アプリケーションプログラムB用の機能使用の許可テーブル(TRAINING用)
71 アプリケーションプログラムC用の機能使用の許可テーブル(OPERATOR用)
72 アプリケーションプログラムC用の機能使用の許可テーブル(MAINTAIN用)
73 アプリケーションプログラムC用の機能使用の許可テーブル(TRAINING用)
Claims (4)
- 対話形式の操作により複数のアプリケーションプログラムを実行するコンピュータシステムにおいて、
ログイン時のユーザ名に対して利用者のタイプを対応付けた第1テーブルと、
前記複数のアプリケーションプログラムについて、前記利用者のタイプ毎に、各アプリケーションプログラムが有する各単位機能に対して使用の許可または禁止を定義する第2テーブルと、
利用者がログインした時、前記第1テーブルを参照してユーザ名から利用者タイプを決定し、前記第2テーブルを参照して前記アプリケーションプログラム毎に機能使用の許可テーブルを生成する機能使用の許可設定機構と、
前記対話形式の操作によるプログラム実行時に、前記機能使用の許可設定機構が生成した前記機能使用の許可テーブルを参照して、利用者に対して該当機能の使用を許可するかどうかのチェックを行う処理が組み込まれた前記アプリケーションプログラムと、
を備えることを特徴とするコンピュータシステム。 - 請求項1に記載のコンピュータシステムにおいて、
利用者がログインした時にログイン時のユーザ名に対して利用者のタイプを対応づけた前記第1テーブルに該当するユーザ名が登録されていなかった時に、予め定めておいた利用者タイプを設定する手段、
を備えることを特徴とするコンピュータシステム。 - 対話形式の操作により複数のアプリケーションプログラムを実行するコンピュータシステムにおいて、
前記複数のアプリケーションプログラムについて、ログイン時のユーザ名に対して各アプリケーションプログラムが持つ単位機能の使用の許可または禁止を定義するテーブルと、
利用者がログインした時、前記テーブルを参照して前記アプリケーションプログラム毎に機能使用の許可テーブルを生成する機能使用の許可設定機構と、
前記対話形式の操作によるプログラム実行時に、前記機能使用の許可設定機構が生成した前記機能使用の許可テーブルを参照して、利用者に対して該当機能の使用を許可するかどうかのチェックを行う処理が組み込まれた前記アプリケーションプログラムと、
を備えることを特徴とするコンピュータシステム。 - 対話形式の操作により複数のアプリケーションプログラムを実行するコンピュータシステムにおいて、
ログイン時のユーザ名に対して利用者のタイプを対応付けた第1テーブルと、
前記複数のアプリケーションプログラムについて、前記利用者のタイプ毎に、各アプリケーションプログラムが有する各単位機能に対して使用の許可または禁止を定義する第2テーブルと、
バッチ処理にて前記第2テーブルを参照して前記アプリケーションプログラム毎に機能使用の許可テーブルを全ての利用者のタイプに対して生成するとともに、前記第2テーブルが更新された場合に前記アプリケーションプログラム毎に機能使用の許可テーブルを更新する機能使用の許可設定機構と、
前記対話形式の操作によるプログラム実行時に、ログイン時の利用者のタイプを前記第1テーブルを参照して確認する処理と、前記機能使用の許可設定機構が生成した前記機能使用の許可テーブルを参照して利用者に対して該当機能の使用を許可するかどうかのチェックを行う処理とが組み込まれた前記アプリケーションプログラムと、
を備えることを特徴とするコンピュータシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000085267A JP4718662B2 (ja) | 2000-03-24 | 2000-03-24 | コンピュータシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000085267A JP4718662B2 (ja) | 2000-03-24 | 2000-03-24 | コンピュータシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001273181A JP2001273181A (ja) | 2001-10-05 |
JP4718662B2 true JP4718662B2 (ja) | 2011-07-06 |
Family
ID=18601628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000085267A Expired - Lifetime JP4718662B2 (ja) | 2000-03-24 | 2000-03-24 | コンピュータシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4718662B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7484106B2 (en) | 2003-10-24 | 2009-01-27 | Microsoft Corporation | Pre-login data access |
JP2005158032A (ja) * | 2003-10-30 | 2005-06-16 | Canon Inc | 情報処理方法及び情報処理装置 |
US8117651B2 (en) | 2004-04-27 | 2012-02-14 | Apple Inc. | Method and system for authenticating an accessory |
US7823214B2 (en) * | 2005-01-07 | 2010-10-26 | Apple Inc. | Accessory authentication for electronic devices |
JP4646734B2 (ja) * | 2005-08-17 | 2011-03-09 | シャープ株式会社 | 携帯情報端末装置 |
JP4777758B2 (ja) * | 2005-12-01 | 2011-09-21 | 株式会社日立ソリューションズ | 認証システム |
JP4274227B2 (ja) | 2006-10-26 | 2009-06-03 | コニカミノルタビジネステクノロジーズ株式会社 | 画像処理装置及びプログラム |
JP4645688B2 (ja) * | 2008-06-16 | 2011-03-09 | コニカミノルタビジネステクノロジーズ株式会社 | 画像処理装置、認証方法および認証プログラム |
JP6007646B2 (ja) * | 2012-07-31 | 2016-10-12 | カシオ電子工業株式会社 | 印刷装置、追加組込ソフト処理装置及び追加組込ソフト実行制御方法 |
JP6232972B2 (ja) * | 2013-11-25 | 2017-11-22 | 凸版印刷株式会社 | 可搬型電子媒体、及び入出力機能制御方法 |
JP7251320B2 (ja) | 2019-05-31 | 2023-04-04 | セイコーエプソン株式会社 | 制御プログラム、電子機器 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09288609A (ja) * | 1996-04-23 | 1997-11-04 | Mitsubishi Electric Corp | ファイルの安全管理方式 |
JPH1153316A (ja) * | 1997-08-04 | 1999-02-26 | B S S:Kk | 業務処理用プログラムの利用管理方式 |
JPH11338825A (ja) * | 1998-05-29 | 1999-12-10 | Hitachi Ltd | 組織構成を考慮したアクセス制御方法 |
WO2000004435A1 (en) * | 1998-07-17 | 2000-01-27 | Electronic Data Systems Corporation | System and method for selectively defining access to application features |
JP2000172646A (ja) * | 1998-12-04 | 2000-06-23 | Toshiba Corp | アプリケーション機能指定装置及び記憶媒体 |
-
2000
- 2000-03-24 JP JP2000085267A patent/JP4718662B2/ja not_active Expired - Lifetime
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09288609A (ja) * | 1996-04-23 | 1997-11-04 | Mitsubishi Electric Corp | ファイルの安全管理方式 |
JPH1153316A (ja) * | 1997-08-04 | 1999-02-26 | B S S:Kk | 業務処理用プログラムの利用管理方式 |
JPH11338825A (ja) * | 1998-05-29 | 1999-12-10 | Hitachi Ltd | 組織構成を考慮したアクセス制御方法 |
WO2000004435A1 (en) * | 1998-07-17 | 2000-01-27 | Electronic Data Systems Corporation | System and method for selectively defining access to application features |
JP2000172646A (ja) * | 1998-12-04 | 2000-06-23 | Toshiba Corp | アプリケーション機能指定装置及び記憶媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP2001273181A (ja) | 2001-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7584417B2 (en) | Role-dependent action for an electronic form | |
US10887338B2 (en) | Creating notes on lock screen | |
US7523391B1 (en) | Indicating change to data form | |
US8813250B2 (en) | Access control program, system, and method | |
JP4718662B2 (ja) | コンピュータシステム | |
US6718386B1 (en) | Methods, system, and article for displaying privilege state data | |
JPH07262072A (ja) | ファイル管理装置 | |
US20060107224A1 (en) | Building a dynamic action for an electronic form | |
US7257622B2 (en) | File propagation tool | |
US6339439B1 (en) | Device for modifying appearance of related display planes | |
US7900155B2 (en) | System and method for providing information about an operation's applicability to an item | |
JPH0895767A (ja) | プログラム部品を用いたプログラム生成方法 | |
JP4276717B2 (ja) | データベースシステム | |
JPH06131346A (ja) | 文書処理装置 | |
KR20040026485A (ko) | 제안서 작성 시스템 및 방법 | |
JPH02148168A (ja) | 編集支援方法 | |
JP7298208B2 (ja) | 情報処理装置及びプログラム | |
EP1211597A2 (en) | Parameter tuner system | |
JPH02204885A (ja) | 文字読取システム | |
JP4887243B2 (ja) | 情報照合装置、情報照合方法、プログラムおよび記録媒体 | |
JP3586114B2 (ja) | マルチウィンドウ画面を有する情報処理装置および記録媒体 | |
JP7256919B1 (ja) | 業務システム用の権限管理システム | |
Vesterli | Oracle ADF Survival Guide: Mastering the Application Development Framework | |
JPH09101871A (ja) | ハイパーメディア装置 | |
JP3386300B2 (ja) | プログラム起動方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070323 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100713 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100908 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101019 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101208 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110308 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110401 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4718662 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140408 Year of fee payment: 3 |
|
EXPY | Cancellation because of completion of term |