JP4748766B2 - Information processing apparatus, information processing system, information processing method, program, and storage medium - Google Patents

Information processing apparatus, information processing system, information processing method, program, and storage medium Download PDF

Info

Publication number
JP4748766B2
JP4748766B2 JP2004355882A JP2004355882A JP4748766B2 JP 4748766 B2 JP4748766 B2 JP 4748766B2 JP 2004355882 A JP2004355882 A JP 2004355882A JP 2004355882 A JP2004355882 A JP 2004355882A JP 4748766 B2 JP4748766 B2 JP 4748766B2
Authority
JP
Japan
Prior art keywords
service
information
service request
instruction
authentication
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 - Fee Related
Application number
JP2004355882A
Other languages
Japanese (ja)
Other versions
JP2006163947A (en
JP2006163947A5 (en
Inventor
伸之 重枝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2004355882A priority Critical patent/JP4748766B2/en
Priority to CN200510099474.7A priority patent/CN100596067C/en
Priority to CN2010101140557A priority patent/CN101789951B/en
Priority to US11/220,248 priority patent/US7647319B2/en
Publication of JP2006163947A publication Critical patent/JP2006163947A/en
Publication of JP2006163947A5 publication Critical patent/JP2006163947A5/ja
Priority to US12/632,392 priority patent/US8290978B2/en
Application granted granted Critical
Publication of JP4748766B2 publication Critical patent/JP4748766B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Description

本発明は、ネットワークを介して複数のWebサービスを提供する情報処理装置における情報処理技術に関するものである。   The present invention relates to an information processing technique in an information processing apparatus that provides a plurality of Web services via a network.

近年、構造化言語であるXML(eXtensible Markup Language)はビジネス文書の管理やメッセージング、データベースなどの用途に利用され、その応用範囲は、ますます広がってきている。   In recent years, XML (extensible Markup Language), which is a structured language, has been used for business document management, messaging, database, and the like, and its application range has been expanding.

その顕著な例が、XML−SOAP(Simple Object Access Protocol)を利用した分散オブジェクトモデルであるWebサービスへの応用である。そして、このWebサービスの出現により、従来のオブジェクト指向モデルからサービス指向アーキテクチャ(SOA:Service Oriented Architecture)への転換が徐々に進められるようになってきている。 A prominent example is the application to a Web service that is a distributed object model using XML-SOAP (Simple Object Access Protocol). Then, with the advent of the Web services, service-oriented architecture from the traditional object-oriented model: conversion to (SOA Service Oriented Architecture) it has come to proceed gradually.

サービス指向アーキテクチャとは、Webサービスを単位としてプロセスを分割するアーキテクチャであり、既存のWebサービスを再利用、再編成することができるため、高信頼性、低コストを維持しながら迅速にビジネスソリューションを構築・提供できるというメリットを有している。   A service-oriented architecture is an architecture that divides processes in units of Web services. Because existing Web services can be reused and reorganized, business solutions can be quickly delivered while maintaining high reliability and low cost. It has the merit that it can be constructed and provided.

ここで、ビジネスソリューションの提供にあたっては、強固なセキュリティを構築することが不可欠である。特にネットワーク上に構築されるビジネスソリューションにあっては、ユーザ情報およびユーザデータの保護、さらには本人性の識別、認証が重要な課題となっている。Webサービスを基盤とするサービス指向アーキテクチャにおいても例外ではなく、同一のWebサービスであっても、そのWebサービスが使用される環境、セキュリティレベル、システム構成等の諸条件によって、それぞれ異なる認証、権限付与処理を提供するといった柔軟な対応が望まれる。例えば、ユーザ認証1つとっても、簡便なパスワード認証、PINコードによる認証、ICカードによる認証、生体認証等、その認証方法は多岐にわたるため、諸条件を考慮して適切に対応していくことが重要である。   In providing business solutions, it is essential to build strong security. In particular, in business solutions built on a network, protection of user information and user data, and identification and authentication of identity are important issues. There is no exception in the service-oriented architecture based on Web services. Even if the same Web service is used, different authentication and authorization are required depending on various conditions such as the environment in which the Web service is used, security level, and system configuration. A flexible response such as providing processing is desired. For example, there are various authentication methods such as simple user authentication, PIN code authentication, IC card authentication, biometric authentication, etc., so it is important to take appropriate measures in consideration of various conditions. It is.

その一方で、ネットワークソリューションの利便性、簡易性を高めるために、シングルサインオン、Federated Identity(統合認証)等の要求も高まってきている。例えば、複数のWebサービスを統合して、新規Webサービスを構築、提供する場合においては、それぞれのWebサービスごとに実行される認証、権限付与処理を統合し、シングルサインオン等の環境を提供することが要求される。このため、サービス指向アーキテクチャの効率の良さ及び柔軟性を損なうことなく、強固なセキュリティを実現するという背反する要求を満たす解決策が必要となってきている。   On the other hand, in order to improve the convenience and simplicity of network solutions, demands such as single sign-on and federated identity (integrated authentication) are increasing. For example, when a plurality of Web services are integrated to construct and provide a new Web service, authentication and authorization processing executed for each Web service are integrated to provide an environment such as single sign-on. Is required. Therefore, there is a need for a solution that meets the contradicting demand to achieve strong security without compromising the efficiency and flexibility of the service-oriented architecture.

このような背景のもと、Webサービスを基盤とするサービス指向アーキテクチャ(SOA)を利用して、柔軟性やユーザビリティを有しつつ強固なセキュリティを実現するために、本願出願人は、Webサービスを提供する情報処理装置において、Webサービスと、当該サービスに対する認証、権限処理を実施するサービスとの対応付けを記述したテーブル(MAPPING TABLE)を導入することを提案している。   In this background, in order to realize strong security with flexibility and usability using a service-oriented architecture (SOA) based on a web service, the applicant of the present application In the information processing apparatus to be provided, it is proposed to introduce a table (MAPPING TABLE) in which a correspondence between a Web service and a service that performs authentication and authority processing for the service is described.

図10は、本願出願人が提案する当該MAPPING TABLEを備え、Webサービスを提供可能な情報処理装置のモデル図である。以下、同モデルについて簡単に説明する。   FIG. 10 is a model diagram of an information processing apparatus provided with the MAPPING TABLE proposed by the present applicant and capable of providing a Web service. The model will be briefly described below.

同図に示すように、ENTRANCE1001においてWebサービスに対するSOAPリクエストを受信すると、リクエスト先のサービス名称、認証情報はARBITRATOR1002に通知される。   As shown in the drawing, when the SOAP request for the Web service is received in the ENTRANCE 1001, the service name and authentication information of the request destination are notified to the ARBITRATOR 1002.

ARBITRATOR1002では、MAPPING TABLE1005を参照し、リクエストされたWebサービスに対応づけられた認証、権限付与サービスに関する情報を取得する。   The ARBITRATOR 1002 refers to the MAPPING TABLE 1005 and acquires information related to the authentication and authorization service associated with the requested Web service.

ARBITRATOR1002では、取得した認証、権限付与サービスに関する情報に基づいて、ENTRANCE1001より受信した認証情報を、対応するAUTHENTICATION/AUTHORIZATION SERVICE1003に通知する。   The ARBITRATOR 1002 notifies the corresponding AUTHENTICATION / AUTHORIZATION SERVICE 1003 of the authentication information received from the ENTRANCE 1001 based on the acquired authentication and authorization information.

AUTHENTICATION/AUTHORIZATION SERVICE1003における認証、権限付与処理の結果は、ARBITRATOR1002に返信され、ARBITRATOR1002では、当該処理結果に基づいてWebサービスの実行の可否、あるいはアクセス制限情報をENTARANCE1001に送信する。   The result of the authentication / authorization processing in the AUTHENTICATION / AUTHORIZATION SERVICE 1003 is returned to the ARBITRATOR 1002, and the ARBITRATOR 1002 transmits whether or not the Web service can be executed or access restriction information to the ENTRANANCE 1001 based on the processing result.

ENTRANCE1001では、ARBITRATOR1002からの送信内容に基づいて、リクエストされたSERVICE1004をコールするか、あるいはリクエスト発行元に対し、Webサービスの実行が拒否された旨を通知する。   The ENTRANCE 1001 calls the requested SERVICE 1004 based on the transmission contents from the ARBITRATOR 1002, or notifies the request issuer that the execution of the Web service has been rejected.

このような情報処理装置によれば、Webサービスの提供を行うにあたり、強固なセキュリティを維持しつつ、利便性、簡易性の高いネットワークソリューションを低コストで実現することができる。   According to such an information processing apparatus, when providing a Web service, a highly convenient and simple network solution can be realized at low cost while maintaining strong security.

しかしながら、上述した情報処理装置の場合、ARBITRATOR1002がMAPPING TABLE1005を参照することにより、リクエストされたWebサービスに対する認証・権限付与サービスに関する情報を取得する構成を採っているため、Webサービスの追加/削除に対しては、逐次、MAPPING TABLE1005を更新しなければならないという問題がある。   However, in the case of the information processing apparatus described above, the ARBITRATOR 1002 refers to the MAPPING TABLE 1005 to acquire information related to the authentication / authorization service for the requested Web service. On the other hand, there is a problem that the MAPPING TABLE 1005 must be updated sequentially.

これに対しては、ARBITRATOR1002の管理者が逐次手動でMAPPING TABLE1005を更新することで対処することも可能であるが、管理者がWebサービスの更新情報を調べて、その都度更新作業を行わなければならず、しかもその作業は煩雑であるため、管理コストが高くつくといった問題がある。   This can be dealt with by the administrator of the ARBITRATOR 1002 by manually updating the MAPPING TABLE 1005 sequentially, but the administrator must check the update information of the Web service and perform the update operation each time. In addition, since the operation is complicated, there is a problem that the management cost is high.

更に、管理者によるMAPPING TABLE1005の更新は管理者の都合で実施されるため、Webサービスの新規追加/削除の情報の反映が遅くなり、最適なセキュリティシステムを最適なタイミングで導入することへの妨げとなり、ひいては不正利用による被害をもたらすことの原因ともなる。   Furthermore, since the update of the MAPPING TABLE 1005 by the administrator is performed at the convenience of the administrator, the reflection of the information on the new addition / deletion of the Web service is delayed, which hinders the introduction of the optimal security system at the optimal timing. As a result, it can cause damage from unauthorized use.

本発明は、上記課題に鑑みてなされたものであり、Webサービスを基盤とするサービス指向アーキテクチャを利用して、柔軟性のある強固なセキュリティを実現する情報処理装置において、Webサービスの追加/削除を含む管理作業を迅速化かつ簡素化し、管理コストの軽減を図ることを目的とする。   The present invention has been made in view of the above-described problems. In an information processing apparatus that realizes flexible and strong security using a service-oriented architecture based on a Web service, the addition / deletion of the Web service is performed. The purpose is to speed up and simplify management work, including management costs, and to reduce management costs.

上記の目的を達成するために本発明に係る情報処理装置は以下のような構成を備える。即ち、
複数のサービスとサービス要求元の認証処理を実行する複数の認証処理手段との対応付けが記述された所定の情報を記憶する記憶手段と、
サービス要求元から、前記複数のサービスのいずれかを識別する識別情報と当該サービスに実行させる処理を示す属性情報とを含むサービス要求を受け付けるサービス要求受付手段と、
前記サービス要求に含まれる前記識別情報によって識別されるサービスに対応する認証処理手段を、前記記憶手段に記憶された所定の情報に基づいて選択する選択手段と、
サービスに関する指示を行う指示手段と、を備え、
前記サービス要求受付手段は、前記サービス要求を受け付けた場合に、当該サービス要求に含まれる前記属性情報を保持しつつ、当該サービス要求に含まれる前記識別情報を前記選択手段に通知し、前記選択手段により選択された認証処理手段によって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、当該サービス要求に含まれる前記識別情報によって識別されるサービスに要求し
前記記憶手段は、前記指示手段によりサービスに関する指示が行われた場合に、当該指示が行われたサービスと、当該指示が行われたサービスに対応する認証処理手段との対応付けについて、前記所定の情報を更新するよう構成されていることを特徴とする。
In order to achieve the above object, an information processing apparatus according to the present invention comprises the following arrangement. That is,
Storage means for storing predetermined information in which associations between a plurality of services and a plurality of authentication processing means for executing authentication processing of service requesters are described;
Service request accepting means for accepting a service request including identification information for identifying any of the plurality of services and attribute information indicating processing to be executed by the service from a service request source;
Selecting means for selecting an authentication processing means corresponding to a service identified by the identification information included in the service request based on predetermined information stored in the storage means;
An instruction means for instructing a service,
When the service request accepting unit accepts the service request, the service request accepting unit notifies the selection unit of the identification information included in the service request while holding the attribute information included in the service request. Requesting the service identified by the identification information included in the service request to execute the process indicated by the held attribute information when the service request source is authenticated by the authentication processing means selected by
The storage means, when an instruction about a service is given by the instruction means, the association between the service for which the instruction has been given and the authentication processing means corresponding to the service for which the instruction has been given. It is configured to update information.

本発明によれば、Webサービスを基盤とするサービス指向アーキテクチャを利用して、柔軟性のある強固なセキュリティを実現する情報処理装置において、Webサービスの追加/削除を含む管理作業を迅速化かつ簡素化し、管理コストを軽減することが可能となる。   According to the present invention, in an information processing apparatus that realizes flexible and strong security using a service-oriented architecture based on a Web service, management operations including addition / deletion of the Web service are speeded up and simplified. And management costs can be reduced.

以下、必要に応じて添付図面を参照しながら本発明の実施形態を詳細に説明する。なお、本発明はネットワークを介してWebサービスを提供する種々の装置において実施可能であり、様々なシステムに適用できるが、以下では、ネットワーク対応型MFP(Multi Function Peripheral)において実施すると共に、該MFPを備える情報処理システムに適用する場合について説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings as necessary. The present invention can be implemented in various apparatuses that provide Web services via a network and can be applied to various systems. Hereinafter, the present invention is implemented in a network-compatible MFP (Multi Function Peripheral) and the MFP. The case of applying to an information processing system comprising

[第1の実施形態]
<情報処理システムの全体構成>
図11は、本発明の一実施形態にかかる情報処理装置である、ネットワーク対応型MFP(以下、単に「MFP」と称す)を含む情報処理システムの全体構成を示す図である。図11において、1100はMFPであり、ネットワーク1110を介して接続可能なコンピュータ端末1121へプリントサービス、スキャンサービス、ストレージサービス、FAXサービスなど各種Webサービスを提供するMFPである。1121はコンピュータ端末であり、ネットワーク1110を介してMFP1100が提供する各種Webサービスを利用することができる。
[First Embodiment]
<Overall configuration of information processing system>
FIG. 11 is a diagram showing an overall configuration of an information processing system including a network-compatible MFP (hereinafter simply referred to as “MFP”), which is an information processing apparatus according to an embodiment of the present invention. In FIG. 11, reference numeral 1100 denotes an MFP, which provides various Web services such as a print service, a scan service, a storage service, and a FAX service to a computer terminal 1121 that can be connected via a network 1110. A computer terminal 1121 can use various Web services provided by the MFP 1100 via the network 1110.

MFP1100は、通信装置1101、CPU(中央処理装置)1102、メモリ1103、HDD(ハードディスクドライブ)1104及び画像処理装置1107、プリンタ1105、スキャナ1106などのハードウェアから構成されており、構造化言語であるXML(eXtensible Markup Language)を用いて認証、権限付与等のセキュリティ処理を行う機能を有している。   The MFP 1100 includes a communication device 1101, a CPU (central processing unit) 1102, a memory 1103, an HDD (hard disk drive) 1104, hardware such as an image processing device 1107, a printer 1105, and a scanner 1106, and is a structured language. It has a function of performing security processing such as authentication and authorization using XML (extensible Markup Language).

通信装置1101は、ネットワーク1110を介して通信を行う。CPU1102は、画像処理装置1107における種々の機能を実現するためのプログラムを実行するコンピュータである。具体的には、CPU1102が、HDD1104から種々の機能を実現するためのプログラム(アプリケーションプログラム等)を読み出し、メモリ1103をワーク領域として、当該読み出したプログラムを実行する。   The communication device 1101 performs communication via the network 1110. The CPU 1102 is a computer that executes programs for realizing various functions in the image processing apparatus 1107. Specifically, the CPU 1102 reads programs (application programs and the like) for realizing various functions from the HDD 1104, and executes the read programs using the memory 1103 as a work area.

<MFP1100の機能構成>
次に、本実施形態にかかるMFP1100の機能構成について図1を用いて説明する。図1は、本実施形態にかかるMFP1100の機能構成を示すブロック図である。
<Functional Configuration of MFP 1100>
Next, a functional configuration of the MFP 1100 according to the present embodiment will be described with reference to FIG. FIG. 1 is a block diagram showing a functional configuration of the MFP 1100 according to the present embodiment.

同図に示すように、MFP1100は、通信機能としてTCP/IP/UDPプロトコルをスタックするTCP/IP/UDPプロトコルスタック処理部101を備え、その上位層にSOAP処理部102を備え、更にその上位層に調停サービス103、XMLスクリプト処理部104、認証・権限サービスA(107)、認証サービスB(108)、権限サービスB(109)、プリントサービス110、スキャンサービス111、ストレージサービス112、FAXサービス113、サービス管理サービス(指示手段)114を備え、ネットワーク1110を介して、コンピュータ端末1121に対し、これらWebサービス(110〜113)を提供する。   As shown in the figure, the MFP 1100 includes a TCP / IP / UDP protocol stack processing unit 101 that stacks TCP / IP / UDP protocols as a communication function, a SOAP processing unit 102 as an upper layer, and a higher layer. Mediation service 103, XML script processing unit 104, authentication / authorization service A (107), authentication service B (108), authority service B (109), print service 110, scan service 111, storage service 112, FAX service 113, A service management service (instruction means) 114 is provided, and these Web services (110 to 113) are provided to the computer terminal 1121 via the network 1110.

MFP1100に対して、システム管理者は後述するサービス管理サービス114を介してかかるWebサービスの機能停止、Webサービスの削除、Webサービスの再インストール、新規Webサービスのインストールをコンピュータ端末1121を介して行うことが可能である。なお、ここでいう新規Webサービスには、例えば既にインストール済みの複数のWebサービスを組みあわせ、新規機能を提供する場合も含まれるものとする。   For the MFP 1100, the system administrator performs the function stop of the Web service, the deletion of the Web service, the reinstallation of the Web service, and the installation of a new Web service via the computer terminal 1121 via the service management service 114 described later. Is possible. Note that the new Web service here includes, for example, a case where a plurality of already installed Web services are combined to provide a new function.

SOAP処理部102は、受信したSOAPリクエストを解析し、SOAPヘッダ部の記述内容を調停サービス103に送信し、調停サービス103から返信される処理結果に基づき、SOAPレスポンスを生成し、SOAPリクエストを発行したコンピュータ端末1121に対し返信する機能と、調停サービス103から返信される処理結果に基づき、該当するWebサービスに対しSOAPボディの記述内容を送信し、該当Webサービスから通知される処理結果に基づきSOAPレスポンスを生成し、SOAPリクエストを発行したコンピュータ端末1121に対し返信する機能とを有する。   The SOAP processing unit 102 analyzes the received SOAP request, transmits the description content of the SOAP header part to the arbitration service 103, generates a SOAP response based on the processing result returned from the arbitration service 103, and issues a SOAP request The description contents of the SOAP body are transmitted to the corresponding Web service based on the function for returning to the computer terminal 1121 and the processing result returned from the arbitration service 103, and the SOAP based on the processing result notified from the corresponding Web service. It has a function of generating a response and returning it to the computer terminal 1121 that issued the SOAP request.

調停サービス103は、SOAP処理部102より送信されたSOAPヘッダ部の記述内容を解析し、実行要求されたWebサービスに関する情報を取得する機能と、XMLスクリプト処理部104を介して、メモリ装置制御部105が管理するメモリ(HDD1104)上に登録されたXMLスクリプト106より、実行要求されたWebサービスに対応づけられた認証・権限付与サービスに関する情報を取得する機能とを有する。   The arbitration service 103 analyzes the description content of the SOAP header part transmitted from the SOAP processing unit 102, acquires information about the Web service requested to be executed, and the memory device control unit via the XML script processing unit 104. 105 has a function of acquiring information related to the authentication / authorization service associated with the Web service requested to be executed from the XML script 106 registered on the memory (HDD 1104) managed by the computer 105.

さらに調停サービス103は取得した認証・権限付与サービスに関する情報に基づき、SOAPヘッダ部に記述された認証情報を、XMLスクリプト106より取得した認証・権限付与サービス(107〜109のいずれか)に対し送信する機能と、認証・権限付与サービス(107〜109のいずれか)から通知される処理結果に基づきSOAPレスポンスを生成し、SOAP処理部102に対し通知する機能とを有する。   Further, the arbitration service 103 transmits the authentication information described in the SOAP header part to the authentication / authorization service (any one of 107 to 109) acquired from the XML script 106 based on the acquired information about the authentication / authorization service. And a function of generating a SOAP response based on the processing result notified from the authentication / authorization service (any one of 107 to 109) and notifying the SOAP processing unit 102.

なお、本実施形態にかかるMFP1100は、認証・権限付与機能を実現するサービスとして認証・権限サービスA(107)、認証サービスB(108)、権限サービスB(109)を組み込む構成としているが、本発明はこれに限られず、図1に示すように更に、認証・権限サービスC(115)をMFP1100の外部に配し、ネットワーク1110を介して利用可能なように構成してもよい。   The MFP 1100 according to the present embodiment is configured to incorporate the authentication / authorization service A (107), the authentication service B (108), and the authority service B (109) as services for realizing the authentication / authorization function. The invention is not limited to this, and as shown in FIG. 1, the authentication / authorization service C (115) may be arranged outside the MFP 1100 so that it can be used via the network 1110.

各認証・権限付与サービス(107〜109)は調停サービス103より送信された認証情報を処理し、その処理結果を調停サービス103に対し返信する機能を有する。   Each authentication / authorization service (107 to 109) has a function of processing the authentication information transmitted from the arbitration service 103 and returning the processing result to the arbitration service 103.

サービス管理サービス114は、Webサービスの管理を行う専用のサービスで、新規のWebサービスの追加(インストール)、既存のWebサービスの削除(アンインストール)、停止、再開などを制御する機能を有する。なお、本実施形態において、当該サービス管理サービス114は、MFP1100に内在しているものとして図1に描かれているが、MFP1100の外部にネットワーク1110を介して接続されたコンピュータ端末1121内に在っても良い。なお、当該サービス管理サービス114は、他のサービスと同様、XML−SOAPに対応したWebサービスとして構成されている。   The service management service 114 is a dedicated service for managing a web service, and has a function of controlling addition (installation) of a new web service, deletion (uninstallation) of an existing web service, stoppage, restart, and the like. In the present embodiment, the service management service 114 is depicted in FIG. 1 as being inherent in the MFP 1100, but is present in the computer terminal 1121 connected to the outside of the MFP 1100 via the network 1110. May be. Note that the service management service 114 is configured as a Web service compatible with XML-SOAP as with other services.

さらにMFP1100は、プリントサービス110、スキャンサービス111、ストレージサービス112、FAXサービス113を実装している。これらはXML−SOAPに対応したWebサービスであり、これらのWebサービスに対してはサービス管理サービス114を介して、Webサービスの停止、再開、削除、再インストールすることが可能であり、また、同様に新規Webサービスの追加、開始、停止、削除が可能である。   Further, the MFP 1100 has a print service 110, a scan service 111, a storage service 112, and a FAX service 113. These are Web services compatible with XML-SOAP, and the Web services can be stopped, restarted, deleted, and reinstalled via the service management service 114. New Web services can be added, started, stopped, and deleted.

調停サービス103の下位層となるXMLスクリプト処理部104は、メモリ装置制御部105を介してメモリ(HDD1104)へアクセスする機能を有する。メモリ装置制御部105は、Webサービスと、そのWebサービスに対する認証・権限付与サービスに関する情報、および処理手順が記述されたXMLスクリプト106を格納するメモリ(HDD1104)へのデータの書き込み及びメモリ(HDD1104)からのデータの読み出しを制御する。   The XML script processing unit 104, which is a lower layer of the arbitration service 103, has a function of accessing the memory (HDD 1104) via the memory device control unit 105. The memory device control unit 105 writes data to the memory (HDD 1104) storing the Web service, information related to the authentication / authorization service for the Web service, and the XML script 106 describing the processing procedure, and the memory (HDD 1104). Controls reading of data from.

該XMLスクリプト106は、サービス管理サービス114を利用して管理者がWebサービスをインストールする際、Webサービスの実装モジュールとあわせて自動的に登録される。また、当該XMLスクリプト106には、Webサービスの管理情報(停止中、起動中など)が記述されており、ユーザがWebサービスを利用する際にチェックされるようになっている。サービス管理サービス114を利用して、管理者がWebサービスの削除を行った場合、当該XMLスクリプト106も自動的に削除される。   The XML script 106 is automatically registered together with the web service implementation module when the administrator installs the web service using the service management service 114. The XML script 106 describes Web service management information (stopped, running, etc.), and is checked when the user uses the Web service. When the administrator deletes the Web service using the service management service 114, the XML script 106 is automatically deleted.

なお、管理者は、該XMLスクリプト106の記述内容を書き換えることで、同一のWebサービスに対し、他の認証・権限付与サービスへの対応付けをすることも可能である。また、複数のWebサービスの組み合わせにより機能する新規Webサービスに対し、新たに認証・権限付与サービスを対応付けるなど、柔軟にセキュリティ要件に対処することが可能である。   Note that the administrator can associate the same Web service with another authentication / authorization service by rewriting the description content of the XML script 106. In addition, it is possible to flexibly cope with security requirements such as newly associating an authentication / authorization service with a new Web service that functions by combining a plurality of Web services.

ただし、本実施形態にかかるMFP1100においては、メモリ(HDD1104)上に該XMLスクリプト106が存在しない場合には、MFP1100上で稼動中のWebサービスのいずれも実行することはできない。   However, in the MFP 1100 according to the present embodiment, if the XML script 106 does not exist on the memory (HDD 1104), none of the Web services running on the MFP 1100 can be executed.

また、システム管理者は、Webサービスのインストールをネットワーク1110を介して実施することも可能である。この場合、システム管理者は前述のサービス管理サービス114の動作するコンピュータ端末1121上でWebサービスのインストール処理を実行する。サービス管理サービス114は、後述するサービス管理処理フローに従ってWebサービスのインストール処理と、XMLスクリプト106の登録処理とを行う。これにより、メモリ装置制御部105が制御するメモリ(HDD1104)上に、当該XMLスクリプト106が格納されることとなる。   The system administrator can also install the Web service via the network 1110. In this case, the system administrator executes Web service installation processing on the computer terminal 1121 on which the above-described service management service 114 operates. The service management service 114 performs Web service installation processing and XML script 106 registration processing according to a service management processing flow described later. As a result, the XML script 106 is stored in the memory (HDD 1104) controlled by the memory device control unit 105.

本実施形態にかかるMFP1100においては、XMLスクリプト106の登録、削除、有効化、無効化を行うために以下に示すXML−SOAP RPC(Remote Procedure Call)を備える。これにより、XMLスクリプト処理部104は、XMLスクリプト106の登録、削除、およびXMLスクリプト106の有効化、無効化を行うことができる。具体的には、XMLスクリプト106をMFP1100に対し送信、登録するにあたっては、SOAP関数であるUploadScript(scriptName、account、password)を用いる。   The MFP 1100 according to the present embodiment includes the following XML-SOAP RPC (Remote Procedure Call) in order to register, delete, validate, and invalidate the XML script 106. As a result, the XML script processing unit 104 can register and delete the XML script 106, and enable and disable the XML script 106. Specifically, when sending and registering the XML script 106 to the MFP 1100, UploadScript (scriptName, account, password) that is a SOAP function is used.

ここで、MFP1100では、XMLスクリプト106を複数登録することが可能な構成を有しているため、scriptNameはその識別情報として使用される。なお、本実施形態においては、32文字までのASCII文字列が使用可能である。ただし、accountとpasswordは、いずれも32文字までのASCII文字列が使用される。かかる識別情報は、予めMFP1100に対し登録済みであるものとし、その情報はメモリ装置制御部105が管理するメモリ(HDD1104)上に記録されており、システム管理者のみが知りうるように構成されているものとする。また、XMLデータであるXMLスクリプト106は、該SOAP関数を記述するSOAPリクエストの添付ファイルの形式でMFP1100に送信される。   Here, since the MFP 1100 has a configuration in which a plurality of XML scripts 106 can be registered, the scriptName is used as identification information thereof. In the present embodiment, an ASCII character string of up to 32 characters can be used. However, an ASCII character string of up to 32 characters is used for both account and password. It is assumed that such identification information is registered in advance in the MFP 1100, and the information is recorded on a memory (HDD 1104) managed by the memory device control unit 105, and is configured so that only the system administrator can know it. It shall be. An XML script 106 that is XML data is transmitted to the MFP 1100 in the form of an attached file of a SOAP request describing the SOAP function.

また、MFP1100に登録済みのXMLスクリプト106を削除するにあたっては、SOAP関数であるDeleteScript(scriptName、account、password)を用いる。なお、この場合もaccount、password情報を知りうるシステム管理者のみが、MFP1100のメモリ(HDD1104)上に登録されたXMLスクリプト106を削除することができるものとする。MFP1100では、複数のXMLスクリプト106が登録可能であるためscriptNameにより、削除対象となるXMLスクリプト106を指定する。   Further, when deleting the XML script 106 registered in the MFP 1100, DeleteScript (scriptName, account, password) which is a SOAP function is used. In this case as well, only the system administrator who can know the account and password information can delete the XML script 106 registered in the memory (HDD 1104) of the MFP 1100. In the MFP 1100, since a plurality of XML scripts 106 can be registered, the XML script 106 to be deleted is designated by scriptName.

また、MFP1100に登録された複数のXMLスクリプト106に対し、scriptNameで指定したXMLスクリプト106を有効化するにあたっては、SOAP関数であるEnableScript(scriptName、account、password)を用いる。また、ここでもaccount、password情報を知りうるシステム管理者のみが、MFP1100のメモリ(HDD1104)上に登録されたXMLスクリプト106を指定し、有効化できるものとする。   In order to validate the XML script 106 specified by scriptName for a plurality of XML scripts 106 registered in the MFP 1100, EnableScript (scriptName, account, password) which is a SOAP function is used. Also here, only the system administrator who can know the account and password information can designate and validate the XML script 106 registered in the memory (HDD 1104) of the MFP 1100.

また、MFP1100に登録された複数のXMLスクリプト106に対し、scriptNameで指定したXMLスクリプト106を無効化するにあたっては、SOAP関数であるDisableScript(scriptName、account、password)を用いる。また、ここでもaccount、password情報を知りうるシステム管理者のみが、MFP1100のメモリ(HDD1104)上に登録されたXMLスクリプト106を指定し、無効化できるものとする。   Further, DisableScript (scriptName, account, password), which is a SOAP function, is used to invalidate the XML script 106 specified by scriptName for a plurality of XML scripts 106 registered in the MFP 1100. Also here, only the system administrator who can know the account and password information can designate and invalidate the XML script 106 registered in the memory (HDD 1104) of the MFP 1100.

<XMLスクリプトの登録、削除、有効化、無効化処理>
次に、図2を用いてXMLスクリプト106の登録、削除、有効化、無効化処理の流れについて説明する。図2は、本実施形態にかかるMFP1100におけるXMLスクリプト106の登録、削除、有効化、無効化処理の流れを示すフローチャートである。
<Registration, deletion, validation, and invalidation processing of XML script>
Next, the flow of registration, deletion, validation, and invalidation processing of the XML script 106 will be described with reference to FIG. FIG. 2 is a flowchart showing the flow of registration, deletion, validation, and invalidation processing of the XML script 106 in the MFP 1100 according to the present embodiment.

尚、図2の処理の前提として、XMLスクリプト106は、外部デバイスであるコンピュータ端末1121よってMFP1100に対し送信されるものとする(つまり、ここでは、サービス管理サービス114はコンピュータ端末1121内にあるものとして説明する)。   2 is assumed to be transmitted to the MFP 1100 by the computer terminal 1121 which is an external device (that is, the service management service 114 is in the computer terminal 1121 here). As described).

図2に示すように、まず、調停サービス103を構成するXMLスクリプト処理部104は、SOAP処理部102を介してSOAPリクエストであるUploadScriptを受信したか否かを判断する(ステップS201)。ここで、SOAPリクエストであるUploadScriptを受信したと判断した場合には、XMLスクリプト処理部104は、引数であるaccountとpasswordの内容を確認すべく、メモリ装置制御部105を介してメモリ(HDD1404)上に記録されている情報(以下、アカウント情報とする)と一致するか否かを判断する(ステップS202)。   As shown in FIG. 2, first, the XML script processing unit 104 configuring the arbitration service 103 determines whether or not an UploadScript that is a SOAP request has been received via the SOAP processing unit 102 (step S <b> 201). If it is determined that UploadScript as a SOAP request has been received, the XML script processing unit 104 uses the memory (HDD 1404) via the memory device control unit 105 to check the contents of the arguments account and password. It is determined whether or not it matches the information recorded above (hereinafter referred to as account information) (step S202).

アカウント情報が一致しないと判断した場合には(ステップS202で「no」の場合には)、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1121に返信する(ステップS203)。一方、アカウント情報が一致すると判断した場合には(ステップS202で「yes」の場合には)、XMLスクリプト処理部104は、既に同一scriptNameを持つXMLスクリプト106が登録済みであるか否かを判断する(ステップS204)。   If it is determined that the account information does not match (in the case of “no” in Step S202), the XML script processing unit 104 returns an error response message to the computer terminal 1121 via the SOAP processing unit 102 (Step S202). S203). On the other hand, when it is determined that the account information matches (in the case of “yes” in step S202), the XML script processing unit 104 determines whether or not the XML script 106 having the same scriptName has already been registered. (Step S204).

