JP2007094673A - Apparatus and use restriction program - Google Patents
Apparatus and use restriction program Download PDFInfo
- Publication number
- JP2007094673A JP2007094673A JP2005282061A JP2005282061A JP2007094673A JP 2007094673 A JP2007094673 A JP 2007094673A JP 2005282061 A JP2005282061 A JP 2005282061A JP 2005282061 A JP2005282061 A JP 2005282061A JP 2007094673 A JP2007094673 A JP 2007094673A
- Authority
- JP
- Japan
- Prior art keywords
- user
- function
- class
- authentication
- authority
- 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.)
- Pending
Links
Images
Abstract
Description
本発明は、機器及び利用制限プログラムに関するものであり、特に利用者を認証し、機能を実行する際に認証された利用者が実行可能であるか否か証明を行う技術に関するものである。 The present invention relates to a device and a use restriction program, and more particularly to a technique for authenticating a user and proving whether or not the authenticated user is executable when executing a function.
従来、プリンタ、コピーおよびスキャナなどの複数の機能を一つの筐体内に収納した複合機が知られている。かかる複合機では、UNIX(登録商標)などの汎用OS上に、プリンタアプリ、コピーアプリおよびスキャナアプリと呼ばれる複数のアプリケーションを搭載し、これらのアプリケーションの実行処理を切替えながら複数の機能を実現していた。 2. Description of the Related Art Conventionally, there has been known a multi-function machine in which a plurality of functions such as a printer, a copy, and a scanner are stored in a single casing. In such a multifunction device, a plurality of applications called a printer application, a copy application, and a scanner application are mounted on a general-purpose OS such as UNIX (registered trademark), and a plurality of functions are realized while switching execution processes of these applications. It was.
ところが、上記プリンタアプリ、コピーアプリおよびスキャナアプリは、それぞれエンジン制御、メモリ制御およびシステム制御などを別個におこなっているので、重複処理という無駄が生じていた。 However, since the printer application, the copy application, and the scanner application perform engine control, memory control, system control, and the like separately, wasteful duplication processing has occurred.
このため、特許文献1では、複合機に搭載される複数のアプリケーションがそれぞれ担っていたエンジン制御、メモリ制御およびシステム制御などの処理を共通処理部分(プラットホーム)として各アプリケーションから括り出すことにより、アプリケーションの開発効率の向上を図っている。
For this reason, in
また、特許文献2では、印刷装置に搭載される印刷制御ソフトウェアを、オブジェクト指向設計による複数のソフトウェア部品から構成し、かかる部品群の協調動作により印刷処理をおこなうこととしている。
しかしながら、この特許文献1で開示されている発明は、ハードウェアを制御する処理部分を共通化するものであり、各アプリケーションの内部処理全般を共通化するものではなく、さらには共通化した上で内部処理を機能に応じたクラスに分割していないため、内部処理全般の開発効率が良くないという問題がある。つまり、複合機上のアプリケーションには、開発効率の向上を図るためには内部処理を共通化して特徴のある機能をクラスとして分割することで改善の余地が残されている。
However, the invention disclosed in
たとえば、利用者が装置に備えられた機能を利用する際に認証を行う場合において、機能毎の認証を共通化した上で、管理した利用者の情報を用いて認証を行う機能と認証された利用者が機能を利用することができることを証明する機能とを分割することが可能である。 For example, when a user performs authentication when using a function provided in the device, the authentication for each function is made common and authentication is performed using the managed user information. It is possible to divide the function that proves that the user can use the function.
また、特許文献2で開示されている発明は、印刷制御ソフトウェアをオブジェクト指向設計による複数のソフトウェア部品から構成したものであり、機能を利用する利用者の認証又は認証された利用者が機能を利用できることを証明するまでの流れを制御するソフトウェア部品を開示したものではない。したがって、多機能化により機能毎に利用者が実行可能な権限を有するか否か判断する複合機において、特許文献2で開示されている発明を応用して、利用者の認証に対応するソフトウェア部品を作成したとしても、管理した利用者の情報を用いて認証を行う機能と認証された利用者が機能を利用することができることを証明する機能とを分割して、利用者の認証処理及び認証された利用者が機能を利用することができることを証明する処理を効率よく制御することは容易でない。 The invention disclosed in Patent Document 2 is a print control software configured by a plurality of software components based on object-oriented design, and authentication of a user who uses the function or an authenticated user uses the function. It does not disclose software components that control the flow until it can be proved. Therefore, in a multi-function machine that determines whether or not a user has the authority to be executed for each function by multi-functionalization, a software component corresponding to user authentication by applying the invention disclosed in Patent Document 2 Even if a user is created, the function to authenticate using the managed user information and the function to prove that the authenticated user can use the function are divided into user authentication processing and authentication. It is not easy to efficiently control the process of proving that a functioned user can use the function.
これらのことから、複合機に搭載されるアプリケーションの利用者の認証処理及び認証された利用者が機能を利用できるか否かの判断をいかにして効率よく実現するかが大きな課題となっている。なお、かかる課題は複合機についてのみ生じるものではなく、たとえば、複数の機能を有し、かつ所定の権限を有する利用者が認証を行った場合に、機能毎に実行を許可する利用者認証装置を形成するような場合にも同様に生ずる課題である。 For these reasons, it is a big issue how to efficiently realize the authentication process of the user of the application installed in the MFP and whether the authenticated user can use the function or not. . Note that such a problem does not arise only for the multifunction peripheral. For example, when a user who has a plurality of functions and has a predetermined authority performs authentication, a user authentication device that permits execution for each function This is also a problem that arises in the same way when forming.
本発明は、上述した従来技術による問題点を解消するためになされたものであり、利用者による機能の利用の可否判断を拡張性のある構成によって行うことのできる機器及び利用制限プログラムを提供することを目的とする。 The present invention has been made to solve the above-described problems caused by the prior art, and provides a device and a use restriction program that enable a user to determine whether or not a function can be used with a scalable configuration. For the purpose.
そこで上記課題を解決するため、本発明は、機能の実行を要求する利用者を識別するための利用者識別情報を管理する利用者識別情報管理手段と、それぞれの前記利用者に固有の情報であって、当該情報の公開が制限される利用者属性情報を管理する利用者属性情報管理手段と、前記利用者識別情報と前記利用者属性情報とに基づいて前記利用者が認証された際に生成される認証証明手段とを有し、前記認証証明手段の有無に応じて実行が要求された機能の利用の可否を判断することを特徴とする。 Therefore, in order to solve the above-described problems, the present invention includes user identification information management means for managing user identification information for identifying a user who requests execution of a function, and information unique to each user. When the user is authenticated based on the user attribute information management means for managing the user attribute information for which the disclosure of the information is restricted, the user identification information and the user attribute information And a generated authentication certification means, and it is determined whether or not the function requested to be executed can be used according to the presence or absence of the authentication certification means.
このような機器では、利用者による機能の利用の可否判断を拡張性のある構成によって行うことができる。 In such a device, whether or not a user can use a function can be determined by a scalable configuration.
また、上記課題を解決するため、本発明は、上記機器を上記各手段として機能させるための利用制限プログラムとしてもよい。 Moreover, in order to solve the said subject, this invention is good also as a utilization restriction program for functioning the said apparatus as said each means.
本発明によれば、利用者による機能の利用の可否判断を拡張性のある構成によって行うことのできる機器及び利用制限プログラムを提供するができる。 According to the present invention, it is possible to provide a device and a use restriction program that can determine whether or not a user can use a function with an expandable configuration.
以下、図面に基づいて本発明の実施の形態を説明する。なお、本実施の形態では、この発明を画像形成装置に適用した場合について説明するが、本発明はこれに限らず各種装置に適用することができる。 Hereinafter, embodiments of the present invention will be described with reference to the drawings. In this embodiment, the case where the present invention is applied to an image forming apparatus will be described. However, the present invention is not limited to this and can be applied to various apparatuses.
まず、本発明の画像形成装置(以下「複合機」と言う)1の概要について図1、図2、図3、図4、図15および図16を用いて説明する。図1は、本実施の形態に係る複合機1を取り巻くネットワーク環境を説明するためのネットワーク図であり、図2は、図1に示した複合機1のハードウェア構成を示すブロック図であり、図3は、図1に示した複合機1のソフトウェアとハードウェアの関係を説明するための概念図である。図4は、複合機1の操作パネル400の一例を示した図である。そして、図15は、複合機に搭載されるソフトウェア構成の変遷を説明するための説明図であり、図16は、従来の複合機のソフトウェアとハードウェアの関係を説明するための説明図である。
First, an outline of an image forming apparatus (hereinafter referred to as “multifunction machine”) 1 according to the present invention will be described with reference to FIGS. 1, 2, 3, 4, 15, and 16. FIG. FIG. 1 is a network diagram for explaining a network environment surrounding the
図1に示すように、近年のネットワーク化の進展により、オフィスなどに設けられたPC(Personal Computer)などの機器は、LAN(Local Area Network)などのネットワークに接続され、相互に通信することが通常となった。たとえば、本図に示したように、かかるネットワークには、クライアントPC、SMTP(Simple Mail Transfer Protocol)サーバ、FTP(File Transfer Protocol)サーバ、サーバPCなどが接続され、電子メールの送受信やファイル転送をすることができ、モデム接続された配信サーバは、オフィス外のファックス装置と通信することができる。 As shown in FIG. 1, devices such as a PC (Personal Computer) provided in an office or the like are connected to a network such as a LAN (Local Area Network) and can communicate with each other due to recent progress in networking. It became normal. For example, as shown in the figure, a client PC, an SMTP (Simple Mail Transfer Protocol) server, an FTP (File Transfer Protocol) server, a server PC, etc. are connected to such a network to send and receive e-mails and transfer files. The modem-connected delivery server can communicate with a fax machine outside the office.
このようなネットワーク化の進展に伴い、複合機1もかかるネットワークに接続され、PC等の機器と相互に通信することが可能となり、ハードディスク等の記憶装置を内蔵することで、いわゆるネットワーク複合機へと進化し、ユーザの様々なニーズに応えることができるようになった。
With the progress of such networking, the
具体的には、複合機1は、通常のコピー機能に加えて、クライアントPCからの印刷要求により文書データ等を印刷するプリンタ機能、クライアントPCからのファックス要求により文書データ等をサーバPCに接続されたモデムを経由して他のオフィスのファックス機器に送信するファックス機能、受信したファックス文書やコピー文書を内蔵したハードディスクに蓄積する蓄積機能などを有している。このような多くの機能を実現するために、従来からの複合機に搭載されるソフトウェアは規模が大きくなり、かつ複雑なものとなる。それにともない、それらのソフトウェアの開発と維持管理のための工数も大幅に増大している。そこで本実施の形態にかかる複合機1に搭載されるソフトウェアでは、開発と維持管理のための工数を減少させる。なお、複合機1に搭載されるソフトウェアの構成については後述する。
Specifically, in addition to the normal copy function, the
図2は、かかる複合機1のハードウェア構成を示すブロック図である。本図に示すように、この複合機1は、コントローラ10とエンジン部(Engine)60とをPCI(Peripheral Component Interconnect)バスで接続した構成となる。コントローラ10は、複合機1全体の制御と描画、通信、図示しない操作部からの入力を制御するコントローラである。エンジン部60は、PCIバスに接続可能なプリンタエンジンなどであり、たとえば白黒プロッタ、1ドラムカラープロッタ、4ドラムカラープロッタ、スキャナまたはファックスユニットなどである。なお、このエンジン部60には、プロッタなどのいわゆるエンジン部分に加えて、誤差拡散やガンマ変換などの画像処理部分が含まれる。
FIG. 2 is a block diagram illustrating a hardware configuration of the
コントローラ10は、CPU11と、ノースブリッジ(NB)13と、システムメモリ(MEM−P)12と、サウスブリッジ(SB)14と、ローカルメモリ(MEM−C)17と、ASIC(Application Specific Integrated Circuit)16と、ハードディスクドライブ(HDD)18とを有し、ノースブリッジ(NB)13とASIC16との間をAGP(Accelerated Graphics Port)バス15で接続した構成となる。また、MEM−P12は、ROM(Read Only Memory)12aと、RAM(Random Access Memory)12bとをさらに有する。
The
CPU11は、複合機1の全体制御をおこなうものであり、NB13、MEM−P12およびSB14からなるチップセットを有し、このチップセットを介して他の機器と接続される。
The CPU 11 performs overall control of the
NB13は、CPU11とMEM−P12、SB14、AGP15とを接続するためのブリッジであり、MEM−P12に対する読み書きなどを制御するメモリコントローラと、PCIマスタおよびAGPターゲットとを有する。
The
MEM−P12は、プログラムやデータの格納用メモリ、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いるシステムメモリであり、ROM12aとRAM12bとからなる。ROM12aは、プログラムやデータの格納用メモリとして用いる読み出し専用のメモリであり、RAM12bは、プログラムやデータの展開用メモリ、プリンタの描画用メモリなどとして用いる書き込みおよび読み出し可能なメモリである。
The MEM-
SB14は、NB13とPCIデバイス、周辺デバイスとを接続するためのブリッジである。このSB14は、PCIバスを介してNB13と接続されており、このPCIバスには、ネットワークインターフェース(I/F)部なども接続される。
The SB 14 is a bridge for connecting the
ASIC16は、画像処理用のハードウェア要素を有する画像処理用途向けのIC(Integrated Circuit)であり、AGP15、PCIバス、HDD18およびMEM−C17をそれぞれ接続するブリッジの役割を有する。このASIC16は、PCIターゲットおよびAGPマスタと、ASIC16の中核をなすアービタ(ARB)と、MEM−C17を制御するメモリコントローラと、ハードウェアロジックなどにより画像データの回転などをおこなう複数のDMAC(Direct Memory Access Controller)と、エンジン部60との間でPCIバスを介したデータ転送をおこなうPCIユニットとからなる。このASIC16には、PCIバスを介してFCU(Fax Control Unit)30、USB(Universal Serial Bus)40、IEEE1394(the Institute of Electrical and Electronics Engineers 1394)インターフェース50が接続される。
The ASIC 16 is an IC (Integrated Circuit) for image processing applications having hardware elements for image processing, and has a role of a bridge for connecting the
MEM−C17は、コピー用画像バッファ、符号バッファとして用いるローカルメモリであり、HDD(Hard Disk Drive)18は、画像データの蓄積、プログラムの蓄積、フォントデータの蓄積、フォームの蓄積を行うためのストレージである。 The MEM-C 17 is a local memory used as an image buffer for copying and a code buffer, and an HDD (Hard Disk Drive) 18 is a storage for storing image data, programs, font data, and forms. It is.
AGP15は、グラフィック処理を高速化するために提案されたグラフィックスアクセラレーターカード用のバスインターフェースであり、MEM−P12に高スループットで直接アクセスすることにより、グラフィックスアクセラレーターカードを高速にするものである。
The
図3は、かかる複合機1のハードウェアおよびソフトウェアの構成を示した概念図であり、具体的には、後述する本実施の形態の特徴部分である認証管理部211を含む統合アプリケーション110と、ソフトウェア100およびハードウェア150の階層関係を示している。本図に示すように、ハードウェア150は、ハードウェアリソース151を有し、このハードウェアリソース151は、スキャナ151a、プロッタ151b、HDD(Hard Disk Drive)151c、ネットワーク151dおよびその他のリソース151eを有する。なお、その他のリソース151eは、151a〜151d以外のハードウェアリソース151のことであり、たとえば、操作パネルなどの入出力デバイスを示す。
FIG. 3 is a conceptual diagram showing the hardware and software configuration of the
図4は、複合機1の操作パネル400の一例を示した図である。本図に示したように、かかる操作パネル400は、初期設定キー401、コピーキー402、コピーサーバーキー403、プリンタキー404、送信キー405、テンキー406、クリア/ストップキー407、スタートキー408、予熱キー409、リセットキー410および液晶タッチパネル420を有する。このような構成を有する操作パネル400でユーザが所定の操作を行った場合に、統合アプリケーション110に含まれている本実施の形態の特徴である各クラスを実体化したオブジェクトが動作する。
FIG. 4 is a diagram illustrating an example of the
例えば、初期設定キー401をタッチすると、液晶タッチパネル420に初期設定用のメニューが表示され、かかるメニューにおいては、収納される用紙サイズなどを設定することができる。また、コピーをしたい場合にはコピーキー402を、コピー結果を複合機1に蓄積したい場合にはコピーサーバーキー403を、プリンタに係る操作をおこないたい場合には、プリンタキー404を、ファックスや蓄積画像などの送信をしたい場合には送信キー405を、それぞれタッチすると、液晶タッチパネル420に対応したメニューが表示される。
For example, when the
図3に戻り、かかるハードウェア150に搭載されるソフトウェア100は階層化されており、オペレーティングシステム103の上層にはサービス層102が構築され、このサービス層102の上層にはアプリケーション層101が構築されている。そして、サービス層102は、各ハードウェアリソース(151a〜151e)を制御するドライバーに相当する、スキャナ制御部102a、プロッタ制御部102b、蓄積制御部102c、配信/メール送受信制御部102d、FAX送受信制御部102e、ネットワーク通信制御部102fおよびその他の制御部102gを有する。
Returning to FIG. 3, the
ここで、図3に示したソフトウェア100が、かかる階層構造をとるに至った経緯について、図15および図16を用いて説明する。図15は、複合機に搭載されるソフトウェア構成の変遷を示す説明図である。図15のサービス層分離前アプリケーション2001に示すように、多機能化した複合機に搭載されるソフトウェアは、コピーアプリケーション、FAXアプリケーション、スキャナアプリケーションなどの機能別に独立したアプリケーションとして作成され、図3に示したオペレーティングシステム103上で動作していた。
Here, how the
しかしながら、これらのアプリケーションは、ハードウェアリソースを制御するドライバー(サービス層102)を含んでいたため、各アプリケーションには重複した処理が存在していた。その結果、各アプリケーションの規模は大きなものとなっていた。 However, since these applications include a driver (service layer 102) that controls hardware resources, duplicate processing exists in each application. As a result, the scale of each application has become large.
そこで、図15のサービス層分離後アプリケーション2002に示すように、サービス層分離前アプリケーション2001のサービス層相当部分を括りだしてサービス層102にするとともに、各アプリケーションは、このサービス層102の上層であるアプリケーション層101に構築する構成とした。かかる階層化構成をとることで、各アプリケーションはスリム化され開発労力も軽減された。
Therefore, as shown in an
しかしながら、複合機のネットワーク化、多機能化がさらに進展するに従って、各アプリケーションに共通処理部分が存在することが問題となってきた。具体的には、アプリケーション層101の各アプリケーション、たとえば、コピーアプリケーションやスキャナアプリケーションなどは、それぞれ、スキャナ制御部102aや蓄積制御部102cといったドライバーと通信をおこなう処理や、各種機能が取り扱うデータの流れを制御するストリーム制御などの同様な処理を内部に有していた。このように、同様な処理を各アプリケーションが有していると、各アプリケーションの開発規模が大きくなるとともに、サービス層の仕様変更に対する各アプリケーションの改修規模が大きくなることが問題となってきた。
However, as the networking and multifunctional functions of multi-function peripherals have further progressed, it has become a problem that a common processing part exists in each application. Specifically, each application of the
この問題を解決するため、図16の共通ルーチン分離アプリケーション2003に示すように、かかる同様な処理(共通処理部分)を共通ルーチンとして括りだすことも考えられた。しかしながら、かかる共通ルーチンは、各アプリケーションにおいて微妙に異なる処理を共通化しようとするものであるため、共通ルーチン内部の処理は複雑なものとなってしまう。また、たとえば、プリンタアプリケーションなどの新規アプリケーションを追加する場合においては、かかる新規アプリケーションに適応するために、共通ルーチンの改修が必要となる。
In order to solve this problem, as shown in the common
しかし、共通ルーチンの内部処理は複雑であるため、改修要員が処理を把握することが困難となり、改修規模の増大や、改修ミスによる他のアプリケーションへの影響が懸念された。 However, since the internal processing of the common routine is complicated, it became difficult for repair personnel to grasp the processing, and there were concerns about the increase in the scale of repair and the impact on other applications due to repair mistakes.
そこで、図15のオブジェクト指向アプリケーション2004に示すように、オブジェクト指向による設計手法(オブジェクトモデリング)により、かかる複数のアプリケーションを、統合アプリケーション110に統合することとした。具体的には、各アプリケーションの共通処理部分をオブジェクトモデルとして抽出し、このオブジェクトモデルの集合体から、統合アプリケーション110を構成する。そして、従来のコピー機能やスキャナ機能といった機能は、かかるオブジェクトモデルの協調関係によって実現する。
Therefore, as shown in the object-oriented
このような構成をとることにより、たとえばプリンタ機能のような新規機能の追加は、かかるオブジェクトモデルに属するクラスのサブクラス化などにより対処できる。このため、改修部分が明確となり、改修による他の機能への影響を小さくすることができる。また、オブジェクトモデリングによるプログラムは、従来の手続き型プログラムに比べて、処理の把握が容易であるため、改修要員が処理を把握することも容易となり、改修規模の削減や、改修ミスによる他のアプリケーションへの影響を小さくすることができる。 By adopting such a configuration, for example, addition of a new function such as a printer function can be dealt with by subclassing a class belonging to the object model. For this reason, a repair part becomes clear and the influence on other functions by repair can be made small. In addition, the object modeling program is easier to grasp the process than the conventional procedural program, so it is easier for the repair staff to grasp the process, reducing the scale of the repair, and other applications due to mistakes in the repair. The influence on can be reduced.
図16は、図15に示したサービス層分離後アプリケーション2002の段階における従来のアプリケーションの構成と、かかるアプリケーションとサービス層102の各ドライバーの関係を示した説明図である。本図に示すように、アプリケーション層101Aは、コピーアプリケーション121、スキャナアプリケーション122、ファックスアプリケーション123およびプリンタアプリケーション124を有する。
FIG. 16 is an explanatory diagram showing the configuration of a conventional application at the stage of the service layer separated
たとえば、コピーアプリケーション121は、コピー機能を実現するために、スキャナ制御部102a、プロッタ制御部102b、蓄積制御部102cおよびその他の制御部102gとデータの送受信をおこなう。また、ファックスアプリケーション123は、ファックス機能を実現するために、プロッタ制御部102b、蓄積制御部102c、FAX送受信制御部102e、ネットワーク通信制御部102fおよびその他の制御部102gとデータの送受信をおこなう。このように、アプリケーション層101Aの各アプリケーションとサービス層102の各ドライバー間の通信は、複雑なものとなっていた。
For example, the
図3に戻り、上述したオブジェクトモデリングにより、アプリケーション層101に存在した複数のアプリケーションは、統合アプリケーション110に統合されている。そして、各アプリケーションが重複しておこなっていた各ドライバーとの通信処理は、統合アプリケーション110を構成する所定のオブジェクトモデルにおこなわせるように構成したことにより、アプリケーション層101のアプリケーションと、サービス層102の各ドライバー間の通信は、図16と比較して単純になっている。
Returning to FIG. 3, a plurality of applications existing in the
次に、統合アプリケーション110の内部構成について説明する。図5は、統合アプリケーション110の内部構成、及び統合アプリケーション110内における後述する本実施の形態の特徴的部分である認証管理部211の位置を示す説明図である。本図に示すように、統合アプリケーション110は、操作系サブシステム201と、管理系サブシステム202と、実行系サブシステム203とを有する。
Next, the internal configuration of the
操作系サブシステム201は、マンマシンインターフェースを担当するソフトウェア群である。具体的には、この操作系サブシステム201は、ユーザの要求を受け付ける処理と、この要求の実行を指示する処理と、この要求の実行状況と実行結果についての情報をユーザに提供する処理をおこなう。
The
管理系サブシステム202は、複合機1の資源を管理するソフトウェア群である。具体的には、この管理系サブシステム202は、ハードウェアリソース151およびこのハードウェアリソース151が保持するデータ状態を管理するサービスをおこなう。
The
実行系サブシステム203は、ユーザからの要求の実行を担当するソフトウェア群である。具体的には、この実行系サブシステム203は、コピー要求がなされた場合には、原稿の読み取りから成果物の出力までの処理をおこなう。
The
操作系サブシステム201、管理系サブシステム202および実行系サブシステム203は、必要に応じて相互に処理を依頼してその結果を送り合う。このようにそれぞれのサブシステムが協調し合って、統合アプリケーション110全体として複合機1に必要とされるサービスの提供をおこなう。
The
そして、管理系サブシステム202は、本実施の形態の特徴部分である認証管理部211を有する。この認証管理部211は、操作系サブシステム201から利用者の認証に関する要求又は複合機1で機能を実行する際に利用者が機能の実行できるか否かの要求を受け付け、利用者に関する認証を行い、機能が実行できる場合にその旨を実行系サブシステム203に出力する。
The
図6は、図5に示した各サブシステムを、UML(Unified Modeling Language)のクラス図(UMLクラス図)に置き換えた図である。ここで、UMLとは、OMG(Object Management Group)が仕様を策定しているシステムモデリング言語であり、モデリングの成果を記述する記法を定義したものである。このUMLは、オブジェクト指向によるソフトウェアの設計において広く用いられている。 FIG. 6 is a diagram in which each subsystem shown in FIG. 5 is replaced with a UML (Unified Modeling Language) class diagram (UML class diagram). Here, UML is a system modeling language for which specifications are formulated by OMG (Object Management Group), and defines a notation for describing the results of modeling. This UML is widely used in the design of object-oriented software.
図6に示すように、統合アプリケーション110は複数のパッケージを有し、また、この統合アプリケーション110自体もひとつのパッケージとなっている。ここで、パッケージとはUMLモデルの各構成要素(シンボル)をグループ化したものであり、このパッケージは、左上にタブのついたフォルダ型のシンボルで表現される。また、各パッケージを相互に結ぶ直線は、各パッケージ間に処理依頼などの関連があることを示している。
As shown in FIG. 6, the
図6に示したように、統合アプリケーション110は、操作系サブシステム201、管理系サブシステム202および実行系サブシステム203の3つのパッケージを内部に有するパッケージである。さらに、管理系サブシステム202は、認証管理部211のパッケージを内部に有するパッケージである。そして、操作系サブシステム201、管理系サブシステム202および実行系サブシステム203を相互に結ぶ直線は、各パッケージ間にメッセージ送受信などの関連があることを示している。なお、操作系サブシステム201、管理系サブシステム202および実行系サブシステム203のタブの右端に記された記号は、かかるパッケージがサブシステムであることを示すUMLのシンボルである。
As shown in FIG. 6, the
そして、本実施の形態の特徴部分である認証管理部211について詳細に説明する。なお、この認証管理部211は、オブジェクト指向に基づいて設計するにあたって、既存の処理を単純にオブジェクト化せず、機能追加や改修をより一層容易におこなうことができるようにオブジェクトモデルを構成した。
And the
図7は、本実施の形態の特徴部分である認証管理部211で行われる処理の概念を示した概念図である。本図に示すように操作系サブシステム201から利用者の認証の要求があった場合、利用者毎に存在する認証データを用いて正当な利用者であるか否か認証が行われる。認証データとしては、例えばユーザIDとパスワードが考えられる。
FIG. 7 is a conceptual diagram showing the concept of processing performed by the
そして、認証により正当な利用者であると判断された場合、正当な利用者であることを示す許可証が発行される。そして許可証が存在している期間は、認証された利用者は操作系サブシステム201から複合機1の機能を実行することが可能となる。そして、許可証が発行された後に、利用者が操作系サブシステム201から複合機1の機能の実行を要求した場合、許可証が要求を受け付ける。そして、許可証が利用者データに対して要求された機能が制限されているか否か確認する。そして、許可証が要求された機能が制限されていないことが確認した場合、実行系サブシステム203に機能を実行する要求を出力する。
When it is determined that the user is a valid user by the authentication, a permit indicating that the user is a valid user is issued. During the period in which the permit is present, the authenticated user can execute the function of the
本実施の形態の特徴部分である認証管理部211は、上述したように、利用者データ及び許可証を分けた構成とし、かかる認証管理部211のオブジェクトモデリングをおこなった。このように複合機1を利用する利用者が認証された利用者であることを証明する等の時間により変動する情報と、利用者の照合等に用いられるユーザID等の静的な個人情報が分けて管理されることになり、例えば利用者の個人情報を管理しているテーブル等を変更せずとも利用者の認証状態を管理することが可能となる。
As described above, the
認証証明部211で利用者の認証を行うために、利用者は複合機1に備えられた操作パネル400又は複合機1とネットワークを介して接続されたクライアントPCから複合機1にログインする必要がある。まず、操作系サブシステム201は、操作パネル400又はクライアントPCからの利用者のユーザID及びパスワードの入力を受け付ける。そして、操作系サブシステム201がユーザID及びパスワードの入力を受け付けた場合、管理系サブシステム201の認証管理部211に出力し、利用者の認証が行われることとなる。
In order to authenticate the user with the
図8は、認証管理部211のブロック構成、及びクラス構成をUMLのクラスで示した図である。本図に示すように、認証管理部211は、利用者管理部710と、認証証明部720と、利用者属性部740と、システム利用項目管理部750とを備えている。
FIG. 8 is a diagram showing the block configuration and class configuration of the
利用者管理部710は、アカウント名のように利用者個人を識別するための情報(個人識別情報)を管理する。利用者管理部710はまた、操作系からの入力を受け付ける。つまり、利用者管理部710は、利用者情報の閲覧又は変更、利用者の認証、機能の利用可否確認の要求等を操作系より受け付け、要求に応じた処理を行う。
The
利用者管理部710において、操作系からの入力を受け付ける処理と個人情報の管理処理とでは性質が異なるため、それぞれは異なるクラスに分割されて管理される。つまり利用者管理部710は、操作系からの要求を受け付ける認証名簿クラス711と、複合機1を利用することが可能な利用者の個人識別情報を管理する登録ユーザークラス712とを備える。これにより利用者からの入力を受け付けた際に、必要な場合に限り登録ユーザークラス712のインスタンスがメモリ上に展開されることになる。
In the
認証証明部720は、利用者が認証されていることを証明する。すなわち、認証証明部720は、複合機1を利用することが可能な利用者であると認証された場合に生成され、操作パネル400等から利用者が要求した機能を実行可能であるか否か機能制限部730に問い合わせて、利用者が機能を利用することが可能か否か判断する許可証クラス721を備える。許可証クラス721は、利用者管理部710が管理する利用者の情報を用いて利用者の認証が行われた場合に生成されるクラスであり、例えば任意の施設で利用者の認証が行われた場合に発行される許可証と同様である。つまり、従来のように利用者についてのログイン状態の有無を管理するのではなく、利用者管理部710との間に利用者と利用権の関係が成り立つこととなる。これにより、例えば一人の利用者について複数の認証が行われた場合は複数の許可証が発行されるのと同様に、利用者管理部710で複数回の認証された場合に複数の許可証クラス721のインスタンスが生成され、利用者が複数の利用権を有することを可能とする。
The
利用者属性部730は、各利用者に固有の属性情報であって、他の利用者等への公開が制限される属性情報(利用者属性情報)を管理する。各利用者に固有の属性情報とは、例えば、パスワード又は生体情報等の認証情報や、利用者ごとの機能の利用制限に関する情報や、ログインした際に液晶パネル420に表示されるデスクトップ画面の配置情報等の個人環境に関する情報等が相当する。利用者属性部730のインターフェースは、ユーザープロファイルクラス731において定義されている。すなわち、ユーザープロファイルクラス731には、利用者属性情報の種別によらず共通的に必要とされる属性や操作が定義されている。そして、利用者属性情報の種別ごとに、ユーザープロファイルクラス731のサブクラスが定義される。本実施の形態では、ユーザープロファイルクラス731のサブクラスとして、認証情報クラス732、利用権限シートクラス741、個人環境クラス733が定義されている。
The
認証情報クラス732は、認証情報を管理するクラスである。個人環境クラス733は、個人環境に関する情報を管理するクラスである。利用者権限シートクラス741は、制限機能クラス742、及びセキュリティーキークラス743と共に個人利用権限管理部740を構成する。
The
個人利用権限管理部740において、利用者権限シートクラス741は、利用者のロール及び利用者が利用を制限される機能を管理し、問い合わせに応じて機能を利用できるか否かを判断して、判断結果を出力する。制限機能クラス742は、利用者が利用を制限される機能を表現する。セキュリティーキークラス743は、利用者が利用を制限される機能の利用制限を解除するためのセキュリティーキーを表現する。ここで、セキュリティーキーとは、利用制限を解除するために複合機1に対して入力が要求される情報又は、当該情報が記録された媒体をいい、例えば、キーカード、ユーザコード、又はユーザ名及びパスワードの組み合わせ等が相当する。
In the personal use
このように、利用者属性部730においては、そのインターフェースがユーザープロファイルクラス731において定義され、利用者属性情報の種別ごとにそのサブクラスが定義される。したがって、利用者属性部730は、利用者属性情報の種別の増減に対して柔軟かつ拡張性のある構成を有しているといえる。すなわち、新たな利用者属性情報の管理が必要となった場合は、当該利用者属性情報に対応するサブクラスを定義すればよい。また、各種の利用者属性情報に共通的に必要とされる属性や操作はユーザープロファイルクラス731に定義されているため、新たに定義されたサブクラスにおいては、当該利用者属性情報に特化した属性や操作のみを定義すればよい。
Thus, in the
システム利用項目管理部750は、ロール毎の制限される項目を管理し、問い合わせに応じて入力された権限で機能を利用できるか否か判断して、判断結果を出力するアクセスロール台帳クラス751を備える。
The system use
ところで、複合機1では利用者毎に実行可能な機能が定められている。しかしながら、複合機1には利用者に基づいて制限が定められている機能の他に、利用者の権限に基づいて制限が定められている機能も存在する。そこで、認証管理部211では、これらを分割して管理している。すなわち、利用者毎に制限された機能を管理するのが個人利用権限管理部740であり、ロール毎に制限された項目を管理するのがシステム利用項目管理部750である。これにより利用者のロールにより共通化できる制限を一括して管理することを可能とし、ロール毎に定められた項目に変更があった場合、一括して変更することが可能となる。つまり利用者毎に設定する必要が無くなり、変更に伴う手間が軽減される。
By the way, the
各クラスを示す矩形は3段の区画を有し、上から、クラス名を示す名前区画、クラスが有するデータ(属性)を示す属性区画およびクラスが有する処理(操作)を示す操作区画と呼ばれる。たとえば、認証名簿クラス711を示す矩形の名前区画は、かかるクラスのクラス名が「認証名簿」であることを示し、属性区画は、かかるクラスが有する属性が、「状態」であることを示し、操作区画は、かかるクラスが有する操作が、「変更()」と「認証要求()」と「利用可否確認()」であることを示している。
A rectangle indicating each class has three sections. From the top, a rectangle indicating a class name, an attribute section indicating data (attribute) included in the class, and an operation section indicating processing (operation) included in the class are referred to. For example, a rectangular name section indicating the
このように、各クラスは、データ(属性)を所持するための属性区画と、かかる属性の書き込みおよび読み出しをおこなう処理(操作)を所持するための操作区画とを有している。これらのクラスは、プログラム(統合アプリケーション110)の一部として含まれるので、あらかじめROM12aに格納されたこのプログラムが実行されると、各クラスはRAM12bの所定領域に実体化され、属性区画に含まれる各データ(属性)がRAM12b上に展開される。したがって、クラスを実体化したオブジェクトは、RAM12b上の各データ(属性)の書き込みおよび読み出しをすることが可能となる。
Thus, each class has an attribute section for possessing data (attribute) and an operation section for possessing processing (operation) for writing and reading such an attribute. Since these classes are included as a part of the program (integrated application 110), when this program stored in the
なお、属性や操作といったクラスの要素の左側に「−」記号を付した場合は、かかる要素は外部のクラスには非公開であることを示し、「+」記号を付した場合は、かかる要素は外部のクラスに公開されていることを示す。また、操作については「変更()」のように「()」記号を付することが通例であり、「(引数1,引数2)」のように、かかる操作に引き渡す引数を記述する場合もある。
In addition, if a "-" symbol is attached to the left side of a class element such as attribute or operation, this indicates that the element is private to external classes, and if a "+" symbol is attached, this element Indicates that it is open to external classes. In addition, the “()” symbol is usually attached to the operation, such as “change ()”, and an argument to be passed to the operation may be described, such as “(
次に、図8に示した本実施の形態の特徴部分である認証管理部211が備える各クラスについて説明する。
Next, each class included in the
認証名簿クラス711は、操作系サブシステム201からの認証の入力を受け付けて後述する登録ユーザークラス712とメッセージを送受信することで利用者の認証を行うともに、認証された場合には許可証クラス721のオブジェクトを生成する。そして、認証名簿クラス711は、認証された利用者により操作系サブシステム201から機能を実行する要求があった場合、この要求を許可証オブジェクト721Aに引き渡す。具体的には、この認証名簿クラス711は、操作として、変更()711aと認証要求()711bと利用可否確認()711cを有する。
The
変更()711aは、個人識別情報や利用者属性情報の変更要求を受け付け、登録ユーザークラス712、ユーザープロファイルクラス731、又はユーザープロファイルクラス731のサブクラス等の属性を変更する。
The change () 711 a accepts a request for changing personal identification information or user attribute information, and changes attributes such as a registered
認証要求()711bは、利用者により操作系サブシステム201を介して複合機1に対するログイン要求があった場合、登録ユーザーオブジェクト712Aを生成し、生成した登録ユーザーオブジェクト712Aに対して認証の要求を行う。認証要求()711bが認証を要求する際、操作系サブシステム201から入力された利用者のアカウント名及びパスワードが引数として引き渡される。この利用者のアカウント名及びパスワードは、ネットワークを介して接続されているクライアントPCから送信されたものか、複合機1の操作パネル400から入力されたものを操作系サブシステム201が入力処理したもの等である。図9は、利用者が複合機1にログインする際に操作パネル400に表示される画面の一例を示した図である。本図に示した画面が表示された後、利用者はログインするためにユーザ名及びパスワードを入力し、‘ログイン’ボタン902を押下する。これにより操作系サブシステム201がアカウント名及びパスワードを入力処理し、利用者を認証する要求と共に入力処理したアカウント名及びパスワードを認証名簿クラス711に入力する。これにより認証要求()711bが引数としてアカウント名及びパスワードを引き渡すことが可能となる。
The authentication request () 711 b generates a registered
図8に戻り、利用可否確認()711cは、ログインした利用者から操作パネル400又はクライアントPCを介して複合機1に備えられた機能の実行要求があった場合、利用者がログインした際に生成された許可証オブジェクト721Aに、実行要求があった機能を利用することが可能か否かの確認を要求する。
Returning to FIG. 8, the availability check () 711 c is performed when the user logs in when there is a request for executing the function provided in the
そして認証名簿クラス711は、許可証オブジェクト721Aから入力された確認結果により、要求した機能を利用者が利用することが可能と判断した場合、機能を実行する旨を実行系サブシステム203に出力する。これにより、利用者が機能の利用が制限されていない場合に限り、実行系サブシステム203で機能が実行されることとなる。
If the
登録ユーザークラス712は、登録されたユーザの情報を管理し、この管理されたユーザの情報を用いて処理を行うクラスである。具体的には、この登録ユーザークラス712は、属性として、アカウント名712a及び状態712bを有し、操作として、照合()712c、参照()712d及び編集()712eを有する。なお、かかる登録ユーザークラス712を実体化したオブジェクトが生成されると、アカウント名712a及び状態712bはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる。
The registered
アカウント名712aは、登録された利用者を示すアカウント名を保持する。 The account name 712a holds an account name indicating the registered user.
状態712bは、登録ユーザークラス712が保持するアカウント名712aや、ユーザープロファイルクラス731及びユーザープロファイルクラス731を継承したクラスの属性の編集状態を保持する。状態712bを保持することで、登録ユーザークラス712は、アカウント名712a等の編集状態を管理することが可能となる。これにより、例えば‘編集中’になんらかの要求が行われた場合には、アカウント名712a等が定められていないので登録ユーザーオブジェクト712Aは当該要求に対する処理を行わないことを可能とする。従って、アカウント名712a等ユーザ情報を用いた処理の信頼性を向上させることができる。
The
照合()712cは、認証名簿クラス711から呼び出され、登録ユーザの照合を行う。具体的には、認証名簿クラス711から認証要求()711bが行われた場合、引数として受け取ったアカウント名及びパスワードが、生成された登録ユーザーオブジェクト712Aが保持するアカウント名712a及び認証情報クラス732によって保持されるパスワード732aと一致するか否か判断により、照合を行う。なお、照合が行われている間は、状態712bは‘認証中’となる。そして照合が行われた結果を認証名簿クラス711に出力することで、ログイン要求を行った利用者の認証が可能となる。
The collation () 712 c is called from the
参照()712dは、登録ユーザークラス712の属性や、ユーザープロファイルクラス731及びユーザープロファイルクラス731を継承したクラスの属性を参照させる。
The reference () 712 d refers to the attribute of the registered
編集()712eは、登録ユーザークラス712の属性や、ユーザープロファイルクラス731及びユーザープロファイルクラス731を継承したクラスの属性を編集する。
The edit () 712 e edits the attribute of the registered
許可証クラス721は、認証された利用者の証明を行うと共に、利用者が実行を要求した機能を利用することが可能か否か確認の要求を行うクラスである。具体的には、この許可証クラス721は、属性として、許可番号721aを有し、操作として、利用可否確認()721cを有する。なお、かかる許可証クラス721を実体化したオブジェクトが生成されると、許可番号721aはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる。
The
許可番号721aは、利用者の認証を行った入力装置を番号として保持する。例えば許可番号として1〜5までの数字で保持されることとし、操作パネル400から入力された情報により利用者を認証した場合には許可番号として‘1’が、またネットワークを介してクライアントPCから利用者を認証した場合には許可番号として‘2’〜‘5’が設定される。これにより同一利用者が操作パネル400上及びクライアントPC上から同時にログインしている場合でも、異なる許可番号が付されることで対応関係を保持することが可能となり、同一利用者による複数ログインを可能としている。これにより同一利用者が同時に複数の処理、例えば複合機1上の操作パネル上でコピーをしつつ、PCから複合機1でFAXの送信を行うことを可能とする。
The
利用可否確認()721bは、認証名簿クラス711から呼び出され、利用権限シートオブジェクト741Aに対して、利用者が要求した機能の実行が可能か否かの確認を要求する。また、利用可否確認()721bが呼び出された際に、引数として利用者が実行を要求した機能を受け取る。また、許可証オブジェクト721Aが、利用者が要求した機能を実行するか否か確認を要求することで、利用者がログインしている際に実行する処理を一括して管理することとなり、利用者から機能を実行する要求が合った際に利用者が認証されているか否か判断したのち機能を実行できるか否か判断するという手順が必要なくなり、処理を行う際の手順を簡略化することが可能となる。
The availability check () 721 b is called from the authentication
ユーザープロファイルクラス731は、利用者属性情報を操作させるためのインターフェース等が定義された抽象クラスである。したがって、ユーザープロファイルクラス731のインスタンスは生成されることはないが、ユーザープロファイルクラス731において定義された内容は、そのサブクラスに継承される。ユーザープロファイルクラス731は、属性として公開レベル731a及び状態731bを有し、操作として参照()731c及び編集731dを有する。
The
公開レベル731aは、利用者属性情報の公開レベルを保持する。公開レベルの値に応じて利用者属性情報の公開の可否が判定される。 The disclosure level 731a holds the disclosure level of user attribute information. Whether or not the user attribute information can be disclosed is determined according to the value of the disclosure level.
状態731bは、ユーザープロファイルクラス731及びそのサブクラスの属性の編集状態を保持する。
The state 731b holds the editing state of the attributes of the
参照()731cは、呼び出しに応じて利用者属性情報を参照させる。 The reference () 731 c refers to the user attribute information in response to the call.
編集()731dは、呼び出しに応じて利用者属性情報を編集する。 The edit () 731d edits the user attribute information in response to the call.
認証情報クラス732は、ユーザープロファイルクラス731を継承する具象クラスであり、利用者属性情報の一つである認証情報を管理する。認証情報クラス732は、属性としてパスワード732a及び生体情報732bを有する。なお、かかる認証情報クラス732を実体化したオブジェクトが生成されると、ユーザープロファイルクラス731における公開レベル731a及び状態731bと、認証情報クラス732におけるパスワード732a及び生体情報732bとはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる。
The
個人環境クラス733は、ユーザープロファイルクラス731を継承する具象クラスであり、利用者属性情報の一つである個人環境を管理する。個人環境クラス733は、属性としてデスクトップ配置733a、リダイヤル733b、着信履歴733c、お気に入り733d及びアドレス帳733eを有する。かかる個人環境クラス733を実体化したオブジェクトが生成されると、ユーザープロファイルクラス731における公開レベル731a及び状態731bと、個人環境クラス733におけるデスクトップ配置733a、リダイヤル733b、着信履歴733c、お気に入り733d及びアドレス帳733ebとはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる
デスクトップ配置733aは、利用者がログインした時のデスクトップ配置、コピー濃度や選択用紙等に関する情報を保持する。
The
リダイヤル733bは、利用者のリダイヤルを保持する。 The redial 733b holds the user's redial.
着信履歴733cは、利用者に対して送られたFAXの着信履歴を保持する。 The incoming call history 733c holds a FAX incoming call history sent to the user.
お気に入り733dは、利用者が登録したURLを保持する。 The favorite 733d holds a URL registered by the user.
アドレス帳733eは、利用者個人のアドレス帳を保持する。 The address book 733e holds a personal user address book.
利用権限シートクラス741は、ユーザープロファイルクラス731を継承する具象クラスであり、利用者属性情報の一つであるロールや、利用者に対する機能制限に関する情報を管理する。利用者権限シートクラス741は、利用者が実行を要求した機能を利用することが可能か否か確認の要求が入力された場合に、関連付けられている制限機能クラス742に対して問い合わせた結果と、アクセスロール台帳クラス751に確認の要求を入力した後にアクセスロール台帳から入力された判断結果とに基づいて、当該機能の利用の可否の判断を行い、その判断結果を出力する。利用権限シートクラス741は、属性としてロール741aを有し、操作として利用可否判断()741bを有する。なお、かかる利用権限シートクラス741を実体化したオブジェクトが生成されると、ユーザープロファイルクラス731における公開レベル731a及び状態731bと、利用権限シートクラス741におけるロール741aとはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる。
The usage
ロール741aは、利用者に設定された権限を保持する。利用者に設定された権限とは、例えば一般、機器管理者、ネットワーク管理者が考えられる。このロール741aによりアクセスロール台帳クラス751において制約されている項目の特定が可能となる。
The
利用可否判断()741bは、許可証オブジェクト721Aから呼び出され、引数として受け取った機能の利用者による実行の可否を関連付けられている制限機能オブジェクト742Aに対して問い合わせ等を行うことにより判断し、その判断結果を登録ユーザーオブジェクト712Aに出力する。制限機能オブジェクト742Aに基づく判断によって、当該機能の実行が制限されていないと判断した場合は、アクセスロール台帳オブジェクト751Aを生成し、生成されたアクセスロール台帳オブジェクト751Aに対して、利用者のロールと、当該機能とを引数として引き渡し、当該ロールに基づく権限で当該機能(項目)を実行することが可能か否かの確認を要求する。このように利用者毎に制限されている機能については制限機能オブジェクト742Aを参照して機能が実行可能であるか否か判断し、ロール毎に設定されている項目についてはアクセスロール台帳オブジェクト751Aに確認を要求することで、利用者が実行を要求した機能が利用可能であるか否か判断することが可能となる。
The availability determination () 741b is called by making an inquiry to the associated restricted
また、利用可否判断()741bは、利用者が実行を要求した機能を利用できないと判断した場合、その旨を許可証オブジェクト721Aを介して認証名簿クラス711に出力する。これより認証名簿クラス711は機能を実行することが出来ないと判断し、実行系サブシステム203にその旨を送信する。図10は、利用者が実行を要求した機能が利用できない場合に液晶タッチパネル420上に表示される画面の一例を示した図である。本図に示すように、利用者に利用できない旨表示することで、利用者に要求した機能を利用する権限を有していないことを認識させることができる。
Further, when it is determined that the function requested by the user cannot be used, the availability determination () 741b outputs that fact to the
制限機能クラス742は、複合機1に備えられた機能毎に、関連付けられた利用権限シートオブジェクト741Aに係る利用者による当該機能の実行の可否を管理する。図11は、利用者毎に設定された機能制限情報の一例を示した図である。図中に示されるように、機能制限情報では機能ごとに利用の可否が設定されている。複合機1にはこのような機能制限情報がユーザごとに管理されている。制限機能クラス742は、かかる機能制限情報をオブジェクトによって管理するためのクラスであり、各ユーザについて機能制限情報における機能ごとにインスタンスが生成される。制限機能クラス742は、属性として種類742aを有し、操作としてチェック()742bを有する。なお、かかる制限機能クラス742を実体化したオブジェクトが生成されると、種類742aはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる。
The restricted
種類742aは、制限機能クラス742の各インスタンスが対応する機能の種別を保持する。
The type 742a holds the type of function corresponding to each instance of the restricted
チェック()742bは、利用権限シートオブジェクト741Aから利用者の要求する機能を受け付け、当該制限機能オブジェクト742Aに関連付けられている後述のセキュリティーキーオブジェクト743Aの状態を確認し、利用者の要求する機能の利用が制限されているかどうか確認する。
The check () 742 b receives a function requested by the user from the usage
セキュリティーキークラス743は、機能に対する利用の制限を解除するためのセキュリティーキーの状態を管理するクラスであり、セキュリティーキーごとにインスタンスが生成される。セキュリティーキーの状態の変化の要因は、各セキュリティオブジェクト743Aが対応するセキュリティーキーのタイプ(種別)によって異なる。例えば、セキュリティーキーがキーカードである場合は、当該キーカードが複合機1のカードリーダに挿入又は翳された際に解除状態となる。また、セキュリティーキーがユーザコード、又はユーザ及びパスワードである場合は、これらの情報が複合機1に入力された際に解除状態となる。セキュリティーキークラス743は、属性としてタイプ743a及び状態743bを有し、操作として解除()743c、制限()743d、確認()743eを有する。なお、かかるセキュリティーキークラス743を実体化したオブジェクトが生成されると、タイプ743a及び状態743bはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる。
The security
タイプ743aは、セキュリティーキークラス743の各インスタンスが対応するセキュリティーキーのタイプを保持する。また、このセキュリティーキーが複数回使えるのか、一度利用したらそれで終わりなのかをも保持する。
The
状態743bは、セキュリティーキークラス743の各インスタンスが対応するセキュリティーキーの状態を保持する。解除状態と制限状態とがある。
The state 743b holds the state of the security key corresponding to each instance of the security
解除()743cは、セキュリティーキーの状態(キーカードの挿入等)に基づいて、状態743bを解除状態に変化させる。 Release () 743 c changes the state 743 b to the release state based on the state of the security key (key card insertion or the like).
制限()743dは、セキュリティーキーの状態(キーカードの引き抜き等)に基づいて、状態743bを制限状態に変化させる。 The restriction () 743 d changes the state 743 b to a restricted state based on the state of the security key (key card removal, etc.).
確認()743eは、現在の状態743bの値を返却する。 The confirmation () 743e returns the value of the current state 743b.
アクセスロール台帳クラス751は、ロール毎に利用が制限されている項目(機能)を管理し、ロールで項目を利用することができるか否か確認の要求がきた場合に、属性として保持する‘ロールと制約の対応’751aを用いて利用できるか否か判断して、この結果を出力するクラスである。具体的には、このアクセスロール台帳クラス751は、属性として、ロールと制約の対応表751a、状態751b及びプロテクトレベル751cを有し、操作として、確認()751dおよび編集()751eを有する。なお、かかるアクセスロール台帳クラス751を実体化したオブジェクトが生成されると、ロールと制約の対応表751a、状態751b及びプロテクトレベル751cはRAM12b上に展開されるので、これらのデータ(属性)の書き込みおよび読み出しをすることが可能となる。
The access
ロールと制約の対応表751aは、複合機1に備えられた項目について、ロール毎に変更する権限があるか否かの対応関係を保持する。図12は、ロールと制約の対応表751aの一例を示した図である。本図で示したようにロール毎に各項目のステータスが設定されている。また、一般ユーザについては、プロテクトレベルごとに各項目のステータスが設定されている。ここで、プロテクトレベルとは、いわゆるセキュリティレベルに相当する概念であり、本実施の形態では、その値が高い程、高いセキュリティがかけられている状態を示す。
The role-restriction correspondence table 751a holds a correspondence relationship as to whether or not there is an authority to change each role for the items provided in the
図12のロールと制約の対応表751aにおいて、‘R’は読み出し可能つまり利用者がこの項目で示された値を利用することが可能であることが示され、‘W’はこの項目で示された値を変更することが可能となる。例えば一般ユーザであればネットワークが‘R’のため、設定された接続先に接続することが可能であり、ネットワーク管理者であればネットワークが‘RW’のため、接続先を変更することが可能であることを意味する。また、一般ユーザに関しては、プロテクトレベルが上がるにつれ、値の変更に対する制限が厳しくなっているのが分かる。 In the role-to-constraint correspondence table 751a in FIG. 12, 'R' indicates that it is readable, that is, the user can use the value indicated in this item, and 'W' indicates in this item. It is possible to change the value that has been set. For example, a general user can connect to the set connection destination because the network is 'R', and a network administrator can change the connection destination because the network is 'RW'. It means that. As for the general user, it can be seen that as the protection level increases, the restriction on the change of the value becomes stricter.
そして、アクセスロール台帳クラス751が確認()751dより呼び出された場合、ロールと制約の対応表751aを参照することで、引数として渡されたロールで、引数として渡された項目のステータスを確認し、変更等が可能であるか否か確認できる。
When the access
状態751bは、利用権限シートクラス741が保持するロールと制約の対応表751aの使用状態を保持する。例えば、‘編集中'、‘確認中'又は‘使用無し'がある。‘編集中'とは制限機能一覧が認証名簿クラス711から登録ユーザーオブジェクト712Aを介して編集が行われている状態を示し、‘確認中'とは確認()751dを呼び出された場合に、ロールと制約の対応表751aを参照して項目を変更可能であるか否か確認している状態を示し、‘使用無し’とは上述した状態以外の状態を示している。このような状態751bを保持することで、利用権限シートクラス741は、ロールと制約の対応表751aの使用状態を管理することが可能となる。これにより、例えば‘編集中’に確認751cが行われた場合には、確認処理を中断し、‘編集中’以内の状態に変更された際にロールと制約の対応表751aを用いて確認を行うこと等が可能となり、信頼性を向上させることができる。
The state 751b holds the usage state of the correspondence table 751a of roles and restrictions held by the usage
プロテクトレベル751cは、プロテクトレベルの値を保持する。プロテクトレベルの値の設定は、例えば、初期設定等において管理者のみが可能である。 The protect level 751c holds a protect level value. For example, only the administrator can set the protection level value in the initial setting or the like.
編集()751eは、認証名簿クラス711から登録ユーザーオブジェクト712Aの編集()712e及び利用権限シートオブジェクト741Aの編集()741dを介して呼び出され、アクセスロール台帳オブジェクト751Aが保持する属性の編集を行う。具体的には認証名簿クラス711から変更()711aによる操作が行われた場合に生成された登録ユーザーオブジェクト712A及び利用権限シートオブジェクト741Aを介し、利用権限シートオブジェクト741Aより生成されたアクセスロール台帳オブジェクト751Aに、引数として渡された情報を用いて、アクセスロール台帳オブジェクト751Aの属性であるロールと制約の対応表751aを編集する。なお、編集が行われている間は、状態751bは‘編集中’となる。これにより必要に応じて利用者のロールと制約の対応表751aを変更することが可能となる。
The edit () 751 e is called from the
次に、図8に示した各クラス間の関係について説明する。本図に示したように、各クラスを示す矩形を結ぶ直線は、その両端のクラス間に関係があることを表しており、この直線の両端付近の文字はクラスの役割を、数字はクラスの多重度をそれぞれ示している。ここで、役割とは、かかる直線の両端における、一方のクラスからみた、もう一方のクラスの役割や立場のことであり、多重度とは、かかる直線の両端のクラスから生成されるオブジェクト数の対応関係のことである。 Next, the relationship between the classes shown in FIG. 8 will be described. As shown in this figure, the straight line connecting the rectangles indicating each class indicates that there is a relationship between the classes at both ends, and the characters near the ends of this line indicate the role of the class, and the numbers indicate the class. Each multiplicity is shown. Here, the role is the role and position of the other class as seen from one class at both ends of the line, and the multiplicity is the number of objects generated from the class at both ends of the line. It is a correspondence relationship.
たとえば、認証名簿クラス711からみた登録ユーザークラス712の役割は「登録対象」であり、登録ユーザークラス712からみた認証名簿クラス711の役割は「登録場所」であり、認証名簿クラス711の多重度は「1」であり、登録ユーザークラス712の多重度は「1..n」である。
For example, the role of the registered
まず、認証名簿クラス711と登録ユーザークラス712とのクラス関係について説明する。認証名簿クラス711は、登録ユーザークラス712からみると複合機1に対してユーザの登録をしたことから登録場所としての役割を有しており、一方、登録ユーザークラス712は、認証名簿クラス711からみると登録対象としての役割を有している。このようなクラス関係により認証名簿クラス711が認証等を受け付けた場合に照合を行う登録された利用者の情報の特定が可能となる。
First, the class relationship between the
そして、本図に示したように、認証管理部211が実行される場面において、認証名簿クラス711をRAM12b上に展開(実体化)したオブジェクトは1個だけ存在し、この認証名簿クラス711の保管対象となる登録ユーザークラス712を実体化したオブジェクトは1個以上、n個以下の範囲で存在する。
As shown in the figure, in the scene where the
なお、認証名簿クラス711を実体化したオブジェクトを複数個とせずに1個とし、複合機1の操作系サブシステム201からの認証についての処理を一括して管理する。
It should be noted that the
次に、認証名簿クラス711と許可証クラス721との関係について説明する。許可証クラス721は、認証名簿クラス711が正当な利用者であると認証された場合に発行されるものである。このため、認証名簿クラス711は、許可証クラス721からみると許可者としての役割を有しており、一方、許可証クラス721は、認証名簿クラス711からみると許可権としての役割を有している。
Next, the relationship between the
また、認証名簿クラス711は、実体化したオブジェクトは1個であるのに対し、許可証クラス721は認証が行われる毎に生成されるクラスであるため、認証名簿クラス711と許可証クラス721とは1対多の関係を有する。
In addition, the
次に、許可証クラス721と登録ユーザークラス712との関係について説明する。許可証クラス721は、認証された利用者毎に発行されるものであり、また利用者が同一の場合でも複数回認証された場合には、機能を利用するための複数個の許可証が発行される関係にある。このため、許可証クラス721は、登録ユーザークラス712からみると利用権としての役割を有しており、一方、登録ユーザークラス712は、許可証クラス721からみると利用者としての役割を有している。
Next, the relationship between the
また、許可証クラス721は、照合された利用者毎に発行されるものであり、一方登録ユーザークラス712により示される利用者は、複数の許可証オブジェクト721Aを所持することが可能であるため、登録ユーザークラス712と許可証クラス721とは1対多の関係を有する。
The
次に、登録ユーザークラス712とユーザープロファイルクラス731との関係について説明する。ユーザープロファイルクラス731は、登録された利用者の利用者属性情報を管理するものである。このため、登録ユーザークラス712は、ユーザープロファイルクラス731からみると保有者としての役割を有しており、一方、ユーザープロファイルクラス731は、登録ユーザークラス712からみると保有物としての役割を有している。
Next, the relationship between the registered
また、一人の利用者には、一種類以上の利用者属性情報が設定されるため、利用者ごとにインスタンス化される登録ユーザークラス712と、利用者属性情報の種別ごとにインスタンス化されるユーザープロファイルクラス731(厳密には、ユーザープロファイルクラスのサブクラス)とは、一対多の関係を有する。なお、ユーザープロファイルクラス731のサブクラスは、ユーザープロファイルクラス31が有する関係と同じ関係を登録ユーザークラス712と有する。
Since one or more types of user attribute information are set for one user, the registered
次に、利用権限シートクラス741と制限機能クラス742との関係について説明する。利用権限シートクラス741のインスタンスは、当該インスタンスが対応するユーザに対して制限されている機能を管理するものである。一方、制限機能クラス742のインスタンスは、一つの制限機能を示す。したがって、利用権限シートクラス741は、制限機能クラス742からみると管理台帳としての役割を有している。一方、制限機能クラス742は、利用権限シートクラス741からみると制限機能としての役割を有している。
Next, the relationship between the usage
また、一人の利用者に対して0個以上の機能が制限され得るため、利用権限シートクラス741と制限機能クラス742とは1対多の関係を有する。
Also, since zero or more functions can be restricted for one user, the usage
次に、制限機能クラス742とセキュリティーキークラス743との関係について説明する。制限機能クラス742は、制限機能を示すものであり、セキュリティーキークラス743は、制限機能を解除するためのセキュリティーキーを示すものである。したがって、制限機能クラス742は、セキュリティーキークラス743からみると解除対象としての役割を有している。一方、セキュリティーキークラス743は、制限機能クラス742からみると解除キーとしての役割を有している。
Next, the relationship between the
また、一つの機能に対して複数のセキュリティーキーによって制限をかけることが可能であり、また、一つのセキュリティーキーによって複数の機能に対して制限をかけることが可能である。したがって、制限機能クラス742とセキュリティーキークラス743とは多対多の関係を有する。
One function can be restricted by a plurality of security keys, and a plurality of functions can be restricted by one security key. Therefore, the restricted
次に、利用権限シートクラス741とアクセスロール台帳クラス751との関係について説明する。アクセスロール台帳クラス751は、実体化したオブジェクトを複数個とせずに1個とし、ロール毎にある制約の対応関係を一括して保有しているものである。このため、アクセスロール台帳クラス751は、利用権限シートクラス741からみると台帳としての役割を有しており、一方、利用権限シートクラスは、アクセスロール台帳クラス751からみると利用者としての役割を有している。
Next, the relationship between the usage
また、利用権限シートクラス741が利用者毎にあるのに対してアクセスロール台帳クラス751は1個しか実体化しないため、利用権限シートクラス741とアクセスロール台帳クラス751とは多対1の関係を有する。
Further, since there is only one access
このように、認証名簿クラス711、登録ユーザークラス712、許可証クラス721、利用権限シートクラス741、制限機能クラス742、セキュリティーキークラス743及びアクセスロール台帳クラス751の各インスタンスは、相互に関連し合い、協調することにより認証管理部211に必要な機能を実現することが可能となる。
As described above, the instances of the
次に、図8に示した各クラスの操作の実行手順について例をあげて説明する。図13は、認証管理部211が利用者からのログインの要求を受け付けた際の操作の実行手順を示すUMLシーケンス図である。
Next, an example of the execution procedure of each class operation shown in FIG. 8 will be described. FIG. 13 is a UML sequence diagram illustrating an operation execution procedure when the
ここで、UMLシーケンス図について説明しておく。図13の上部に並んだ矩形は、それぞれがクラスのオブジェクトを示している。各オブジェクトから下方に伸びた線は、各オブジェクトが生存していることを示す線(ライフライン)であり、上方から下方に向かって時間が流れているものとみなされる。この線上に存在する細長い矩形は、当該のオブジェクトが実際に活動している期間(活性期間)を示す。 Here, the UML sequence diagram will be described. Each rectangle arranged in the upper part of FIG. 13 indicates a class object. A line extending downward from each object is a line (lifeline) indicating that each object is alive, and time is considered to flow from the top to the bottom. An elongated rectangle present on this line indicates a period during which the object is actually active (active period).
各ライフラインの間を結ぶ横向きの矢印は、オブジェクトに含まれる操作の実行を示す。具体的には、この矢印は、矢印の元のオブジェクトが、矢印の先のオブジェクトに含まれる操作を呼び出すことを示す。また、矢印が自分自身のオブジェクトを指している場合は、オブジェクトが自分に含まれる操作を自身で呼び出すことを意味する。 Horizontal arrows connecting the lifelines indicate execution of operations included in the object. Specifically, this arrow indicates that the original object of the arrow calls an operation included in the object at the end of the arrow. Further, when the arrow points to its own object, it means that the object calls the operation included in itself.
利用者が複合機1を操作して、ログインするためにアカウント名及びパスワードを入力すると、操作系サブシステム201がアカウント名及びパスワードを受け付ける。操作系サブシステム201は、認証名簿オブジェクト711Aの認証要求()711bを呼び出して、利用者がログインするための認証を要求する(S1301)。
When the user operates the
認証名簿オブジェクト711Aは、ログイン要求を受け付けた際に渡されたアカウント名及びパスワードを認証が終了するまで一時的に保持する。続いて、認証名簿オブジェクト711Aは登録ユーザーオブジェクト712Aを生成するとともに、この登録ユーザーオブジェクト712Aの照合()712cを呼び出す(S1302)。なお、この際に、アカウント名及びパスワードが引数として引き渡される。なお、生成は、すべてのオブジェクトが有する操作であり、生成することで各オブジェクトはRAM12b上に実体化される。
The authentication
照合()712cを呼び出された登録ユーザーオブジェクト712Aは、関連付けられている認証情報オブジェクト732Aの参照()731cを呼び出すことにより利用者のパスワードの参照を要求する(S1303)。続いて、登録ユーザオブジェク712Aは、照合()712cの引数として受け取ったアカウント名及びパスワードの組み合わせと、属性として保持するアカウント名712a及び認証情報オブジェクト732Aより参照したパスワードの組み合わせとが一致するか否か判断し、その判断結果を認証名簿オブジェクト711Aにメッセージとして送信する。
The registered
続いて、認証名簿オブジェクト711は、登録ユーザーオブジェクト712Aから受信した判断結果から、許可証オブジェクト721Aを生成するか否か判断する。具体的には登録ユーザーオブジェクト712Aからアカウント名及びパスワードが一致した旨の判断結果を受信した場合に、正当な利用者によるログインとみなして許可証オブジェクト721Aを生成できると判断する。そして、一致しない旨の判断結果を受信した場合に、正当な利用者によるログインではないとして許可証オブジェクト721Aを生成せずに、実行系サブシステム203に認証失敗した旨出力し、終了する。
Subsequently, the
一致した旨の判断結果を受信した場合、認証名簿オブジェクト711Aは、利用者がログイン要求を行った入力装置に対応する許可証オブジェクト721Aを生成する(S1304)。
When receiving the determination result indicating that they match, the authentication
生成された許可証オブジェクト721Aは、認証が行われた利用者を示す登録ユーザーオブジェクト712Aとの関連づけを行う。なお、関連づけにアカウント名が必要な場合は、認証名簿オブジェクト711Aが保持するアカウント名を受け取ればよい。そして、許可証オブジェクト721Aが生存している間に、利用者が複合機1に備えられた機能を実行することを可能とする。そして、この許可証オブジェクト721Aが、利用者が実行を要求した機能を利用できるか否か確認を行う。なお、この機能を利用できるか否かの確認の手順は本シーケンス図では省略し、後に詳細に説明する。
The generated
上述したシーケンス図で示したように、本実施の形態では、利用者の認証を行うにあたり、認証名簿クラス711、登録ユーザークラス712、認証情報クラス732、及び許可証クラス721等の各クラスから生成されたオブジェクト群が、ログイン要求に応じて認証を行い、認証された利用者に対応付けられた許可証を発行することで、登録された利用者の静的なデータと、ログイン許可の有無という動的なデータを別々に保持する。したがって、データの管理が容易となる。また、オブジェクト指向設計によりかかる認証管理部211の仕組みを構築し、図7で示したような概念に基づいてオブジェクトモデリングをおこない、照合に必要なクラスとして認証名簿クラス711、登録ユーザークラス712、認証情報クラス732、及び許可証クラス721を用いることでかかる認証管理部211を実現したので、ソフトウェア開発者やソフトウェア保守要員が、認証管理部の構成と役割を容易に把握することができるとともに、汎用性及び信頼性の高い利用者の認証処理をおこなうことができる。
As shown in the sequence diagram described above, in this embodiment, when authenticating a user, it is generated from each class such as an
また、実行系サブシステム203は、認証が失敗した旨が出力された場合は、図10で示した画面を表示するための処理を行う。
Further, the
次に、図8に示した各クラスの操作の実行手順についてもう一つの例をあげて説明する。図14は、認証管理部211が利用者から所定の機能の実行の要求を受け付けた際の操作の実行手順を示すUMLシーケンス図である。
Next, another example of the procedure for executing each class operation shown in FIG. 8 will be described. FIG. 14 is a UML sequence diagram illustrating an operation execution procedure when the
利用者が複合機1を操作して、複合機1が有する所定の機能を実行するための入力を行うと、操作系サブシステム201が所定の機能を実行する操作を受け付ける。操作系サブシステム201は、認証名簿オブジェクト711Aの利用可否確認()711cを呼び出して、利用者が所定の機能を実行できるかの確認を要求する(S1501)。なお、利用可否確認()711cの引数として利用者が要求した所定の機能を特定する値が引き渡される。以下に示される利用可否確認()721b、利用可否判断()741bも同様である。
When the user operates the
続いて、認証名簿オブジェクト711Aは、入力装置操作系サブシステム201を介して機能の実行を要求した入力装置を特定し、この入力装置に対応付けられた許可証オブジェクト721Aを特定する。なお、許可証オブジェクト721Aは図13で示した認証要求の際に生成されていることとする。所定の機能の実行の要求を行った利用者についての許可証オブジェクト721Aが生成されていなかった場合、機能の実行を許可することは出来ないものとして終了する。
Subsequently, the authentication
続いて、認証名簿オブジェクト711Aは、特定された許可証オブジェクト721Aの利用可否確認()721bを呼び出す(S1502)。利用可否確認()721bを呼び出された許可証オブジェクト721Aは、登録ユーザーオブジェクト712Aの参照()712dを呼び出し、当該利用者に対応した利用権限シートオブジェクト741Aの参照を要求する(S1503)。登録ユーザーオブジェクト712Aは、自身が保持する利用権限シートオブジェクト741Aを返却する。利用権限シートオブジェクト741Aの参照が可能となった許可証オブジェクト721Aは、当該利用権限シートオブジェクト741Aの利用可否判断()741bを呼び出す(S1504)。
Subsequently, the authentication list object 711A calls the availability confirmation () 721b of the specified
利用可否判断()741bを呼び出された利用権限シートオブジェクト741Aは、機能の実行を要求した利用者による当該機能の利用の可否を判断するための処理を実行する。具体的には、実行が要求された機能を引数として、当該利用権限シートオブジェクト741Aに関連付けられている各制限機能オブジェクト742Aのチェック()742bを呼び出す(S1505)。
The use
チェック()742bを呼び出された、各制限機能オブジェクト742Aは、当該制限機能オブジェクト742Aに関連付けられているセキュリティーキーオブジェクト743Aの確認()743cを呼び出すことにより、各セキュリティーキーの状態を問い合わせる(S1506)。確認()743cを呼び出されたセキュリティーキーオブジェクト743Aは、状態743bの値を返却する。ここで、状態743bの値は、制限()743dが呼び出されている場合は(S1401)、制限状態となっており、セキュリティーキーが複合機1に入力され、解除()743cが呼び出されている場合は(S1402)、解除状態となっている。制限機能オブジェクト742Aは、セキュリティーキーオブジェクト743Aより返却された値に基づいて、当該制限機能オブジェクト742Aが対応している機能の利用の可否を判断する。
Each
なお、複数のセキュリティーキーが関連付けられている機能の利用の可否判断をどのようにするかは、運用に応じて適宜定めればよい。例えば、全てのセキュリティーキーが解除状態の場合のみ利用を許可するようにしてもよいし、一つのセキュリティーキーが解除状態であれば利用を許可するようにしてもよい。各制限機能オブジェクト742Aによる判断結果は、チェック()742bの戻り値として、利用権限シート741Aに返却される。
Note that how to determine whether or not to use a function associated with a plurality of security keys may be appropriately determined according to the operation. For example, the use may be permitted only when all the security keys are in the release state, or the use may be permitted when one security key is in the release state. The determination result by each restricted
続いて、利用権限シートオブジェクト741Aは、属性として保持しているロール741aと利用者が要求した所定の機能つまり項目とを引数として、アクセスロール台帳オブジェクト751の確認()751dを呼び出す(S1507)。
Subsequently, the usage authority sheet object 741A calls the confirmation () 751d of the access
確認()751dを呼び出されたアクセスロール台帳オブジェクト751Aは、引数として受け取ったロール及び項目と、属性として保持しているロールと制約の対応表751aとに基づいて、利用者が所定の項目を読み出しあるいは書き込み可能であるか否かの確認を行う。具体的には受け取ったロール及び項目について図11で示したようなロールと制約の対応表751aを参照することで読み出し又は書き込みが可能であるか否か確認する。なお、アクセスロール台帳オブジェクト751は、利用者のロールが一般ユーザの場合は、プロテクトレベル751cをも参酌して読み書きの可否を確認する。確認結果は、利用権限シートオブジェクト741Aに返却さる。利用権限シートオブジェクト741Aは、制限機能オブジェクト742Aより返却された判断結果と、アクセスロール台帳オブジェクト751Aより返却された確認結果とに基づいて、利用者による機能の利用の可否を判断する。その判断結果は利用可否判断()741bの戻り値として許可証オブジェクト721Aに返却され、さらに、認証名簿オブジェクト711Aに返却される。
The access
認証名簿オブジェクト711Aは、許可証オブジェクト721Aを介して返却された、機能の利用可否の判断結果を参照し、当該機能の実行が可能である場合は、実行系サブシステム203に要求された機能を実行する旨出力する。
The authentication
上述したシーケンス図で示したように、本実施の形態では、利用者の認証を行うにあたり、認証名簿クラス711、許可証クラス721、利用権限シートクラス741、制限機能クラス742、セキュリティーキークラス743、及びアクセスロール台帳クラス751等の各クラスから生成されたオブジェクト群が、所定の機能の実行の要求を受け付けてから、利用者が機能を利用することが可能か否かを判断し、判断結果を実行系サブシステム203に出力する。このようなオブジェクト指向設計によりかかる認証管理部211の仕組みを構築し、図7で示したような概念に基づいてオブジェクトモデリングを行ったため、ソフトウェア開発者やソフトウェア保守要員が、認証管理部の構成と役割を容易に把握することができるとともに、汎用性及び信頼性の高い利用者の認証処理をおこなうことができる。
As shown in the sequence diagram described above, in the present embodiment, when authenticating a user, an authentication
なお、本実施の形態の画像形成装置で実行される認証管理プログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM(Compact Disc Read Only Memory)、フレキシブルディスク(FD)、CD−R(CD Recordable)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供するよう構成してもよい。この場合、CPU11が上記記憶媒体から、認証管理プログラムを読み出してMEM−P12上にロードすることで、画像形成装置に、上述した各ステップ、各手段または各部を実現させる。
The authentication management program executed in the image forming apparatus of the present embodiment is a file in an installable format or an executable format, and is a CD-ROM (Compact Disc Read Only Memory), a flexible disc (FD), a CD- You may comprise so that it may record and provide on computer-readable recording media, such as R (CD Recordable) and DVD (Digital Versatile Disk). In this case, the CPU 11 reads out the authentication management program from the storage medium and loads it on the MEM-
また、認証管理プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するよう構成してもよい。さらに、かかる認証管理プログラムをインターネットなどのネットワーク経由で提供または配布するようにしてもよい。 The authentication management program may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. Further, such an authentication management program may be provided or distributed via a network such as the Internet.
そして、本実施の形態の認証管理部211は、オブジェクト毎に分割して設計し、上述した構成を備えることとした。これにより変更が生じた場合そのクラス等のみ変更を加えればよい。このため従来は要件が増えた場合には設計者の作業量もこれに比例していたが、上述した構成を備えたことで作業量が低減される。
And the
また、従来の認証管理を行う部分は、アプリケーション毎に設計されていたが、上述した構成を備えたことでアプリケーション毎という概念が無くなったため、設計の効率が向上した。さらにアプリケーション毎に利用者の認証を行う場合では、同一システムに同一利用者がアプリケーション毎に認証されることとなり、あるアプリケーションを利用している際には、他の利用者がログインした利用者になりすましてシステムを利用できるという問題があった。しかし、本実施の形態にかかる認証管理部211は、上述した構成を備えることでアプリケーション毎という概念が無くなったため、なりすまして利用できるという問題を解消し、信頼性が向上した。
In addition, the conventional authentication management part is designed for each application. However, the provision of the above-described configuration eliminates the concept of each application, thereby improving the design efficiency. Furthermore, when performing user authentication for each application, the same user is authenticated for each application in the same system. When using a certain application, other users are logged in. There was a problem of impersonating the system. However, since the
この認証管理部211の備えた構造は、実社会において、ある施設の利用を許可された利用者に対して許可証を発行し、その許可証の発行により利用者を保証する規則に類似している。この許可証という概念は実社会状長く利用されているため、認証管理でも安定した構造で利用者を管理することができる。また、設計者または利用者は、許可証の概念を直感的に把握できるため、設計または利用するまでの認識が容易になる。
The structure of the
また、制限されている機能を示す制限機能クラス742と、機能の制限を解除するセキュリティーキーを示すセキュリティーキークラス743とがそれぞれ独立したクラスとして定義されていることにより、機能の種別の増減や、セキュリティーキーの種別の増減に対して柔軟に対応することき、拡張性のある構成によって機器の機能の利用の可否判断を行うことができる。
In addition, since the restricted
また、一般的に誰に公開しても支障がないアカウント名のような個人識別情報と、公開の制限が必要とされる利用者属性情報とが明確に区別されて管理されるため、利用者識別情報には公開レベルを付して管理する等、個別の管理を行うことが容易となる。 In addition, personal identification information such as account names that are generally safe to disclose to anyone and user attribute information that requires restriction on disclosure are clearly distinguished and managed. It becomes easy to perform individual management such as managing the identification information with a disclosure level.
以上、本発明の実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 As mentioned above, although the Example of this invention was explained in full detail, this invention is not limited to the specific embodiment which concerns, In the range of the summary of this invention described in the claim, various deformation | transformation * It can be changed.
1 複合機
10 コントローラ
11 CPU
12 システムメモリ(MEM−P)
12a ROM
12b RAM
13 ノースブリッジ(NB)
14 サウスブリッジ(SB)
15 AGPバス
16 ASIC
17 ローカルメモリ(MEM−C)
18 ハードディスクドライブ(HDD)
20 キーボード
30 FCU
40 USB
50 IEEE1394インターフェース
60 エンジン部
100 ソフトウェア
101、101A アプリケーション層
102 サービス層
102a スキャナ制御部
102b プロッタ制御部
102c 蓄積制御部
102d 配信/メール送受信制御部
102e FAX送受信制御部
102f ネットワーク通信制御部
102g その他の制御部
103 オペレーティングシステム
110 統合アプリケーション
121 コピーアプリケーション
122 スキャナアプリケーション
123 ファックスアプリケーション
124 プリンタアプリケーション
150 ハードウェア
151 ハードウェアリソース
151a スキャナ
151b プロッタ
151c HDD
151d ネットワーク
151e その他のリソース
201 操作系サブシステム
202 管理系サブシステム
203 実行系サブシステム
211、211a、211b 認証管理部
400 操作パネル
401 初期設定キー
402 コピーキー
403 コピーサーバーキー
404 プリンタキー
405 送信キー
406 テンキー
407 クリア/ストップキー
408 スタートキー
409 予熱キー
410 リセットキー
420 液晶タッチパネル
710 利用者管理部
711 認証名簿クラス
711a 変更()
711b 認証要求()
711c 利用可否確認()
711A 認証名簿オブジェクト
712 登録ユーザークラス
712a アカウント名
712b 状態
712c 照合()
712d 参照()
712e 編集()
712A 登録ユーザーオブジェクト
720 認証証明部
721 許可証クラス
721a 許可番号
721b 利用可否確認()
721A 許可証オブジェクト
730 利用者属性部
731 ユーザープロファイルクラス
731a 公開レベル
731b 属性
731c 参照()
731d 編集()
731A ユーザープロファイルオブジェクト
732 認証情報クラス
732a パスワード
732b 生体情報
732A 認証情報オブジェクト
733 個人環境クラス
733a デスクトップ配置
733b リダイヤル
733c 着信履歴
733d お気に入り
733e アドレス帳
733A 個人環境オブジェクト
740 個人利用権限管理部
741 利用権限シートクラス
741a ロール
741b 利用可否判断()
741A 利用権限シートオブジェクト
742 制限機能クラス
742a 種類
742b チェック()
742A 制限機能オブジェクト
743 セキュリティーキークラス
743a タイプ
743b 状態
743c 解除()
743d 制限()
743e 確認()
743A セキュリティーキーオブジェクト
750 システム利用項目管理部
751 アクセスロール台帳クラス
751a ロールと制約の対応表
751b 状態
751c プロテクトレベル
751d 確認()
751e 編集()
751A アクセスロール台帳オブジェクト
902 ‘ログイン’ボタン
2001 サービス層分離前アプリケーション
2002 サービス層分離後アプリケーション
2003 共通ルーチン分離アプリケーション
2004 オブジェクト指向アプリケーション
1
12 System memory (MEM-P)
12a ROM
12b RAM
13 North Bridge (NB)
14 South Bridge (SB)
15 AGP bus 16 ASIC
17 Local memory (MEM-C)
18 Hard disk drive (HDD)
20
40 USB
50
711b Authentication request ()
711c Check availability ()
711A
See 712d ()
712e edit ()
712A
721A Permit object 730
731d edit ()
731A
741A Usage
742A
743d Limit ()
743e confirmation ()
743A Security
751e edit ()
751A Access roll ledger object 902 'Login'
Claims (12)
それぞれの前記利用者に固有の情報であって、当該情報の公開が制限される利用者属性情報を管理する利用者属性情報管理手段と、
前記利用者識別情報と前記利用者属性情報とに基づいて前記利用者が認証された際に生成される認証証明手段とを有し、
前記認証証明手段の有無に応じて実行が要求された機能の利用の可否を判断することを特徴とする機器。 User identification information management means for managing user identification information for identifying a user who requests execution of a function;
User attribute information management means for managing user attribute information that is unique to each user and for which disclosure of the information is restricted;
Authentication certification means generated when the user is authenticated based on the user identification information and the user attribute information,
A device that determines whether or not the function requested to be executed can be used according to the presence or absence of the authentication certification means.
前記利用者権限管理手段は、前記利用者の権限に基づいて前記権限管理手段に問い合わせることにより、実行が要求された機能の利用の可否を判断することを特徴とする請求項5記載の機器。 Having authority management means for determining whether or not the function can be used for each authority of the user;
6. The device according to claim 5, wherein the user authority management unit determines whether or not the function requested to be executed can be used by inquiring of the authority management unit based on the authority of the user.
機能の実行を要求する利用者を識別するための利用者識別情報を管理する利用者識別情報管理手段と、
それぞれの前記利用者に固有の情報であって、当該情報の公開が制限される利用者属性情報を管理する利用者属性情報管理手段と、
前記利用者識別情報と前記利用者属性情報とに基づいて前記利用者が認証された際に生成される認証証明手段とを有し、
前記認証証明手段の有無に応じて実行が要求された機能の利用の可否を判断するように機能させるための利用制限プログラム。 Equipment
User identification information management means for managing user identification information for identifying a user who requests execution of a function;
User attribute information management means for managing user attribute information that is unique to each user and for which disclosure of the information is restricted;
Authentication certification means generated when the user is authenticated based on the user identification information and the user attribute information,
A use restriction program for causing a function to determine whether or not to use a function requested to be executed according to the presence or absence of the authentication certification means.
前記利用者権限管理手段は、前記利用者の権限に基づいて前記権限管理手段に問い合わせることにより、実行が要求された機能の利用の可否を判断することを特徴とする請求項11記載の利用制限プログラム。 Having authority management means for determining whether or not the function can be used for each authority of the user;
12. The usage restriction according to claim 11, wherein the user authority management unit determines whether or not the function requested to be executed can be used by inquiring of the authority management unit based on the authority of the user. program.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005282061A JP2007094673A (en) | 2005-09-28 | 2005-09-28 | Apparatus and use restriction program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005282061A JP2007094673A (en) | 2005-09-28 | 2005-09-28 | Apparatus and use restriction program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007094673A true JP2007094673A (en) | 2007-04-12 |
Family
ID=37980332
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005282061A Pending JP2007094673A (en) | 2005-09-28 | 2005-09-28 | Apparatus and use restriction program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007094673A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009015543A (en) * | 2007-07-04 | 2009-01-22 | Casio Hitachi Mobile Communications Co Ltd | Portable terminal equipment and program |
JP2013117986A (en) * | 2013-02-12 | 2013-06-13 | Canon Inc | Image processing apparatus and control method therefor, and program |
JP2016028477A (en) * | 2015-09-02 | 2016-02-25 | キヤノン株式会社 | Information processing device, method for controlling the same, and program |
US10061931B2 (en) | 2008-11-04 | 2018-08-28 | Canon Kabushiki Kaisha | Image processing apparatus, control method therefor, and computer-readable storage medium storing program for implementing the method |
-
2005
- 2005-09-28 JP JP2005282061A patent/JP2007094673A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009015543A (en) * | 2007-07-04 | 2009-01-22 | Casio Hitachi Mobile Communications Co Ltd | Portable terminal equipment and program |
US10061931B2 (en) | 2008-11-04 | 2018-08-28 | Canon Kabushiki Kaisha | Image processing apparatus, control method therefor, and computer-readable storage medium storing program for implementing the method |
JP2013117986A (en) * | 2013-02-12 | 2013-06-13 | Canon Inc | Image processing apparatus and control method therefor, and program |
JP2016028477A (en) * | 2015-09-02 | 2016-02-25 | キヤノン株式会社 | Information processing device, method for controlling the same, and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5428668B2 (en) | License management server, license management method and program | |
US20090070864A1 (en) | Image forming apparatus, image forming method, recording medium, and image forming system | |
US9529982B2 (en) | Method and apparatus to manage user account of device | |
JP2007213246A (en) | Application execution device, application execution method and application execution program | |
US10291620B2 (en) | Information processing apparatus, terminal apparatus, program, and information processing system for collaborative use of authentication information between shared services | |
JP6066750B2 (en) | Image forming apparatus, control method therefor, and program | |
US7663778B2 (en) | Document processor, image forming apparatus, document processing method, and computer program | |
JP4727263B2 (en) | Image processing apparatus, user authentication method, and user authentication program | |
JP2011258000A (en) | Information processing device and user authentication method therefor | |
JP6844182B2 (en) | Image forming device and program | |
US10116835B2 (en) | Information processing apparatus and method that manage log information | |
JP2007094674A (en) | Apparatus and use restriction program | |
JP2007094673A (en) | Apparatus and use restriction program | |
JP2007109230A (en) | Schema entry input support system, method and program for database | |
JP2007164640A (en) | Device, method, program and system for managing use restriction | |
JP2011180888A (en) | Information processor, information processing method and program, and license management system | |
JP2009205262A (en) | Application program installation device, application program installation method, program, and recording medium | |
JP4861631B2 (en) | User authentication apparatus, image forming apparatus, user authentication method, and user authentication program | |
US20090070856A1 (en) | Image forming apparatus and utilization limiting method | |
JP5672347B2 (en) | License management system and license management method | |
JP5298998B2 (en) | Device management apparatus, license migration method, license migration system, and license migration program | |
JP5549765B2 (en) | License transfer system | |
JP2005196334A (en) | Service process execution management device and method | |
JP5168043B2 (en) | DATA DISTRIBUTION SYSTEM, DATA DISTRIBUTION DEVICE, DATA DISTRIBUTION METHOD, DATA DISTRIBUTION PROGRAM, AND RECORDING MEDIUM | |
JP7247689B2 (en) | Information processing device and program |