既に登録済みであると判断した場合には(ステップS204で「yes」の場合には)、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1121に返信し(ステップS203)、図2のステップS201に戻る。尚、この場合には、システム管理者は既に登録済みとなっているXMLスクリプトをDeleteScriptを使って削除しない限り、同一のscriptNameを持つXMLスクリプトを登録することはできない。   If it is determined that it has already been registered (in the case of “yes” in step S204), the XML script processing unit 104 returns an error response message to the computer terminal 1121 via the SOAP processing unit 102 (step S204). S203), the process returns to step S201 in FIG. In this case, the system administrator cannot register an XML script having the same scriptName unless the already registered XML script is deleted using DeleteScript.

登録済みのXMLスクリプトが存在しないと判断した場合には(ステップS204で「no」の場合には)、XMLスクリプト処理部104は、該SOAPリクエストの添付ファイルの形式で送信されたXMLスクリプトを、メモリ装置制御部105を介してメモリ(HDD1104)上に記録する(ステップS205)。   When it is determined that there is no registered XML script (in the case of “no” in step S204), the XML script processing unit 104 transmits the XML script transmitted in the form of the attached file of the SOAP request. Recording is performed on the memory (HDD 1104) via the memory device control unit 105 (step S205).

また、ステップS201においてSOAPリクエストであるUploadScriptを受信していないと判断した場合には(ステップS201で「no」の場合には)、XMLスクリプト処理部104は、SOAP処理部102を介してSOAPリクエストであるDeleteScriptを受信したか否かを判断する(ステップS206)。ここで、SOAPリクエストであるDeleteScriptを受信したと判断した場合には(ステップS206で「yes」の場合には)、XMLスクリプト処理部104は、引数であるaccountとpasswordの内容を確認するため、メモリ装置制御部105を介してメモリ(HDD1104)上に記録されているアカウント情報と一致するか否かを判断する(ステップS207)。   If it is determined in step S201 that UploadScript, which is a SOAP request, has not been received (in the case of “no” in step S201), the XML script processing unit 104 sends a SOAP request via the SOAP processing unit 102. It is determined whether or not DeleteScript is received (step S206). Here, when it is determined that DeleteScript which is a SOAP request has been received (in the case of “yes” in step S206), the XML script processing unit 104 checks the contents of the account and password as arguments. It is determined whether or not it matches the account information recorded on the memory (HDD 1104) via the memory device control unit 105 (step S207).

ステップS207においてアカウント情報と一致しないと判断した場合には、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1121に返信する(ステップS208)。また、アカウント情報と一致すると判断した場合には(ステップS207で「yes」の場合には)、XMLスクリプト処理部104は、既に同一scriptNameを持つXMLスクリプトが登録済みか否か判断する(ステップS209)。   If it is determined in step S207 that the account information does not match, the XML script processing unit 104 returns an error response message to the computer terminal 1121 via the SOAP processing unit 102 (step S208). If it is determined that the account information matches (if “yes” in step S207), the XML script processing unit 104 determines whether an XML script having the same scriptName has already been registered (step S209). ).

ステップS209において、指定されたscriptNameをもつXMLスクリプトがメモリ(HDD1104)上に記録されていない場合(登録済みでない場合)には(ステップS209で「no」の場合には)、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1121に返信する(ステップS208)。また、指定されたscriptNameをもつXMLスクリプトがメモリ(HDD1104)上に記録されている場合(登録済みである場合)には(ステップS209で「yes」の場合には)、XMLスクリプト処理部104は、メモリ装置制御部105を介してメモリ(HDD1104)上に記録されたXMLスクリプトを削除する(ステップS210)。   In step S209, if the XML script having the specified scriptName is not recorded on the memory (HDD 1104) (if not registered) (in the case of “no” in step S209), the XML script processing unit 104. Returns an error response message to the computer terminal 1121 via the SOAP processing unit 102 (step S208). If an XML script having the designated scriptName is recorded on the memory (HDD 1104) (if registered) (if “yes” in step S209), the XML script processing unit 104 Then, the XML script recorded on the memory (HDD 1104) is deleted via the memory device control unit 105 (step S210).

また、ステップS206においてSOAPリクエストであるDeleteScriptを受信していないと判断した場合には、XMLスクリプト処理部104は、SOAP処理部102を介してSOAPリクエストであるEnableScriptを受信したか否かを判断する(ステップS211)。ここで、SOAPリクエストであるEnableScriptを受信したと判断した場合には(ステップS211で「yes」の場合には)、XMLスクリプト処理部104は、引数であるaccountとpasswordの内容を確認するため、メモリ装置制御部105を介してメモリ(HDD1104)上に記録されているアカウント情報と一致するか否かを判断する(ステップS212)。   If it is determined in step S206 that DeleteScript that is a SOAP request has not been received, the XML script processing unit 104 determines whether or not EnableScript that is a SOAP request has been received via the SOAP processing unit 102. (Step S211). Here, when it is determined that EnableScript, which is a SOAP request, has been received (in the case of “yes” in step S211), the XML script processing unit 104 checks the contents of the accounts and passwords as arguments. It is determined whether or not it matches the account information recorded on the memory (HDD 1104) via the memory device control unit 105 (step S212).

ステップS212において、アカウント情報と一致しないと判断した場合には、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1121に返信する(ステップS213)。また、アカウント情報と一致すると判断した場合には(ステップS212で「yes」の場合には)、XMLスクリプト処理部104は、指定されたscriptNameを持つXMLスクリプトが登録済みか否か判断する(ステップS214)。   If it is determined in step S212 that the account information does not match, the XML script processing unit 104 returns an error response message to the computer terminal 1121 via the SOAP processing unit 102 (step S213). If it is determined that the account information matches (if “yes” in step S212), the XML script processing unit 104 determines whether or not an XML script having the designated scriptName has been registered (step S212). S214).

ステップS214において、指定されたscriptNameをもつXMLスクリプトがメモリ(HDD1104)上に記録されていない場合(登録済みでない場合)には(ステップS214で「no」の場合には)、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1121に返信する(ステップS213)。また、指定されたscriptNameをもつXMLスクリプトがメモリ(HDD1104)上に記録されている場合(登録済みである場合)には(ステップS214で「yes」の場合には)、XMLスクリプト処理部104は、指定されたscriptNameを持つXMLスクリプトを有効とし(ステップS215)、以降、調停サービス103が該XMLスクリプトを参照する。   In step S214, if an XML script having the specified scriptName is not recorded on the memory (HDD 1104) (if not registered) (in the case of “no” in step S214), the XML script processing unit 104. Returns an error response message to the computer terminal 1121 via the SOAP processing unit 102 (step S213). If an XML script having the specified scriptName is recorded on the memory (HDD 1104) (if registered) (if “yes” in step S214), the XML script processing unit 104 Then, the XML script having the designated scriptName is validated (step S215), and the arbitration service 103 refers to the XML script thereafter.

一方、ステップS211において、SOAPリクエストであるEnableScriptを受信していないと判断した場合には、XMLスクリプト処理部104は、SOAP処理部102を介してSOAPリクエストであるDisableScriptを受信したか否かを判断する(ステップS216)。   On the other hand, if it is determined in step S211 that EnableScript that is a SOAP request has not been received, the XML script processing unit 104 determines whether or not DisableScript that is a SOAP request has been received via the SOAP processing unit 102. (Step S216).

ここでSOAPリクエストであるDisableScriptを受信したと判断した場合には、XMLスクリプト処理部104は、引数であるaccountとpasswordの内容を確認するため、メモリ装置制御部105を介してメモリ(HDD1104)上に記録されているアカウント情報と一致するか否かを判断する(ステップS217)。   If it is determined that DisableScript, which is a SOAP request, has been received, the XML script processing unit 104 checks the contents of arguments, account and password, on the memory (HDD 1104) via the memory device control unit 105. It is determined whether or not it matches the account information recorded in (step S217).

ステップS217において、アカウント情報が一致しないと判断された場合には、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージを返信する(ステップS220)。また、アカウント情報が一致すると判断した場合には、XMLスクリプト処理部104は、指定されたscriptNameを持つXMLスクリプトが登録済みか否かを判断する(ステップS218)。   If it is determined in step S217 that the account information does not match, the XML script processing unit 104 returns an error response message via the SOAP processing unit 102 (step S220). If it is determined that the account information matches, the XML script processing unit 104 determines whether or not an XML script having the designated scriptName has been registered (step S218).

ステップS218において、指定されたscriptNameを持つXMLスクリプトがメモリ(HDD1104)上に記録されていない場合(登録済みでない場合)には、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージを返信する(ステップS220)。   In step S218, when the XML script having the specified scriptName is not recorded on the memory (HDD 1104) (not registered), the XML script processing unit 104 sends an error response message via the SOAP processing unit 102. Is returned (step S220).

また、指定されたscriptNameをもつXMLスクリプトがメモリ(HDD1104)上に記録されている場合(登録済みである場合)には、XMLスクリプト処理部104は、指定されたscriptNameを持つXMLスクリプトを無効とし(ステップS219)、以降、調停サービス103が該XMLスクリプトを参照する。   If an XML script having the designated scriptName is recorded on the memory (HDD 1104) (if registered), the XML script processing unit 104 invalidates the XML script having the designated scriptName. (Step S219), the arbitration service 103 refers to the XML script thereafter.

以上の処理が、サービス管理サービス114から、MFP1100へのWebサービスに関する指示に応じたXMLスクリプトの管理コマンドが発行された場合の処理である。   The above processing is processing when an XML script management command is issued from the service management service 114 in response to an instruction related to the Web service to the MFP 1100.

<サービス管理サービス114における処理の流れ>
次に、図12を用いてシステム管理者によるサービス管理処理フローについて説明する。本実施形態において、サービス管理サービス114は、コンピュータ端末1121内のシステム管理画面中のWebサービス管理画面として実装されているものとする。システム管理者は、MFP1100のWebサービス管理画面から、サービス管理サービス114を実行して、Webサービスの登録(インストール)、削除(アンインストール)、有効化、無効化など一連の管理操作を実施する。
<Flow of processing in service management service 114>
Next, a service management processing flow by the system administrator will be described with reference to FIG. In the present embodiment, it is assumed that the service management service 114 is implemented as a Web service management screen in the system management screen in the computer terminal 1121. The system administrator executes the service management service 114 from the Web service management screen of the MFP 1100 and performs a series of management operations such as registration (installation), deletion (uninstallation), validation, and invalidation of the web service.

ところで、Webサービスの管理操作はSOAPエンベロープ形式で構成される。このSOAPコマンドには、操作アクションの種類や、コマンド発行者の認証権限に関するセキュリティトークンが、それぞれSOAPヘッダ部に格納されている。また、Webサービスを追加する場合には、当該Webサービスが必要とする認証サービスの所在情報を対応付けて記述したXMLスクリプトがSOAPボディ部に付属される。   Incidentally, Web service management operations are configured in a SOAP envelope format. In the SOAP command, a type of operation action and a security token related to the authentication authority of the command issuer are stored in the SOAP header part. In addition, when adding a Web service, an XML script describing the location information of the authentication service required by the Web service is attached to the SOAP body part.

図12は、システム管理者が前述のWebサービス管理画面において適切にユーザ認証が行われ管理者としての権限が付与され、かつWebサービスに対する管理操作を指定するところから始まる。ステップS1201では、指定されたWebサービスの管理操作を行うにあたって、先に行われたユーザ認証の結果、操作者が正しい管理権限を有しているか否かが判断される。この判断はSOAPヘッダ内にあるセキュリティトークンを用いて行われる。   FIG. 12 starts when the system administrator appropriately performs user authentication on the Web service management screen described above, is given authority as an administrator, and designates a management operation for the Web service. In step S1201, it is determined whether or not the operator has the right management authority as a result of the user authentication performed before performing the management operation of the designated Web service. This determination is made using the security token in the SOAP header.

ステップS1201において、適切な管理権限を有していないと判断された場合には、認証エラー応答を返し、再びユーザ認証を求める画面に遷移する(ステップS1202)。一方、適切な操作権限を有していると判断された場合には、Webサービスに対する管理操作を受け付ける。   If it is determined in step S1201 that the user does not have an appropriate management authority, an authentication error response is returned, and the screen again transitions to a screen requesting user authentication (step S1202). On the other hand, when it is determined that the user has an appropriate operation authority, a management operation for the Web service is accepted.

次に、SOAPコマンドのフォームに必要な情報として、管理操作の種別、及びXMLスクリプトが正しく含まれているかどうかの判断をする(ステップS1203)。ここでSOAPコマンドがWebサービスの追加であるのに、XMLスクリプトが含まれていない場合など、SOAPコマンドが適切なフォームを形成していない場合はコマンドエラー応答をSOAPレスポンスとして生成する(ステップS1204)。   Next, it is determined whether the type of management operation and the XML script are correctly included as information necessary for the SOAP command form (step S1203). If the SOAP command does not form an appropriate form, such as when the SOAP command is an addition of a Web service but the XML script is not included, a command error response is generated as a SOAP response (step S1204). .

SOAPコマンドが正しく構成されている場合は、ステップS1205でSOAPコマンドのアクション種別がWebサービスの追加であるか否かが判定される。Webサービスの追加の場合には、ステップS1206でXMLスクリプトがSOPAエンベロープに付属しているか否か判定を受ける。XMLスクリプトは、追加するWebサービスと該Webサービスが必要とする認証・権限サービスの所在情報を関連付けるMAPPING TABLEであり、Webサービスを追加する処理の段階でこのMAPPING TABLEが無いと、Webサービスを追加してもこれを利用することができない。従って、ステップS1206で当該XMLスクリプトの有無を判定する。   If the SOAP command is correctly configured, it is determined in step S1205 whether the action type of the SOAP command is addition of a web service. In the case of adding a Web service, it is determined in step S1206 whether an XML script is attached to the SOPA envelope. The XML script is a MAPPING TABLE that associates the location of the Web service to be added and the authentication / authorization service required by the Web service. If this MAPPING TABLE does not exist in the process of adding the Web service, the Web service is added. However, this cannot be used. Therefore, the presence or absence of the XML script is determined in step S1206.

XMLスクリプトがある場合はステップS1207でSOAPエンベロープをパーシングしてSOAPボディ部にあるXMLスクリプトを抽出する。次に、ステップS1208でXMLスクリプト処理部104に対してUploadScriptコマンドを発行する。なお、SOAPエンベロープのパーシング、フォーム確認シーケンスは、図1のSOAP処理部102において行われる。一方、XMLスクリプトが無い場合はエラー応答を行う(ステップS1209)。   If there is an XML script, in step S1207, the SOAP envelope is parsed to extract the XML script in the SOAP body part. Next, in step S1208, an UploadScript command is issued to the XML script processing unit 104. Note that the SOAP envelope parsing and the form confirmation sequence are performed in the SOAP processing unit 102 of FIG. On the other hand, if there is no XML script, an error response is made (step S1209).

ステップS1205でSOAPコマンドのアクションフィールドがWebサービスの追加ではない場合、ステップS1210の判定シーケンスで、Webサービスの再開かどうかを判定する。Webサービスの再開である場合は、ステップS1211に遷移し、XMLスクリプト処理部4に対してEnableScriptコマンドを発行する。   If it is determined in step S1205 that the action field of the SOAP command is not addition of a web service, it is determined in the determination sequence in step S1210 whether the web service is to be resumed. If the Web service is to be resumed, the process proceeds to step S1211, and an EnableScript command is issued to the XML script processing unit 4.

ステップS1210でSOAPコマンドのアクションフィールドがWebサービスの再開ではない場合、ステップS1212の判定シーケンスで、Webサービスの停止(無効化)かどうかを判定する。Webサービスの停止である場合は、ステップS1213に遷移し、XMLスクリプト処理部104に対してDisableScriptコマンドを発行する。   If it is determined in step S1210 that the action field of the SOAP command is not resuming the web service, it is determined in the determination sequence in step S1212 whether the web service is to be stopped (invalidated). If the Web service is stopped, the process proceeds to step S1213, and a DisableScript command is issued to the XML script processing unit 104.

ステップS1214でSOAPコマンドのアクションフィールドがWebサービスの停止(無効化)ではない場合、ステップS1212の判定シーケンスで、Webサービスの削除(アンインストール)かどうか判定を受ける。Webサービスの削除である場合は、ステップS1215に遷移し、XMLスクリプト処理部104に対してDeleteScriptコマンドを発行する。   If the action field of the SOAP command is not stop (invalidation) of the Web service in step S1214, it is determined in the determination sequence of step S1212 whether the Web service is to be deleted (uninstalled). If the Web service is to be deleted, the process proceeds to step S1215, and a DeleteScript command is issued to the XML script processing unit 104.

なお、ステップS1214においてSOAPコマンドのアクションフィールドがWebサービスの削除ではない場合、予定された管理操作ではなく、予定しないアクションであるため、コマンドエラーを応答することとなる(ステップS1204)。   If the action field of the SOAP command is not Web service deletion in step S1214, a command error is returned because the action is not a scheduled management operation but an unscheduled action (step S1204).

図12で発行するコマンド、すなわちUploadScript、EnableScript、DisableScript、DeleteScriptは、SOAP処理部102によって発行され、XMLスクリプト処理部104で処理されアクションの種別に応じてXMLスクリプトの登録、削除、更新が実施される。   The commands issued in FIG. 12, that is, UploadScript, EnableScript, DisableScript, DeleteScript, are issued by the SOAP processing unit 102, processed by the XML script processing unit 104, and registered, deleted, and updated according to the type of action. The

<Webサービスに対するSOAPリクエストを受信した場合の各部の処理>
次に、本実施形態にかかるMFP1100において、コンピュータ端末1121よりWebサービスに対するSOAPリクエストを受信した場合の各部の処理について説明する。はじめに処理の概要について説明する。図10は、Webサービスに対するSOAPリクエストを受信した場合のMFP1100における処理の流れを示した概念図である。
<Processing of each unit when a SOAP request for a Web service is received>
Next, processing of each unit when the MFP 1100 according to the present embodiment receives a SOAP request for a Web service from the computer terminal 1121 will be described. First, an outline of the process will be described. FIG. 10 is a conceptual diagram illustrating a processing flow in the MFP 1100 when a SOAP request for a Web service is received.

同図に示すように、ENTRANCE1001がコンピュータ端末1121よりWebサービスに対するSOAPリクエストを受信すると、リクエスト先のサービス名称、認証情報がARBITRATOR1002に通知される。なお、ENTRANCE1001は、図1におけるSOAP処理部102に相当し、図3Aはその制御フローを示すフローチャートである。また、ARBITRATOR1002は、図1における調停サービス103に相当し、図3Bはその制御フローを示すフローチャートである。   As shown in the figure, when the ENTRANCE 1001 receives a SOAP request for a Web service from the computer terminal 1121, the service name and authentication information of the request destination are notified to the ARBITRATOR 1002. The ENTRANCE 1001 corresponds to the SOAP processing unit 102 in FIG. 1, and FIG. 3A is a flowchart showing the control flow. Also, the ARBITRATOR 1002 corresponds to the arbitration service 103 in FIG. 1, and FIG. 3B is a flowchart showing the control flow.

ARBITRATOR1002では、MAPPING TABLE1005を参照し、リクエストされたWebサービスに対応づけられた認証、権限付与サービスに関する情報を取得する。なお、MAPPING TABLE1005は、図1におけるXMLスクリプト106に相当する。   The ARBITRATOR 1002 refers to the MAPPING TABLE 1005 and acquires information related to the authentication and authorization service associated with the requested Web service. Note that the MAPPING TABLE 1005 corresponds to the XML script 106 in FIG.

ARBITRATOR1002では、取得した認証、権限付与サービスに関する情報に基づいて、ENTRANCE1001より受信した認証情報を、対応するAUTHENTICATION/AUTHORIZATION SERVICE1003に通知する。なお、AUTHENTICATION/AUTHORIZATION SERVICE1003は、図1における認証、権限付与サービス107、108、109、115に相当し、図3Cはその制御フローを示すフローチャートである。   The ARBITRATOR 1002 notifies the corresponding AUTHENTICATION / AUTHORIZATION SERVICE 1003 of the authentication information received from the ENTRANCE 1001 based on the acquired authentication and authorization information. The AUTHENTICATION / AUTHORIZATION SERVICE 1003 corresponds to the authentication / authorization service 107, 108, 109, 115 in FIG. 1, and FIG. 3C is a flowchart showing the control flow.

AUTHENTICATION/AUTHORIZATION SERVICE1003における認証、権限付与処理の結果は、ARBITRATOR1002に返信され、ARBITRATOR1002では、当該処理結果に基づいてWebサービスの実行の可否、あるいはアクセス制限情報をENTARANCE1001に送信する。   The result of the authentication / authorization processing in the AUTHENTICATION / AUTHORIZATION SERVICE 1003 is returned to the ARBITRATOR 1002, and the ARBITRATOR 1002 transmits whether or not the Web service can be executed or access restriction information to the ENTRANANCE 1001 based on the processing result.

ENTRANCE1001では、ARBITRATOR1002からの送信内容に基づいて、リクエストされたSERVICE1004をコールするか、あるいはリクエスト発行元であるコンピュータ端末1121に対し、Webサービスの実行が拒否された旨を通知する。なお、SERVICE1004は、図1における各Webサービスである、プリントサービス110、スキャンサービス111、ストレージサービス112、FAXサービス113に相当し、図3Dはその制御フローを示すフローチャートである。以下、これらのフローチャートに従い、各部の制御の流れを詳細に説明する。   On the basis of the transmission content from the ARBITRATOR 1002, the ENTRANCE 1001 calls the requested SERVICE 1004 or notifies the computer terminal 1121 that is the request issuer that the execution of the Web service has been rejected. Note that the SERVICE 1004 corresponds to each of the Web services in FIG. 1, ie, the print service 110, the scan service 111, the storage service 112, and the FAX service 113, and FIG. 3D is a flowchart showing the control flow. Hereinafter, the flow of control of each unit will be described in detail according to these flowcharts.

図3Aに示すとおり、MFP1100が稼動中、SOAP処理部102は外部のコンピュータ端末1121から送信されるWebサービスに対するSOAPリクエストの受信を、TCP/IP/UDPプロトコルスタック101を介して常時監視し(ステップS301A)、Webサービスに対するSOAPリクエストの受信を確認すると(ステップS301Aで「yes」の場合)、受信したSOAPリクエストのヘッダ部を、調停サービス103に対し送信する(ステップS302A)。   As shown in FIG. 3A, while the MFP 1100 is operating, the SOAP processing unit 102 constantly monitors the reception of the SOAP request for the Web service transmitted from the external computer terminal 1121 via the TCP / IP / UDP protocol stack 101 (step When the reception of the SOAP request for the Web service is confirmed (in the case of “yes” in step S301A), the header part of the received SOAP request is transmitted to the arbitration service 103 (step S302A).

図3Bに示すとおり、調停サービス103では、SOAPリクエストのヘッダ部の受信を常時監視し(ステップS301B)、SOAP処理部102から、SOAPリクエストのヘッダ部を受信した場合(ステップS301Bで「yes」の場合)、調停サービス103は、SOAPリクエストのヘッダ部の記述内容をパースする(ステップS302B)。   As shown in FIG. 3B, the arbitration service 103 constantly monitors the reception of the header part of the SOAP request (step S301B), and receives the SOAP request header part from the SOAP processing unit 102 (“yes” in step S301B). ), The arbitration service 103 parses the description content of the header part of the SOAP request (step S302B).

ここで、図4にSOAPリクエストのヘッダ部の記述内容の一例を示す。同図に示すように、該SOAPリクエストのヘッダ部にはMicrosoft、BEA、IBM等が共同で策定を進めるWSAddressing仕様に基づき(例えば、http://schemas.xmlsoap.org/ws/2003/03/addressing/参照)、リクエスト対象とするWebサービスのサービス名称が<ACTION>タグのコンテンツとして記述されている。また、標準化団体OASISにより策定されたWS−Security UsernameToken Profile 1.0仕様に基づき<UsernameToken>タグのコンテンツとして認証情報が記述されている。   Here, FIG. 4 shows an example of description contents of the header part of the SOAP request. As shown in the figure, the header portion of the SOAP request is based on a WSAddressing specification that is jointly developed by Microsoft, BEA, IBM, etc. (for example, http://schemas.xmlsoap.org/ws/2003/03/ address / reference), and the service name of the Web service to be requested is described as the content of the <ACTION> tag. Also, authentication information is described as the content of the <UsernameToken> tag based on the WS-Security UsernameToken Profile 1.0 specification formulated by the standardization organization OASIS.

調停サービス103では該SOAPリクエストのヘッダ部をパースし、まず、<ACTION>タグの有無、およびそのコンテンツ内容をチェックする(ステップS303B)。<ACTION>タグが記述されていない場合、あるいは<ACTION>タグが存在しても、そのコンテンツが無い、すなわち空タグであった場合は(ステップS303Bで「no」の場合は)不正要求であると判断し、調停サービス103はSOAP処理部102に対しエラーを通知する(ステップS304B)。   The arbitration service 103 parses the header part of the SOAP request, and first checks the presence / absence of the <ACTION> tag and its contents (step S303B). If the <ACTION> tag is not described, or if the <ACTION> tag exists but the content does not exist, that is, if it is an empty tag (in the case of “no” in step S303B), it is an illegal request. The arbitration service 103 notifies the SOAP processing unit 102 of an error (step S304B).

一方、<ACTION>タグのコンテンツが存在する場合(ステップS303Bで「yes」の場合)、調停サービス103は、あらかじめEnableScriptにより有効化されているXMLスクリプト106をメモリ装置制御部105を介して読み出し、<ACTION>タグのコンテンツとして記述されたWebサービスが、該XMLスクリプト106に記述されているか否かを検索する(ステップS305B)。検索した結果、<ACTION>タグに記述されたWebサービスに該当する登録が見つからなかった場合(ステップS306Bで「no」の場合)、SOAP処理部102は不正要求であると判断してエラーを通知する(ステップS307B)。   On the other hand, when the content of the <ACTION> tag exists (in the case of “yes” in step S303B), the arbitration service 103 reads the XML script 106 previously enabled by EnableScript via the memory device control unit 105, and It is searched whether or not the Web service described as the content of the <ACTION> tag is described in the XML script 106 (step S305B). If no registration corresponding to the Web service described in the <ACTION> tag is found as a result of the search (in the case of “no” in step S306B), the SOAP processing unit 102 determines that the request is invalid and notifies an error. (Step S307B).

一方、検索した結果、<ACTION>タグに記述されたWebサービスに該当する登録が見つかった場合には(ステップS306Bで「yes」の場合には)、続けて、指定されたWebサービスに対応づけられた認証、権限付与サービスに関する情報の有無を検索する(ステップS308B)。検索した結果、XMLスクリプトに指定されたWebサービスに対応づけられた認証、権限付与サービスに関する情報が見つからなかった場合(ステップS308Bで「no」の場合)、該Webサービスに対する認証処理、権限付与処理は不要と判断し、調停サービス103は、実行許可を通知する(ステップS309B)。   On the other hand, as a result of the search, if registration corresponding to the Web service described in the <ACTION> tag is found (in the case of “yes” in step S306B), the registration is continued to be associated with the specified Web service. The presence / absence of information related to the authentication and authorization service is searched (step S308B). As a result of the search, if information related to the authentication and authorization service associated with the Web service specified in the XML script is not found (in the case of “no” in step S308B), authentication processing and authorization processing for the Web service Is determined to be unnecessary, and the arbitration service 103 notifies execution permission (step S309B).

一方、検索した結果、XMLスクリプトに指定されたWebサービスに対応づけられた認証、権限付与サービスに関する情報が見つかった場合には(ステップS308Bで「yes」の場合には)、XMLスクリプト106に記述されたURLに対し、クレデンシャル情報、この場合は、UsernameToken情報を通知する(ステップS310B)。なお、認証、権限付与サービス(107〜109)との通信プロトコルとして、本実施形態においては標準化団体OASISにより策定されたSAML(Security Assertion Markup Language)1.1を用いることとする。   On the other hand, as a result of the search, if information related to the authentication and authorization service associated with the Web service specified in the XML script is found (in the case of “yes” in step S308B), it is described in the XML script 106. The credential information, in this case UsernameToken information, is notified to the URL that has been sent (step S310B). As a communication protocol with the authentication and authorization service (107 to 109), in this embodiment, SAML (Security Assession Markup Language) 1.1 formulated by the standardization organization OASIS is used.

図3Cに示すとおり、ステップS301Cにて、調停サービス103からクレデンシャル情報を受信した認証、権限付与サービス(107〜109のいずれか)は、SOAPリクエストの記述内容をパースし(ステップS302C)、UsernameToken情報を取得し、該情報を元に認証、権限付与処理を実行し(ステップS303C)、その処理結果に基づいてSAML(Security Assertion Markup Language)1.1に従ったSOAPリクエストを生成し、調停サービス103に対し返信する(ステップS304C)。返信処理完了後、認証、権限付与サービス(107〜109)は、調停サービス103からのクレデンシャル情報の受信待ち(ステップS301C)に移行する。   As shown in FIG. 3C, in step S301C, the authentication / authorization service (any one of 107 to 109) that has received the credential information from the arbitration service 103 parses the description content of the SOAP request (step S302C), and UsernameToken information. , And performs authentication and authorization processing based on the information (step S303C), generates a SOAP request in accordance with SAML (Security Assession Markup Language) 1.1 based on the processing result, and arbitration service 103 Is replied to (step S304C). After completion of the reply process, the authentication / authorization service (107 to 109) shifts to waiting for reception of credential information from the arbitration service 103 (step S301C).

再び図3Bに戻る。ステップS311Bでは認証、権限付与サービスからの認証結果の受信を待ち、認証結果を受信した調停サービス103は、引き続きXMLスクリプト106に認証、権限付与サービスの呼び出し手続きの記述があるか否かを確認し(ステップS312B)、記述がある場合はステップS310BからステップS312Bまでの工程を繰り返す。   Returning to FIG. 3B again. In step S311B, waiting for reception of the authentication result from the authentication / authorization service, the arbitration service 103 that has received the authentication result checks whether or not the XML script 106 continues to describe the calling procedure of the authentication / authorization service. (Step S312B) If there is a description, the processes from Step S310B to Step S312B are repeated.

一方、XMLスクリプト106の記述が完了している場合には(ステップS312Bで「no」の場合には)、調停サービス103はその認証結果をSOAP処理部102に対し返信する(ステップS313B)。返信処理完了後、調停サービス103はSOAP処理部102からのSOAPヘッダ受信待ち状態(ステップS301B)に移行する。   On the other hand, when the description of the XML script 106 has been completed (in the case of “no” in step S312B), the arbitration service 103 returns the authentication result to the SOAP processing unit 102 (step S313B). After the reply process is completed, the arbitration service 103 shifts to a state waiting for reception of a SOAP header from the SOAP processing unit 102 (step S301B).

このように、調停サービス103はXMLスクリプト106の記述に従い、コンピュータ端末1121から実行指定されたWebサービスに対応づけられた認証・権限付与サービス(107〜109のいずれか)の呼び出しを実行するため、該XMLスクリプト106の記述内容によって、それぞれ異なる認証、権限付与サービスを実施することが可能となる。そこで、XMLスクリプト106の記述内容について、ここで簡単に説明する。   In this way, the arbitration service 103 executes a call to the authentication / authorization service (any one of 107 to 109) associated with the Web service designated to be executed from the computer terminal 1121 in accordance with the description of the XML script 106. Different authentication and authorization services can be implemented depending on the description content of the XML script 106. Therefore, the description content of the XML script 106 will be briefly described here.

XMLスクリプト106においては、<xmlscript>タグの属性nameに、XMLスクリプトを識別するファイル名が記述されている。該ファイル名は、先に説明したUploadScript関数で指定したscriptNameにより設定される。<mapping>タグの子タグとして、対象となるWebサービスに関する情報をURL形式で記述する<Service>タグと、そのWebサービスに対応づけられた認証、権限付与サービスに関する情報をURL形式で記述する<AuthService>タグとが定義されている。   In the XML script 106, a file name for identifying the XML script is described in the attribute name of the <xmlscript> tag. The file name is set by the scriptName specified by the UploadScript function described above. As a child tag of the <mapping> tag, information related to the target Web service is described in the URL format. <Service> tag, and information related to the authentication and authorization service associated with the Web service is described in the URL format < An AuthService> tag is defined.

図5にXMLスクリプトの具体例を示す。同図に示すXMLスクリプトの場合、そのファイル名は“Sample1”であり、プリントサービス110に対して、認証・権限サービスA(107)を、スキャンサービス111に対して、認証サービスB(108)を、ストレージサービス112に対して、権限サービスB(109)を、FAXサービス113に対して、認証・権限サービスC(115)を対応づけて記述し、これにより調停サービス103は、それぞれのWebサービスに対し、それぞれ異なる認証、権限付与サービスを実施する。この結果、例えばプリントサービス110にはパスワード認証、スキャンサービス111にはPINコード認証、FAXサービス113にはICカード認証といったように、異なる認証、権限付与処理を実施することが可能となる。   FIG. 5 shows a specific example of the XML script. In the case of the XML script shown in the figure, the file name is “Sample1”, the authentication / authority service A (107) for the print service 110, and the authentication service B (108) for the scan service 111. , The authority service B (109) is described in association with the storage service 112, and the authentication / authorization service C (115) is described in association with the FAX service 113, whereby the arbitration service 103 is associated with each Web service. In contrast, different authentication and authorization services will be implemented. As a result, different authentication and authorization processing can be performed, for example, password authentication for the print service 110, PIN code authentication for the scan service 111, and IC card authentication for the FAX service 113.

また、図6に示すようなXMLスクリプトによれば、同じプリントサービス110に対し、異なる認証、権限付与処理を実施することが可能となる。ここで定義されるアドホックプリントサービス(501)は、ネットワーク1110に接続したコンピュータ端末1121に対し簡易プリント機能を提供するWebサービスであり、MFP1100に実装された認証・権限サービスA(107)により、認証、権限付与処理を実施する。また、課金プリントサービス(502)として定義されるWebサービスは、ネットワーク1110を介してMFP1100の外部において稼動状態にある認証・権限サービスC(115)により認証、権限付与処理が実施されることとなる。   Further, according to the XML script as shown in FIG. 6, it is possible to execute different authentication and authorization processing for the same print service 110. The ad hoc print service (501) defined here is a Web service that provides a simple print function to the computer terminal 1121 connected to the network 1110, and is authenticated by the authentication / authority service A (107) installed in the MFP 1100. Execute the authorization process. In addition, the Web service defined as the charging print service (502) is subjected to authentication and authorization processing by the authentication / authorization service C (115) operating outside the MFP 1100 via the network 1110. .

このように記述することにより、例えば、認証・権限サービスA(107)が部門コードによる簡易な認証、権限付与サービスであり、認証・権限サービスC(114)がクレジットカード番号、暗証番号、およびランタイムパスワードによるセキュアレベルの高い認証・権限付与サービスであった場合等に、両者を使い分けることが可能となる。   By describing in this way, for example, the authentication / authorization service A (107) is a simple authentication and authorization service using a department code, and the authentication / authorization service C (114) is a credit card number, a password, and a runtime. If it is an authentication / authorization service with a high secure level using a password, both can be used properly.

また、それぞれ単独で機能するスキャンサービス111とストレージサービス112とを組み合わせて、新規のWebサービスであるスキャン−ストレージサービスを提供するような場合には、図7に示すようにスキャンサービス111、ストレージサービス112に対しては、それぞれ認証・権限サービスA(107)、認証サービスB(108)を対応付け、新規Webサービスであるスキャン−ストレージサービスに対しては認証・権限サービスC(115)を対応付けるといったことができる。   Further, when the scan service 111 and the storage service 112 that function independently are combined to provide a scan-storage service that is a new Web service, as shown in FIG. 112 is associated with authentication / authorization service A (107) and authentication service B (108), respectively, and scan / storage service, which is a new Web service, is associated with authentication / authorization service C (115). be able to.

また、図8に示すXMLスクリプトはプリントサービス110、スキャンサービス111共に認証・権限サービスA(107)に対応づけており、両Webサービスは認証・権限サービスC(115)で管理されるデータベースに基づいて処理されることから、両Webサービスを利用するユーザに対して同一のクレデンシャル情報に基づいて認証、権限付与処理を実施する(即ちシングルサインオンをプリントサービス110とスキャンサービス111とに対して実施する)ことが可能となる。   The XML script shown in FIG. 8 is associated with the authentication / authorization service A (107) for both the print service 110 and the scan service 111, and both Web services are based on a database managed by the authentication / authorization service C (115). Therefore, the user who uses both Web services is authenticated and authorized based on the same credential information (that is, single sign-on is executed for the print service 110 and the scan service 111). Be possible).

また、図9に示すXMLスクリプトはプリントサービス110に対し、認証サービスB(108)、および権限サービスB(109)を記述し、対応づけているが、この場合、調停サービス103は該XMLスクリプトに記述された順番に、各認証、権限付与サービスを呼び出す。そのため、認証サービスB(108)により認証処理が実施され、該認証サービス(108)により付与されたアサーションを、次の処理である権限サービスB(109)に対し通知することで権限情報の付与を受けることが可能となる。即ち、認証処理を多重に実施する必要がある場合、あるいは、認証処理と権限処理とを切り分け、ユースケースによってその組み合わせを変更する必要がある場合等には、この図9に示すようなXMLスクリプトを記述、登録することとなる。   The XML script shown in FIG. 9 describes the authentication service B (108) and the authority service B (109) for the print service 110 and associates them. In this case, the arbitration service 103 is included in the XML script. Call each authentication and authorization service in the order described. Therefore, authentication processing is performed by the authentication service B (108), and the authority information is given by notifying the assertion given by the authentication service (108) to the authority service B (109) as the next processing. It becomes possible to receive. In other words, when it is necessary to execute authentication processing in multiple ways, or when it is necessary to separate authentication processing and authority processing and change the combination depending on the use case, an XML script as shown in FIG. Will be described and registered.

本実施形態においては、上記例に示したXMLスクリプトを複数登録することが可能であり、EnableScriptで指定されたXMLスクリプトの記述に従い、Webサービスと認証・権限付与サービスとの対応付け処理が実施される。従って、XMLスクリプトの記述を変更するのみで、実施する認証・権限付与処理をユースケースに応じて変更、更新するこが可能となる。   In this embodiment, it is possible to register a plurality of XML scripts shown in the above example, and the association process between the Web service and the authentication / authorization service is performed in accordance with the description of the XML script specified by EnableScript. The Therefore, it is possible to change or update the authentication / authorization process to be executed according to the use case only by changing the description of the XML script.

再び図3Aに戻る。同図に示すとおり、調停サービス103から処理結果を受信したSOAP処理部102は(ステップS303A)、その処理結果を解析し(ステップS304A)、認証結果がNGであった場合には(ステップS304Aで「no」の場合には)、コンピュータ端末1121に対し不正要求としてSOAP Faultを返信する(ステップS305A)。   Returning to FIG. 3A again. As shown in the figure, the SOAP processing unit 102 that has received the processing result from the arbitration service 103 (step S303A) analyzes the processing result (step S304A), and if the authentication result is NG (in step S304A). In the case of “no”, a SOAP Fault is returned as an unauthorized request to the computer terminal 1121 (step S305A).

一方、認証結果がOKであった場合(ステップS304Aで「yes」の場合)、SOAPボディ部に記述されたサービス属性情報をパースし(ステップS306A)、該当するWebサービス(110〜113のいずれか)に対する属性情報を読み取り、該属性情報をWebサービスに対し通知し、Webサービスの実行を要求する(ステップS307A)。   On the other hand, if the authentication result is OK (in the case of “yes” in step S304A), the service attribute information described in the SOAP body part is parsed (step S306A), and the corresponding Web service (any of 110 to 113) is parsed. ), And notifies the Web service of the attribute information and requests execution of the Web service (step S307A).

図3Dに示すとおり、SOAP処理部102からWebサービス実行要求を受信したWebサービス(110〜113のいずれか)は、通知された属性情報に基づき、Webサービス処理を実行し(ステップS302D)、その処理結果をSOAP処理部102に対して返信する(ステップS303D)。Webサービスは処理結果返信後、SOAP処理部102からのWebサービス実行要求受信待ち(ステップS301D)に移行する。   As shown in FIG. 3D, the web service (any one of 110 to 113) that has received the web service execution request from the SOAP processing unit 102 executes the web service process based on the notified attribute information (step S302D). The processing result is returned to the SOAP processing unit 102 (step S303D). After returning the processing result, the Web service shifts to waiting for reception of a Web service execution request from the SOAP processing unit 102 (step S301D).

再び図3Aに戻る。Webサービスから処理結果を受信したSOAP処理部102は(ステップS308A)、その処理結果に基づきSOAPレスポンスを生成する(ステップS309A)。この際、調停サービス103を介して、認証、権限付与サービスよりコンピュータ端末1121に返信すべくアサーション情報等の付加情報を受信済みの場合は、該情報をSOAPヘッダ部に記述する。SOAPレスポンスの生成が完了した時点で、SOAP処理部102はコンピュータ端末1121に対してSOAPレスポンスを返信する(ステップS310A)。SOAPレスポンス返信後、SOAP処理部102はコンピュータ端末1121からのSOAPリクエスト受信待ち(ステップS301A)に移行する。   Returning to FIG. 3A again. The SOAP processing unit 102 that has received the processing result from the Web service (step S308A) generates a SOAP response based on the processing result (step S309A). At this time, if additional information such as assertion information has been received via the arbitration service 103 to be sent back to the computer terminal 1121 from the authentication / authorization service, the information is described in the SOAP header. When the generation of the SOAP response is completed, the SOAP processing unit 102 returns a SOAP response to the computer terminal 1121 (step S310A). After returning the SOAP response, the SOAP processing unit 102 shifts to waiting for reception of a SOAP request from the computer terminal 1121 (step S301A).

以上の一連のプロセスを繰り返すことにより、要求されたWebサービスに対する認証、権限付与処理を実施することが可能となる。   By repeating the above series of processes, it is possible to perform authentication and authorization processing for the requested Web service.

以上の説明から明らかなように、本実施形態にかかるWebサービスを基盤とする情報処理装置によれば、Webサービスのインストールに際して、サービス管理サービス114が、Webサービスの実装モジュールを情報処理装置にインストールすると同時に、あわせてXMLスクリプト処理部104に対して認証サービスの対応する所在情報を記述したXMLスクリプト(MAPPING TABLE)を通知し、これをXMLスクリプト処理部104が受け取ってXMLスクリプトを自動で更新するため、システム管理者は、Webサービスのインストール作業と対応する認証サービスの関連付けを明示的に手動で行う必要が無くなり、ひいては管理コストを低く抑えることが可能となる。   As is clear from the above description, according to the information processing apparatus based on the Web service according to the present embodiment, when installing the Web service, the service management service 114 installs the Web service mounting module in the information processing apparatus. At the same time, the XML script (MAPPING TABLE) describing the location information corresponding to the authentication service is notified to the XML script processing unit 104, and the XML script processing unit 104 receives the XML script and automatically updates the XML script. Therefore, the system administrator does not need to explicitly manually associate the authentication service corresponding to the installation operation of the Web service, so that the management cost can be kept low.

また、Webサービスのインストールのみならず、Webサービスの削除、停止、再開といった一連の管理操作も、当該サービス管理サービス114によって容易にかつ一元的に、リモート環境においても実現することができ、これにより管理コストの軽減ができるといった効果がある。   In addition to installing a web service, a series of management operations such as deleting, stopping, and restarting a web service can be easily and centrally realized in the remote environment by the service management service 114. There is an effect that the management cost can be reduced.

加えて、システム管理者によるMAPPING TABLEの更新がサービスの追加/削除に伴って自動的に行われるので、サービスの新規追加/削除の情報の反映が遅れることなく、最適なセキュリティシステムを最適なタイミングで導入することが可能となり、これによって不正利用による被害を未然に防止するといった効果ももたらされることとなる。   In addition, since the MAPPING TABLE is automatically updated by the system administrator as services are added / deleted, reflection of new service addition / deletion information is not delayed, and the optimal security system is set at the optimal timing. This can also be used to prevent damage caused by unauthorized use.

[他の実施形態]
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
[Other Embodiments]
Note that the present invention can be applied to a system including a plurality of devices (for example, a host computer, an interface device, a reader, and a printer), and a device (for example, a copying machine and a facsimile device) including a single device. You may apply to.

また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。   Another object of the present invention is to supply a storage medium storing software program codes for implementing the functions of the above-described embodiments to a system or apparatus, and the computer (or CPU or MPU) of the system or apparatus stores the storage medium. Needless to say, this can also be achieved by reading and executing the program code stored in the.

この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。   In this case, the program code itself read from the storage medium realizes the functions of the above-described embodiments, and the storage medium storing the program code constitutes the present invention.

プログラムコードを供給するための記憶媒体としては、例えば、フロッピ(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。   As a storage medium for supplying the program code, for example, a floppy (registered trademark) disk, hard disk, optical disk, magneto-optical disk, CD-ROM, CD-R, magnetic tape, nonvolatile memory card, ROM, or the like is used. be able to.

また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, by executing the program code read by the computer, not only the functions of the above-described embodiments are realized, but also an OS (operating system) operating on the computer based on the instruction of the program code. It goes without saying that a case where the function of the above-described embodiment is realized by performing part or all of the actual processing and the processing is included.

さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。   Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the CPU or the like provided in the board or the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are realized by the processing.

本発明の一実施形態にかかるMFPの機能構成を示すブロック図である。2 is a block diagram illustrating a functional configuration of the MFP according to the embodiment of the present invention. FIG. 本発明の一実施形態にかかるMFPにおけるXMLスクリプトの登録、削除、有効化処理の流れを示すフローチャートである。6 is a flowchart showing a flow of XML script registration, deletion, and validation processing in the MFP according to the embodiment of the present invention. SOAP処理部の制御フローを示す図である。It is a figure which shows the control flow of a SOAP process part. 調停サービスの制御フローを示す図である。It is a figure which shows the control flow of mediation service. 認証・権限付与サービスの制御フローを示す図である。It is a figure which shows the control flow of an authentication and authorization service. Webサービスの制御フローを示す図である。It is a figure which shows the control flow of Web service. SOAPリクエストのヘッダ部の記述内容の一例を示す図である。It is a figure which shows an example of the description content of the header part of a SOAP request. XMLスクリプトの記述例を示す図である。It is a figure which shows the example of a description of an XML script. XMLスクリプトの記述例を示す図である。It is a figure which shows the example of a description of an XML script. XMLスクリプトの記述例を示す図である。It is a figure which shows the example of a description of an XML script. XMLスクリプトの記述例を示す図である。It is a figure which shows the example of a description of an XML script. XMLスクリプトの記述例を示す図である。It is a figure which shows the example of a description of an XML script. Webサービスに対するSOAPリクエストを受信した場合のMFPにおける処理の流れを示した概念図である。FIG. 6 is a conceptual diagram illustrating a processing flow in an MFP when a SOAP request for a Web service is received. 本発明の一実施形態にかかるMFPを含む情報処理システムの全体構成を示す図である。1 is a diagram illustrating an overall configuration of an information processing system including an MFP according to an embodiment of the present invention. システム管理者によるサービス管理フローについて説明する図である。It is a figure explaining the service management flow by a system administrator.

符号の説明Explanation of symbols

101 TCP/IP/UDPプロトコルスタック処理部
102 SOAP処理部
103 調停サービス
104 XMLスクリプト処理部
105 メモリ装置制御部
106 XMLスクリプト
107 認証・権限サービスA
108 認証サービスB
109 権限サービスB
110 プリントサービス
111 スキャンサービス
112 ストレージサービス
113 FAXサービス
114 サービス管理サービス
115 認証・権限サービスC
1101 通信装置
1102 CPU
1103 メモリ
1104 HDD
1105 プリンタ
1106 スキャナ
1107 画像処理装置
1100 MFP
1110 ネットワーク
1121 コンピュータ端末
101 TCP / IP / UDP protocol stack processing unit 102 SOAP processing unit 103 Arbitration service 104 XML script processing unit 105 Memory device control unit 106 XML script 107 Authentication / authority service A
108 Authentication service B
109 Authority service B
110 Print Service 111 Scan Service 112 Storage Service 113 FAX Service 114 Service Management Service 115 Authentication / Authorization Service C
1101 Communication device 1102 CPU
1103 Memory 1104 HDD
1105 Printer 1106 Scanner 1107 Image Processing Device 1100 MFP
1110 Network 1121 Computer terminal

Claims (9)

複数のサービスとサービス要求元の認証処理を実行する複数の認証処理手段との対応付けが記述された所定の情報を記憶する記憶手段と、
サービス要求元から、前記複数のサービスのいずれかを識別する識別情報と当該サービスに実行させる処理を示す属性情報とを含むサービス要求を受け付けるサービス要求受付手段と、
前記サービス要求に含まれる前記識別情報によって識別されるサービスに対応する認証処理手段を、前記記憶手段に記憶された所定の情報に基づいて選択する選択手段と、
サービスに関する指示を行う指示手段と、を備え、
前記サービス要求受付手段は、前記サービス要求を受け付けた場合に、当該サービス要求に含まれる前記属性情報を保持しつつ、当該サービス要求に含まれる前記識別情報を前記選択手段に通知し、前記選択手段により選択された認証処理手段によって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、当該サービス要求に含まれる前記識別情報によって識別されるサービスに要求し
前記記憶手段は、前記指示手段によりサービスに関する指示が行われた場合に、当該指示が行われたサービスと、当該指示が行われたサービスに対応する認証処理手段との対応付けについて、前記所定の情報を更新するよう構成されていることを特徴とする情報処理装置。
Storage means for storing predetermined information in which associations between a plurality of services and a plurality of authentication processing means for executing authentication processing of service requesters are described;
Service request accepting means for accepting a service request including identification information for identifying any of the plurality of services and attribute information indicating processing to be executed by the service from a service request source;
Selecting means for selecting an authentication processing means corresponding to a service identified by the identification information included in the service request based on predetermined information stored in the storage means;
An instruction means for instructing a service,
When the service request accepting unit accepts the service request, the service request accepting unit notifies the selection unit of the identification information included in the service request while holding the attribute information included in the service request. Requesting the service identified by the identification information included in the service request to execute the process indicated by the held attribute information when the service request source is authenticated by the authentication processing means selected by
The storage means, when an instruction about a service is given by the instruction means, the association between the service for which the instruction has been given and the authentication processing means corresponding to the service for which the instruction has been given. An information processing apparatus configured to update information.
前記指示手段により行われた指示に基づいて、新たにサービスが追加される場合、前記記憶手段は、当該追加されるサービスと、当該追加されるサービスに対応する認証処理手段との対応付けを、前記所定の情報に新たに追加することを特徴とする請求項1に記載の情報処理装置。   When a new service is added based on an instruction given by the instruction unit, the storage unit associates the added service with an authentication processing unit corresponding to the added service. The information processing apparatus according to claim 1, wherein the information processing apparatus is newly added to the predetermined information. 前記指示手段により行われた指示に基づいて、前記サービスが削除される場合、前記記憶手段は、当該削除されるサービスと、当該削除されるサービスに対応する認証処理手段との対応付けを、前記所定の情報から削除することを特徴とする請求項1に記載の情報処理装置。   When the service is deleted based on an instruction made by the instruction unit, the storage unit associates the service to be deleted with an authentication processing unit corresponding to the service to be deleted. The information processing apparatus according to claim 1, wherein the information processing apparatus is deleted from predetermined information. 前記指示手段により行われた指示に基づいて、前記サービスによる前記属性情報が示す処理の実行が可能になる場合、前記記憶手段は、当該実行が可能になるサービスについての前記所定の情報を書き換えることを特徴とする請求項1に記載の情報処理装置。   When the process indicated by the attribute information by the service can be executed based on the instruction given by the instruction means, the storage means rewrites the predetermined information about the service that can be executed. The information processing apparatus according to claim 1. 前記指示手段により行われた指示に基づいて、前記サービスによる前記属性情報が示す処理の実行が不可能になる場合、前記記憶手段は、当該実行が不可能になるサービスについての前記所定の情報を書き換えることを特徴とする請求項1に記載の情報処理装置。   If the execution of the process indicated by the attribute information by the service becomes impossible based on the instruction given by the instruction means, the storage means stores the predetermined information about the service that cannot be executed. The information processing apparatus according to claim 1, wherein the information processing apparatus is rewritten. 第1の情報処理装置と、該第1の情報処理装置と通信可能に接続される第2の情報処理装置とを備える情報処理システムであって、
前記第1の情報処理装置は、
複数のサービスとサービス要求元の認証処理を実行する複数の認証処理手段との対応付けが記述された所定の情報を記憶する記憶手段と、
サービス要求元から、前記複数のサービスのいずれかを識別する識別情報と当該サービスに実行させる処理を示す属性情報とを含むサービス要求を受け付けるサービス要求受付手段と、
前記サービス要求に含まれる前記識別情報によって識別されるサービスに対応する認証処理手段を、前記記憶手段に記憶された所定の情報に基づいて選択する選択手段と、を備え、
前記サービス要求受付手段は、前記サービス要求を受け付けた場合に、当該サービス要求に含まれる前記属性情報を保持しつつ、当該サービス要求に含まれる前記識別情報を前記選択手段に通知し、前記選択手段により選択された認証処理手段によって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、当該サービス要求に含まれる前記識別情報によって識別されるサービスに要求し
前記第2の情報処理装置は、
サービスに関する指示を行う指示手段を備え、
前記記憶手段は、前記指示手段によりサービスに関する指示が行われた場合に、当該指示が行われたサービスと、当該指示が行われたサービスに対応する認証処理手段との対応付けについて、前記所定の情報を更新するよう構成されていることを特徴とする情報処理システム。
An information processing system comprising a first information processing device and a second information processing device connected to be communicable with the first information processing device,
The first information processing apparatus includes:
Storage means for storing predetermined information in which associations between a plurality of services and a plurality of authentication processing means for executing authentication processing of service requesters are described;
Service request accepting means for accepting a service request including identification information for identifying any of the plurality of services and attribute information indicating processing to be executed by the service from a service request source;
Selecting means for selecting an authentication processing means corresponding to a service identified by the identification information included in the service request based on predetermined information stored in the storage means;
When the service request accepting unit accepts the service request, the service request accepting unit notifies the selection unit of the identification information included in the service request while holding the attribute information included in the service request. Requesting the service identified by the identification information included in the service request to execute the process indicated by the held attribute information when the service request source is authenticated by the authentication processing means selected by
The second information processing apparatus
An instruction means for instructing services is provided.
The storage means, when an instruction about a service is given by the instruction means, the association between the service for which the instruction has been given and the authentication processing means corresponding to the service for which the instruction has been given. An information processing system configured to update information.
情報処理装置における情報処理方法であって、
複数のサービスとサービス要求元の認証処理を実行する複数の認証処理手段との対応付けが記述された所定の情報を、記憶部に記憶する記憶工程と、
サービス要求元から、前記複数のサービスのいずれかを識別する識別情報と当該サービスに実行させる処理を示す属性情報とを含むサービス要求を、サービス要求受付手段を介して受け付けるサービス要求受付工程と、
前記サービス要求に含まれる前記識別情報によって識別されるサービスに対応する認証処理手段を、前記記憶部に記憶された所定の情報に基づいて選択手段が選択する選択工程と、
指示手段が、サービスに関する指示を行う指示工程と、を有し、
前記サービス要求受付工程では、前記サービス要求を受け付けた場合に、当該サービス要求に含まれる前記属性情報を保持しつつ、当該サービス要求に含まれる前記識別情報を前記選択手段に通知し、前記選択手段により選択された認証処理手段よって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、当該サービス要求に含まれる前記識別情報によって識別されるサービスに要求し
前記記憶工程では、前記指示工程においてサービスに関する指示が行われた場合に、当該指示が行われたサービスと、当該指示が行われたサービスに対応する認証処理手段との対応付けについて、前記所定の情報を更新することを特徴とする情報処理方法。
An information processing method in an information processing apparatus,
A storage step of storing, in the storage unit, predetermined information in which associations between a plurality of services and a plurality of authentication processing units that perform authentication processing of a service request source are described;
A service request accepting step of accepting, via a service request accepting unit, a service request including identification information for identifying any of the plurality of services and attribute information indicating processing to be executed by the service from a service request source;
A selection step in which a selection unit selects an authentication processing unit corresponding to a service identified by the identification information included in the service request based on predetermined information stored in the storage unit;
An instructing step for instructing a service,
In the service request receiving step, when the service request is received, the selection information is notified to the selection unit while holding the attribute information included in the service request, and the selection unit Requesting the service identified by the identification information included in the service request to execute the process indicated by the held attribute information when the service request source is authenticated by the authentication processing means selected by
In the storage step, when an instruction regarding a service is given in the instruction step, the predetermined processing is performed for associating the service for which the instruction has been given with the authentication processing unit corresponding to the service for which the instruction has been given. An information processing method characterized by updating information.
請求項7に記載の情報処理方法をコンピュータに実行させるための制御プログラムを格納した記憶媒体。   A storage medium storing a control program for causing a computer to execute the information processing method according to claim 7. 請求項7に記載の情報処理方法をコンピュータに実行させるための制御プログラム。   A control program for causing a computer to execute the information processing method according to claim 7.
JP2004355882A 2004-09-06 2004-12-08 Information processing apparatus, information processing system, information processing method, program, and storage medium Expired - Fee Related JP4748766B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004355882A JP4748766B2 (en) 2004-12-08 2004-12-08 Information processing apparatus, information processing system, information processing method, program, and storage medium
CN200510099474.7A CN100596067C (en) 2004-09-06 2005-09-06 Information processing apparatus and information processing method
CN2010101140557A CN101789951B (en) 2004-09-06 2005-09-06 Information processing apparatus and information processing method
US11/220,248 US7647319B2 (en) 2004-09-06 2005-09-06 Information processing apparatus, information processing method, program, and storage medium
US12/632,392 US8290978B2 (en) 2004-09-06 2009-12-07 Information processing apparatus, information processing method, program, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004355882A JP4748766B2 (en) 2004-12-08 2004-12-08 Information processing apparatus, information processing system, information processing method, program, and storage medium

Publications (3)

Publication Number Publication Date
JP2006163947A JP2006163947A (en) 2006-06-22
JP2006163947A5 JP2006163947A5 (en) 2008-01-31
JP4748766B2 true JP4748766B2 (en) 2011-08-17

Family

ID=36665888

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004355882A Expired - Fee Related JP4748766B2 (en) 2004-09-06 2004-12-08 Information processing apparatus, information processing system, information processing method, program, and storage medium

Country Status (1)

Country Link
JP (1) JP4748766B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8856205B2 (en) 2007-07-24 2014-10-07 Ricoh Company, Ltd. Extensible web services system
JP5142934B2 (en) * 2008-10-10 2013-02-13 日本電信電話株式会社 Authentication information processing apparatus, authentication information transmission method, and authentication method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3436165B2 (en) * 1999-01-07 2003-08-11 日本電気株式会社 Communication relay system
JP4748763B2 (en) * 2004-09-06 2011-08-17 キヤノン株式会社 Information processing apparatus, control method for information processing apparatus, program, and storage medium

Also Published As

Publication number Publication date
JP2006163947A (en) 2006-06-22

Similar Documents

Publication Publication Date Title
US8290978B2 (en) Information processing apparatus, information processing method, program, and storage medium
RU2506632C2 (en) Information processing device, driving method therefor and computer-readable data medium
US7707414B2 (en) Information processing device for authentication processing, information processing method, and control program for executing the method
US9576111B2 (en) Uniform modular framework for a host computer system
JP4827523B2 (en) Information processing apparatus, information processing method, and control program
US9053303B2 (en) Apparatus, authentication system, authentication control method, authentication control program, and computer-readable recording medium having authentication control program
JP4936549B2 (en) Server device, management system, management method, storage medium, program
CN100596067C (en) Information processing apparatus and information processing method
US20170041504A1 (en) Service providing system, information processing apparatus, program, and method for generating service usage information
US8429727B2 (en) Authentication control apparatus and authentication control method
US20090300757A1 (en) Image forming apparatus performing user authentication using a card
JP4748766B2 (en) Information processing apparatus, information processing system, information processing method, program, and storage medium
US7831999B2 (en) System and method for single security administration
JP2003345789A (en) System and device for managing document, authenticating method, computer readable program, and storage medium
JP2017027272A (en) Information processing system, information processing method, and program
JP5295336B2 (en) Information processing apparatus, information processing method, and program thereof
JP2000207357A (en) Security-mounted agent system
JP2003018183A (en) Dns sever data changing system and authentication server
JP2006039639A (en) Information processing terminal use device, application loading method, application loading program, and storage medium storing the same
JP2005190130A (en) Access control method, device and program

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071210

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071210

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20071210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101122

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110317

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110323

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: 20110513

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110516

R150 Certificate of patent or registration of utility model

Ref document number: 4748766

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140527

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees