JP4748763B2 - Information processing apparatus, control method for information processing apparatus, program, and storage medium - Google Patents

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

Info

Publication number
JP4748763B2
JP4748763B2 JP2004258406A JP2004258406A JP4748763B2 JP 4748763 B2 JP4748763 B2 JP 4748763B2 JP 2004258406 A JP2004258406 A JP 2004258406A JP 2004258406 A JP2004258406 A JP 2004258406A JP 4748763 B2 JP4748763 B2 JP 4748763B2
Authority
JP
Japan
Prior art keywords
service
information
service request
authentication
processing apparatus
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
JP2004258406A
Other languages
Japanese (ja)
Other versions
JP2006072904A5 (en
JP2006072904A (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 JP2004258406A priority Critical patent/JP4748763B2/en
Priority to CN2010101140557A priority patent/CN101789951B/en
Priority to CN200510099474.7A priority patent/CN100596067C/en
Priority to US11/220,248 priority patent/US7647319B2/en
Publication of JP2006072904A publication Critical patent/JP2006072904A/en
Publication of JP2006072904A5 publication Critical patent/JP2006072904A5/ja
Priority to US12/632,392 priority patent/US8290978B2/en
Application granted granted Critical
Publication of JP4748763B2 publication Critical patent/JP4748763B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ネットワークを介して複数のWebサービスを提供する情報処理装置において、該Webサービスを要求するユーザに対して行う認証処理に関するものである。   The present invention relates to an authentication process performed for a user who requests a Web service 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 Orienteed Architecture)への転換が徐々に進められるようになってきている。   A prominent example is the application to a Web service that is a distributed object model using XML-SOAP (Simple Object Access Protocol). With the advent of this Web service, a shift from a conventional object-oriented model to a service-oriented architecture (SOA) has been gradually advanced.

サービス指向アーキテクチャとは、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. Establishment of a method is required. Therefore, there is a need for a solution that meets the contradicting demands of building strong security and building a highly convenient and simple network solution without compromising the efficiency and flexibility of the service-oriented architecture. It is coming.

ここで、従来のWebサービスの提供における認証、権限付与処理について説明する。図12(A)、(B)は、従来の認証、権限付与処理における機能ブロックの一例を示す図であり、図12(A)は、個々のWebサービス(サービスA、サービスB)が各々認証処理部と権限付与処理部、およびユーザ認証情報を保持するデータベースとを組み込むように構成した場合を示している(かかる構成は、例えば、特許文献1参照)。また、図12(B)は、個々のWebサービスが外部に認証、権限付与処理を行うモジュールを設け、認証、権限付与処理のためのユーザ認証情報を保持するデータベースを共有するように構成した場合をそれぞれ示している。
特開2003−229978号公報
Here, a description will be given of authentication and authorization processing in providing a conventional Web service. FIGS. 12A and 12B are diagrams showing examples of functional blocks in the conventional authentication and authorization processing, and FIG. 12A shows the authentication of individual Web services (service A and service B), respectively. A case is shown in which a processing unit, an authorization processing unit, and a database holding user authentication information are incorporated (see, for example, Patent Document 1). FIG. 12B shows a case in which each Web service is provided with a module for external authentication and authorization processing, and a database that holds user authentication information for authentication and authorization processing is shared. Respectively.
JP 2003-229978 A

しかしながら、上記背景技術に示した認証、権限付与処理のうち、図12(A)に示した構成は、適用するWebサービスのユースケースに応じて要求される認証、権限処理が異なっていた場合に、その要求に応じてWebサービスを改造する必要があり、開発コスト、管理コストの負荷が大きくなってしまうという問題がある。   However, among the authentication and authorization processing shown in the background art, the configuration shown in FIG. 12A is used when the authentication and authorization processing required according to the use case of the applied Web service is different. There is a problem that it is necessary to modify the Web service according to the request, and the load of development cost and management cost is increased.

一方、図12(B)に示した構成によれば、認証、権限付与処理のためのユーザ認証情報を保持するデータベースを共有するようにしているため、要求に応じてWebサービスを改造する必要はないものの、データベースを個々のWebサービスが個別に抱える構成となっているため、開発済みのWebサービスを組み合わせ、新規のWebサービスを提供するような場合は、シングルサインオン、統合認証等の機能提供を実現することが極めて困難であり、Webサービスのユーザにとっては利便性の悪いシステムとなってしまうという問題がある。   On the other hand, according to the configuration shown in FIG. 12B, since the database holding user authentication information for authentication and authorization processing is shared, it is not necessary to modify the Web service according to the request. Although there is no database, each Web service has its own configuration, so if you combine developed Web services and provide new Web services, provide functions such as single sign-on and integrated authentication. Is extremely difficult to achieve, and there is a problem that the system becomes inconvenient for Web service users.

また、各Webサービスは各々、認証、権限付与処理を実施するサービス(認証サービスA、権限付与サービスB)とのインターフェイス及びプロトコル(プロトコルA、B)を実装しなければならず、適用するWebサービスのユースケースに応じて要求される認証、権限処理が異なっていた場合には、その要求に応じてインターフェイス、プロトコルの改造を行ったり、また、個々のWebサービスに複数のインターフェイス、プロトコルを実装させる必要があることから、開発コスト、管理コストがかかるうえに、ユーザ要求に応じた迅速なWebサービスを提供することができないという問題もある。   Each Web service must implement an interface and protocol (protocol A, B) with a service (authentication service A, authorization service B) that performs authentication and authorization processing, and the web service to be applied. If the required authentication and authorization processing differs depending on the use case, the interface and protocol are modified according to the request, and multiple interfaces and protocols are implemented in each Web service. Since it is necessary, there is a problem in that development costs and management costs are incurred, and that it is impossible to provide a quick web service according to user requests.

加えて、これら諸問題は、最適なセキュリティシステムを最適なタイミングで導入することへの妨げともなり、ひいては不正利用による被害をもたらすことの原因にもなっている。   In addition, these problems hinder the introduction of the optimal security system at the optimal timing, and in turn cause damage due to unauthorized use.

本発明は、上記課題に鑑みてなされたものであり、ネットワークを介して複数のサービスの提供を行うにあたり、強固なセキュリティを維持しつつ、利便性、簡易性の高いネットワークソリューションを低コストで実現することを目的とする。 The present invention has been made in view of the above-described problems. In providing a plurality of services via a network, a highly convenient and simple network solution is realized at low cost while maintaining strong security. The purpose is to do.

上記の目的を達成するために本発明に係る情報処理装置は以下のような構成を備える。即ち、
複数のサービスとサービス要求元の認証処理を実行する複数の認証処理手段との対応付けが記述された情報を記憶する記憶手段と、
サービス要求元から、前記複数のサービスのいずれかを識別する識別情報と当該サービスに実行させる処理を示す属性情報とを含むサービス要求を受け付けるサービス要求受付手段と、
前記サービス要求に含まれる前記識別情報によって識別されるサービスに対応する認証処理手段を、前記記憶手段に記憶された情報に基づいて選択する選択手段と、を有し、
前記サービス要求受付手段は、前記サービス要求を受け付けた場合に、当該サービス要求に含まれる前記属性情報を保持しつつ、当該サービス要求に含まれる前記識別情報を前記選択手段に通知し、前記選択手段により選択された認証処理手段によって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、当該サービス要求に含まれる前記識別情報によって識別されるサービスに要求することを特徴とする。
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 information in which correspondence between a plurality of services and a plurality of authentication processing means for executing authentication processing of service requesters is 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 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. Rukoto be required if the service requester is authenticated by the selected authentication processing means, the execution of the process in which the retained attribute information indicates, the service identified by the identification information contained in the service request by It is characterized by.

本発明によれば、ネットワークを介して複数のサービスの提供を行うにあたり、強固なセキュリティを維持しつつ、利便性、簡易性の高いネットワークソリューションを低コストで実現することが可能となる。 According to the present invention, when providing a plurality of services via a network, it is possible to realize a convenient and simple network solution at low cost while maintaining strong security.

以下、必要に応じて添付図面を参照しながら本発明の各実施形態を詳細に説明する。なお、本発明はネットワークを介してWebサービスを提供する種々の装置において実施可能であり、様々なシステムに適用できるが、以下では、ネットワーク対応型MFP(Multi Function Peripheral)において実施すると共に、画像処理システムに適用する場合について説明する。   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. In the following description, the present invention is implemented in a network-compatible MFP (Multi Function Peripheral) and image processing is performed. A case of applying to a system will be described.

[第1の実施形態]
<画像処理システムの全体構成>
図14は、本発明の一実施形態にかかるネットワーク対応型MFP(以下、単に「MFP」と称す)を含む画像処理システムの全体構成を示す図である。図14において、1400はMFPであり、ネットワーク1410を介して接続可能なコンピュータ端末1421へプリントサービス、スキャンサービス、ストレージサービス、FAXサービスなど各種Webサービスを提供するMFPである。1421はコンピュータ端末であり、ネットワーク1410を介してMFP1400を利用することができる。また、1422はMFP1400を管理するためのコンピュータ端末である。
[First Embodiment]
<Overall configuration of image processing system>
FIG. 14 is a diagram showing an overall configuration of an image processing system including a network-compatible MFP (hereinafter simply referred to as “MFP”) according to an embodiment of the present invention. In FIG. 14, reference numeral 1400 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 1421 that can be connected via a network 1410. A computer terminal 1421 can use the MFP 1400 via the network 1410. Reference numeral 1422 denotes a computer terminal for managing the MFP 1400.

MFP1400は、通信装置1401、CPU(中央処理装置)1402、メモリ1403、HDD(ハードディスクドライブ)1404及び画像処理装置1407、プリンタ1405、スキャナ1406などのハードウェアから構成されており、構造化言語であるXML(eXtensible Markup Language)を用いて認証、権限付与等のセキュリティ処理を行う機能を有している点に特徴がある。   The MFP 1400 includes hardware such as a communication device 1401, a CPU (Central Processing Unit) 1402, a memory 1403, an HDD (Hard Disk Drive) 1404, an image processing device 1407, a printer 1405, and a scanner 1406, and is a structured language. It is characterized in that it has a function of performing security processing such as authentication and authorization using XML (extensible Markup Language).

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

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

MFP1400は、通信機能としてTCP/IP/UDPプロトコルをスタックするTCP/IP/UDPプロトコルスタック処理部101を備え、その上位層にSOAP処理部102を備え、更にその上位層に調停サービス103、XMLスクリプト処理部104、認証・権限サービスA(107)、認証サービスB(108)、権限サービスB(109)、認証・権限サービスC(114)、プリントサービス110、スキャンサービス111、ストレージサービス112、FAXサービス113を備え、ネットワーク1410を介して、コンピュータ端末1421に対し、これらWebサービス(110〜113)を提供する。   The MFP 1400 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 in the upper layer, and an arbitration service 103 and an XML script in the upper layer. Processing unit 104, authentication / authorization service A (107), authentication service B (108), authority service B (109), authentication / authorization service C (114), print service 110, scan service 111, storage service 112, FAX service 113 and provides these Web services (110 to 113) to the computer terminal 1421 via the network 1410.

MFP1400に対して、システム管理者はかかるWebサービスの機能停止、Webサービスの削除、Webサービスの再インストール、新規Webサービスのインストールをコンピュータ端末1422を介して行うことが可能である。なお、ここでいう新規Webサービスには、例えば既にインストール済みの複数のWebサービスを組みあわせ、新規機能を提供する場合も含まれる。   With respect to the MFP 1400, the system administrator can stop the function of the Web service, delete the Web service, reinstall the Web service, and install a new Web service via the computer terminal 1422. Note that the new Web service mentioned 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リクエストを発行したコンピュータ端末1421に対し返信する機能と、調停サービス103から返信される処理結果に基づき、該当するWebサービスに対しSOAPボディの記述内容を送信し、該当Webサービスから通知される処理結果に基づきSOAPレスポンスを生成し、SOAPリクエストを発行したコンピュータ端末1421に対し返信する機能とを有する。   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 of returning to the computer terminal 1421 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 1421 that issued the SOAP request.

調停サービス103は、SOAP処理部102より送信されたSOAPヘッダ部の記述内容を解析し、実行要求されたWebサービスに関する情報を取得する機能と、XMLスクリプト処理部104を介して、メモリ装置制御部105が管理するメモリ(HDD1404)上に登録された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 1404) 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.

本実施形態にかかるMFP1400では、認証・権限付与機能を実現するサービスとして認証・権限サービスA(107)、認証サービスB(108)、権限サービスB(109)を組み込む構成としているが、本発明はこれに限られず、図に示すように更に、認証・権限サービスC(114)をMFP1400の外部に配し、ネットワーク1410を介して利用可能なように構成してもよい。   The MFP 1400 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. However, the present invention is not limited to this, and as shown in the figure, the authentication / authorization service C (114) may be arranged outside the MFP 1400 so that it can be used via the network 1410.

各認証・権限付与サービス(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.

さらに本実施形態にかかるMFP1400は、プリントサービス110、スキャンサービス111、ストレージサービス112、FAXサービス113を実装している。これらはXML−SOAPに対応したWebサービスであり、これらのWebサービスに対してはシステム管理者により管理された外部のコンピュータ端末1422より、Webサービスの停止、再開、削除、再インストールすることが可能であり、また、同様に新規Webサービスの追加、開始、停止、削除が可能である。   Further, the MFP 1400 according to the present embodiment is provided with 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 these Web services can be stopped, restarted, deleted, and reinstalled from an external computer terminal 1422 managed by a system administrator. Similarly, a new Web service can be added, started, stopped, and deleted.

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

該XMLスクリプト106は、システム管理者により管理された外部のコンピュータ端末1422より削除、再インストール、更新処理することが可能であり、該XMLスクリプト106の記述内容に従って、同一のWebサービスに対し、他の認証・権限付与サービスへの対応付けを実施することが可能である。また、複数のWebサービスの組み合わせにより機能する新規Webサービスに対し、新たに認証・権限付与サービスを対応付けるなど、柔軟にセキュリティ要件に対処することが可能である。   The XML script 106 can be deleted, reinstalled, or updated from an external computer terminal 1422 managed by the system administrator. In accordance with the description content of the XML script 106, another XML script 106 can be used. Can be associated with the authentication / authorization service. 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.

Webサービスの提供を受けるにあたっては、MFP1400上で稼動状態にあるWebサービスに対応づけられた認証・権限付与サービスに関する情報が記載されたXMLスクリプト106を、MFP1400に対して予め登録しておくことが必要である。   When receiving the provision of the Web service, the XML script 106 in which information related to the authentication / authorization service associated with the Web service that is operating on the MFP 1400 is registered in the MFP 1400 in advance. is necessary.

尚、この登録処理を実行せず、MFP1400のメモリ(HDD1404)上に該XMLスクリプト106が存在しない場合には、MFP1400上で稼動中のWebサービスのいずれも実行することはできない。   If this registration process is not executed and the XML script 106 does not exist on the memory (HDD 1404) of the MFP 1400, none of the Web services running on the MFP 1400 can be executed.

このXMLスクリプト106は、システム管理者がMFP1400に対し、ネットワーク1410を介して登録処理を実施することで、メモリ装置制御部105が制御するメモリ(HDD1404)上に格納される。   The XML script 106 is stored in the memory (HDD 1404) controlled by the memory device control unit 105 when the system administrator performs registration processing for the MFP 1400 via the network 1410.

システム管理者は、システム管理者により管理されたコンピュータ端末1422から、MFP1400に実装された各Webサービスに対応づけられた認証・権限付与サービスに関する情報が記述されたXMLスクリプト106をMFP1400に対し送信する。   The system administrator transmits, from the computer terminal 1422 managed by the system administrator, to the MFP 1400, an XML script 106 that describes information related to the authentication / authorization service associated with each Web service implemented in the MFP 1400. .

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

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

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

また、MFP1400に登録された複数のXMLスクリプト106に対し、scriptNameで指定したXMLスクリプト106を有効化するにあたっては、SOAP関数であるEnableScript(scriptName、account、password)を用いる。また、ここでもaccount、password情報を知りうるシステム管理者のみが、MFP1400のメモリ(HDD1404)上に登録されたXMLスクリプト106を指定し、有効化することができるものとする。   In order to validate the XML script 106 specified by scriptName for a plurality of XML scripts 106 registered in the MFP 1400, 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 1404) of the MFP 1400.

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

尚、図2の処理の前提として、外部デバイスであるコンピュータ端末1422より、XMLスクリプト106がMFP1400に対し送信されるものとする。   2 is assumed to be transmitted from the computer terminal 1422 as an external device to the MFP 1400.

図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を介してエラーレスポンスメッセージをコンピュータ端末1422に返信する(ステップ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 1422 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を介してエラーレスポンスメッセージをコンピュータ端末1422に返信し(ステップ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 1422 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を介してメモリ(HDD1404)上に記録する(ステップ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 1404) 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を介してメモリ(HDD1404)上に記録されているアカウント情報と一致するか否かを判断する(ステップ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 1404) via the memory device control unit 105 (step S207).

ステップS207においてアカウント情報と一致しないと判断した場合には、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1422に返信する(ステップ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 1422 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スクリプトがメモリ1403上に記録されていない場合(登録済みでない場合)には(ステップS209で「no」の場合には)、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1422に返信する(ステップS208)。また、指定されたscriptNameをもつXMLスクリプトがメモリ(HDD1404)上に記録されている場合(登録済みである場合)には(ステップS209で「yes」の場合には)、XMLスクリプト処理部104は、メモリ装置制御部105を介してメモリ(HDD1404)上に記録されたXMLスクリプトを削除する(ステップS210)。   In step S209, if the XML script having the specified scriptName is not recorded on the memory 1403 (if not registered) (in the case of “no” in step S209), the XML script processing unit 104 An error response message is returned to the computer terminal 1422 via the SOAP processing unit 102 (step S208). If an XML script having the specified scriptName is recorded on the memory (HDD 1404) (if registered) (in the case of “yes” in step S209), the XML script processing unit 104 Then, the XML script recorded on the memory (HDD 1404) 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を介してメモリ(HDD1404)上に記録されている情報(アカウント情報)と一致するか否かを判断する(ステップ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 the information (account information) recorded on the memory (HDD 1404) matches with the memory device control unit 105 (step S212).

ステップS212において、アカウント情報と一致しないと判断した場合には、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1422に返信する(ステップ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 1422 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スクリプトがメモリ(HDD1404)上に記録されていない場合(登録済みでない場合)には(ステップS214で「no」の場合には)、XMLスクリプト処理部104は、SOAP処理部102を介してエラーレスポンスメッセージをコンピュータ端末1422に返信する(ステップS213)。また、指定されたscriptNameをもつXMLスクリプトがメモリ1403上に記録されている場合(登録済みである場合)には(ステップS214で「yes」の場合には)、XMLスクリプト処理部104は、指定されたscriptNameを持つXMLスクリプトを有効とし(ステップS215)、以降、調停サービス103が該XMLスクリプトを参照する。   In step S214, if the XML script having the specified scriptName is not recorded on the memory (HDD 1404) (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 1422 via the SOAP processing unit 102 (step S213). If an XML script having the specified scriptName is recorded on the memory 1403 (if registered) (if “yes” in step S214), the XML script processing unit 104 specifies The XML script having the generated scriptName is validated (step S215), and the arbitration service 103 refers to the XML script thereafter.

以上の処理により、コンピュータ端末1422からMFP1400へのアプリケーションに応じたXMLスクリプトの登録処理、削除処理、および有効化処理が完了する。システム管理者は必要に応じて該当するアプリケーションのXMLスクリプトの登録、削除、有効化処理を繰り返し実行することが可能である。XMLスクリプトの登録処理が完了すると、MFP1400における調停サービス103が稼動可能となる。   With the above processing, the XML script registration processing, deletion processing, and validation processing according to the application from the computer terminal 1422 to the MFP 1400 are completed. The system administrator can repeatedly execute registration, deletion, and validation processing of the XML script of the corresponding application as necessary. When the registration process of the XML script is completed, the arbitration service 103 in the MFP 1400 can be operated.

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

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

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

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

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

ENTRANCE1301では、ARBITRATOR1302からの送信内容に基づいて、リクエストされたSERVICE1304をコールするか、あるいはリクエスト発行元であるコンピュータ端末1421に対し、Webサービスの実行が拒否された旨を通知する。なお、SERVICE1304は、図1における各Webサービスである、プリントサービス110、スキャンサービス111、ストレージサービス112、FAXサービス113に相当し、図3Dはその制御フローを示すフローチャートである。以下、これらのフローチャートに従い、各部の制御の流れを詳細に説明する。   On the basis of the transmission content from the ARBITRATOR 1302, the ENTRANCE 1301 calls the requested SERVICE 1304 or notifies the computer terminal 1421 that is the request issuer that the execution of the Web service is rejected. The SERVICE 1304 corresponds to the print service 110, the scan service 111, the storage service 112, and the FAX service 113, which are the Web services in FIG. 1, 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に示すとおり、MFP1400が稼動中、SOAP処理部102は外部のコンピュータ端末1421から送信されるWebサービスに対するSOAPリクエストの受信を、TCP/IP/UDPプロトコルスタック101を介して常時監視し(ステップS301A)、Webサービスに対するSOAPリクエストの受信を確認すると(ステップS301Aで「yes」の場合)、受信したSOAPリクエストのヘッダ部を、調停サービス103に対し送信する(ステップS302A)。   As shown in FIG. 3A, while the MFP 1400 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 1421 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の記述に従い、コンピュータ端末1421から実行指定された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 1421 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(114)を対応づけて記述し、これにより調停サービス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 (114) is described in association with the FAX service 113, so that 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に対し、異なる認証、権限付与処理を実施することが可能となる。ここで定義されるアドホックプリントサービス(601)は、ネットワーク1410に接続したコンピュータ端末1421に対し簡易プリント機能を提供するWebサービスであり、MFP1400に実装された認証・権限サービスA(107)により、認証、権限付与処理を実施する。また、課金プリントサービス(602)として定義されるWebサービスは、ネットワーク1410を介してMFP1400の外部において稼動状態にある認証・権限サービスC(114)により認証、権限付与処理が実施されることとなる。   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 (601) defined here is a Web service that provides a simple print function to the computer terminal 1421 connected to the network 1410, and is authenticated by the authentication / authority service A (107) installed in the MFP 1400. Execute the authorization process. The Web service defined as the charging print service (602) is subjected to authentication and authorization processing by the authentication / authorization service C (114) operating outside the MFP 1400 via the network 1410. .

このように記述することにより、例えば、認証・権限サービス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(114)を対応付けるといったことができる。   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 (114). be able to.

また、図8に示すXMLスクリプトはプリントサービス110、スキャンサービス111共に認証・権限サービスA(107)に対応づけており、両Webサービスは認証・権限サービスC(114)で管理されるデータベースに基づいて処理されることから、両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 (114). 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スクリプトを複数登録することが可能であり、EnableScrptで指定された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」の場合には)、コンピュータ端末1421に対し不正要求として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 1421 (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を介して、認証、権限付与サービスよりコンピュータ端末1421に返信すべくアサーション情報等の付加情報を受信済みの場合は、該情報をSOAPヘッダ部に記述する。SOAPレスポンスの生成が完了した時点で、SOAP処理部102はコンピュータ端末1421に対してSOAPレスポンスを返信する(ステップS310A)。SOAPレスポンス返信後、SOAP処理部102はコンピュータ端末1421からの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 1421 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 1421 (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 1421 (step S301A).

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

以上の説明から明らかなように、本実施形態によれば、MAPPING TABLEであるXMLスクリプトの記述内容を変更するだけで、同一のWebサービスに対し、他の認証、権限付与サービスを対応付けたり、また、複数のWebサービスを組み合わせることにより機能する新規Webサービスに対して、新たに認証、権限付与サービスを対応づけたりすることが可能であり、柔軟にセキュリティ要件に対応することができる。つまり、従来のように、適用するWebサービスのユースケースに応じて要求される認証、権限処理が異なっていた場合であっても、その要求に応じてWebーサービス自体を改造する必要はなく、XMLスクリプトのスクリプトの記述内容を変更するだけで対応することができるため、従来よりも低コストで、従来と同等の強固なセキュリティを実現することが可能となる。   As is clear from the above description, according to the present embodiment, by simply changing the description content of the XML script that is MAPPING TABLE, the same Web service can be associated with other authentication and authorization services, In addition, a new Web service that functions by combining a plurality of Web services can be newly associated with an authentication / authorization service, which can flexibly meet security requirements. In other words, even if the authentication and authority processing required according to the use case of the Web service to be applied is different as in the conventional case, it is not necessary to modify the Web service itself according to the request. Since it is possible to cope with this by simply changing the description content of the script of the script, it is possible to realize strong security equivalent to the conventional one at a lower cost than the conventional one.

また、MAPPING TABLEであるXMLスクリプトの記述内容を変更することで、シングルサインオンを複数のWebサービスに対して実施することが可能となることから、本実施形態によれば、利便性、簡易性の高いネットワークソリューションの提供が可能となる。   Also, by changing the description content of the XML script that is a MAPPING TABLE, single sign-on can be performed for a plurality of Web services. According to this embodiment, convenience and simplicity are achieved. Network solution can be provided.

[第2の実施形態]
上記第1の実施形態では、Webサービスと、認証、権限付与サービスとの対応づけを記述したXMLスクリプトを登録するにあたり、外部デバイス、即ちシステム管理者によって管理されたコンピュータ端末1421からネットワーク1410を介して、XMLスクリプト処理部104に対してXMLスクリプトを送信、登録することとしたが、本発明はこれに限られない。
[Second Embodiment]
In the first embodiment, when registering an XML script describing the correspondence between a Web service and an authentication / authorization service, an external device, that is, a computer terminal 1421 managed by a system administrator via the network 1410 is used. Although the XML script is transmitted and registered to the XML script processing unit 104, the present invention is not limited to this.

例えば、システム管理者によって管理されたコンピュータ端末からネットワークを介して、XMLスクリプト処理部に対してXMLスクリプトが登録されているサーバのURLを送信、登録し、XMLスクリプト処理部が、該URLを保有するサーバよりXMLスクリプトをダウンロードし、自身が管理するメモリ上に登録するように構成してもよい。   For example, a URL of a server in which an XML script is registered is transmitted and registered to an XML script processing unit via a network from a computer terminal managed by a system administrator, and the XML script processing unit holds the URL. The XML script may be downloaded from a server that performs the registration and registered on a memory managed by the server.

また、コンピュータ端末と、MFPとをUSB、IEEE1394などのローカルインターフェイスで接続し、該インターフェイスを介してXMLスクリプト処理部に対し登録するように構成しても良い。   Alternatively, the computer terminal and the MFP may be connected via a local interface such as USB or IEEE 1394, and may be registered with the XML script processing unit via the interface.

また、XMLスクリプトはCD−ROM、コンパクトフラッシュ(登録商標)、メモリスティック等の記録媒体に記録し、MFPがこれら記録媒体を介してXMLスクリプト処理部がXMLスクリプトを読み取るように構成しても良い。   The XML script may be recorded on a recording medium such as a CD-ROM, compact flash (registered trademark), or memory stick, and the MFP may be configured such that the XML script processing unit reads the XML script via the recording medium. .

また、XMLスクリプトは権限を与えられたシステム管理者が、MFPが備える操作部を介して、入力するように構成しても良い。   The XML script may be input by an authorized system administrator via an operation unit provided in the MFP.

また、上記第1の実施形態においては、Webサービスに関する情報と、該Webサービスに対応付けられた認証、権限付与サービスに関する情報とをXMLスクリプトの書式で記述したが、他のスクリプト記述言語、あるいは単純なテキストデータで記述するようにしてもよい。   In the first embodiment, the information about the Web service and the information related to the authentication and authorization service associated with the Web service are described in the format of the XML script, but other script description languages or You may make it describe with simple text data.

さらに、上記第1の実施形態では、複数のXMLスクリプトをXMLスクリプト処理部が管理し、指定されたXMLスクリプトの記述を有効とする場合について説明したが、一つのXMLスクリプトに対し、複数のパターンを記述し、いずれのパターンを採用するかを指定することで同様の効果を実現するようにしてもよい。   Furthermore, in the first embodiment, a case has been described in which a plurality of XML scripts are managed by the XML script processing unit, and the description of the specified XML script is validated. However, a plurality of patterns are used for one XML script. And the same effect may be realized by designating which pattern is used.

また、図10に示すように、プリントサービスに対し、その認証、権限付与サービスへの対応づけを、セキュリティレベルごとにかえて記述するようにしてもよい。これにより権限を与えられた管理者が、MFPが備える操作部を介して当該セキュリティレベルを切り替えることで、例えば、認証処理が不要であったプリントサービスを、ICカードによる認証を要するプリントサービスに変更したり、ユーザごとに異なる利用制限が付与されるプリントサービスに変更したりすることが可能となる。   Further, as shown in FIG. 10, the authentication service and the authorization service may be associated with the print service by changing the security level. As a result, the authorized administrator switches the security level via the operation unit of the MFP, for example, to change a print service that does not require authentication processing to a print service that requires authentication using an IC card. Or change to a print service to which different usage restrictions are assigned for each user.

また、上記第1の本実施形態においては、調停サービス103がMFPのノード内に実装された形態を説明したが、図11に示すように、調停サービス機能を実現する論理ユニットを、ネットワーク1410を介して独立させた形態、例えばPCによるサーバ(1101)上に独立して実装されるように構成しても良い。なお、この場合、調停サービス機能を実現する論理ユニットと、ネットワーク対応型デバイス(1100)との間の通信はSSL(Secure Socket Layer)などの手段を用いて、認証、権限付与サービスによる処理結果が、第三者によって改竄されないように保護する必要がある。   Further, in the first embodiment, the mode in which the arbitration service 103 is implemented in the MFP node has been described. However, as shown in FIG. 11, a logical unit that realizes the arbitration service function is connected to the network 1410. For example, it may be configured to be independently mounted on a server (1101) using a PC. In this case, communication between the logical unit that realizes the arbitration service function and the network-compatible device (1100) uses the means such as SSL (Secure Socket Layer), and the processing result by the authentication and authorization service is Need to be protected from being tampered with by a third party.

また、上記第1の実施形態においては、調停サービスと、認証、権限付与サービスとはSAMLプロトコルを使用して通信することとしたが、該プロトコルは各認証、権限付与サービス固有のプロトコルであってもよく、調停サービスは各認証、権限付与サービスに対応したプロトコルに基づき通信するものとする。なお、この場合においても、Webサービスは認証、権限サービスの存在を意識することなく、各ユースケースにおいて最適な認証、権限付与処理を実施することが可能である。   In the first embodiment, the arbitration service and the authentication / authorization service communicate with each other using the SAML protocol. However, this protocol is a protocol unique to each authentication / authorization service. The arbitration service communicates based on a protocol corresponding to each authentication and authorization service. Even in this case, the Web service can execute the optimum authentication and authorization process in each use case without being aware of the existence of the authentication and authorization service.

また、上記第1の実施形態においては、リクエスト対象とするWebサービスのサービス名称の記述をWSAddressing仕様に基づき記述した例を示したが、調停サービスにおいて<Action>タグが検出できなかった場合には、SOAPボディ部をパースし、そこに記述されるサービス名称を取得するように構成してもよい。   In the first embodiment, an example in which the description of the service name of the Web service to be requested is described based on the WSAddressing specification. However, when the <Action> tag cannot be detected in the arbitration service, The SOAP body part may be parsed and the service name described there may be obtained.

また、上記第1の実施形態においては、認証情報に関してはOASIS WS−Security UsernameToken Profileの規定に基づき記述された例を示したが、特にこれに限定するものではなく、これら標準仕様において定義されていないクレデンシャル情報であっても対応可能であり、この場合、XMLスクリプトにいずれのタグがクレデンシャル情報に該当するかを記述することで対応、実施することが可能である。   In the first embodiment, the example in which the authentication information is described based on the provisions of the OASIS WS-Security Username Profile is shown. However, the present invention is not limited to this and is defined in these standard specifications. Even if there is no credential information, it can be dealt with. In this case, it can be dealt with by describing which tag corresponds to the credential information in the XML script.

[他の実施形態]
なお、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど)から構成されるシステムに適用しても、一つの機器からなる装置(例えば、複写機、ファクシミリ装置など)に適用してもよい。
[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. XMLスクリプトの記述例を示す図である。It is a figure which shows the example of a description of an XML script. 調停サービスがネットワーク上に独立した形態で配された場合の機能構成を示すブロック図である。It is a block diagram which shows the function structure when the mediation service is distribute | arranged with the independent form on the network. 既存技術における、Webサービスおよび認証・権限付与処理の構成を示す図である。It is a figure which shows the structure of the web service in an existing technique, and an authentication and authorization process. 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 image processing system including an MFP according to an embodiment of the present invention.

符号の説明Explanation of symbols

101 TCP/IPUDPプロトコルスタック処理部
102 SOAP処理部
103 調停サービス
104 XMLスクリプト処理部
105 メモリ装置制御部
106 XMLスクリプト
107 認証・権限サービスA
108 認証サービスB
109 権限サービスB
110 プリントサービス
111 スキャンサービス
112 ストレージサービス
113 FAXサービス
114 認証・権限サービスC
1401 通信装置
1402 CPU
1403 メモリ
1404 HDD
1405 プリンタ
1406 スキャナ
1407 画像処理装置
1400 MFP
1410 ネットワーク
1421、1422 コンピュータ端末
101 TCP / IPUDP 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 / Authorization Service A
108 Authentication service B
109 Authority service B
110 Print Service 111 Scan Service 112 Storage Service 113 FAX Service 114 Authentication / Authority Service C
1401 Communication device 1402 CPU
1403 Memory 1404 HDD
1405 Printer 1406 Scanner 1407 Image processing apparatus 1400 MFP
1410 network 1421, 1422 computer terminal

Claims (10)

複数のサービスとサービス要求元の認証処理を実行する複数の認証処理手段との対応付けが記述された情報を記憶する記憶手段と、
サービス要求元から、前記複数のサービスのいずれかを識別する識別情報と当該サービスに実行させる処理を示す属性情報とを含むサービス要求を受け付けるサービス要求受付手段と、
前記サービス要求に含まれる前記識別情報によって識別されるサービスに対応する認証処理手段を、前記記憶手段に記憶された情報に基づいて選択する選択手段と、を有し、
前記サービス要求受付手段は、前記サービス要求を受け付けた場合に、当該サービス要求に含まれる前記属性情報を保持しつつ、当該サービス要求に含まれる前記識別情報を前記選択手段に通知し、前記選択手段により選択された認証処理手段によって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、当該サービス要求に含まれる前記識別情報によって識別されるサービスに要求することを特徴とする情報処理装置。
Storage means for storing information in which correspondence between a plurality of services and a plurality of authentication processing means for executing authentication processing of service requesters is 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 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. Rukoto be required if the service requester is authenticated by the selected authentication processing means, the execution of the process in which the retained attribute information indicates, the service identified by the identification information contained in the service request by An information processing apparatus characterized by the above.
前記複数の認証処理手段は、前記情報処理装置が有しており、
前記サービス要求受付手段は、前記複数の認証処理手段のうち、前記選択手段により選択された認証処理手段によって、前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、前記サービス要求に含まれる前記識別情報によって識別されるサービスに要求することを特徴とする請求項1に記載の情報処理装置。
The plurality of authentication processing means is included in the information processing apparatus,
The service request accepting unit executes the process indicated by the held attribute information when the service request source is authenticated by the authentication processing unit selected by the selection unit among the plurality of authentication processing units. the information processing apparatus according to claim 1, characterized that you request a service identified by the identification information included in the service request.
前記記憶手段に記憶された情報は、構造化言語で記述されていることを特徴とする請求項1または請求項2に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the information stored in the storage unit is described in a structured language. 前記記憶手段は前記情報を複数記憶し、ユーザからの指示に基づいて、新規情報の登録または既存情報の更新または既存情報の削除を実行することを特徴とする請求項1乃至請求項3のいずれか1項に記載の情報処理装置。   The storage means stores a plurality of the information, and executes registration of new information, update of existing information, or deletion of existing information based on an instruction from a user. The information processing apparatus according to claim 1. 情報処理装置の制御方法であって、
複数のサービスとサービス要求元の認証処理を実行する複数の認証処理手段との対応付けが記述された情報を、記憶部に記憶する記憶工程と、
サービス要求元から、前記複数のサービスのいずれかを識別する識別情報と当該サービスに実行させる処理を示す属性情報とを含むサービス要求を、サービス要求受付手段を介して受け付けるサービス要求受付工程と、
前記サービス要求に含まれる前記識別情報によって識別されるサービスに対応する認証処理手段を、前記記憶部に記憶された情報に基づいて選択手段が選択する選択工程と、を有し、
前記サービス要求受付工程では、前記サービス要求を受け付けた場合に、当該サービス要求に含まれる前記属性情報を保持しつつ、当該サービス要求に含まれる前記識別情報を前記選択手段に通知し、前記選択手段により選択された認証処理手段によって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、当該サービス要求に含まれる前記識別情報によって識別されるサービスに要求することを特徴とする情報処理装置の制御方法。
A method for controlling an information processing apparatus,
A storage step of storing, in the storage unit, information describing a correspondence between a plurality of services and a plurality of authentication processing means for executing authentication processing of service requesters;
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 information stored in the storage unit, and
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 Rukoto be required if the service requester is authenticated by the selected authentication processing means, the execution of the process in which the retained attribute information indicates, the service identified by the identification information contained in the service request by A method for controlling an information processing apparatus.
前記複数の認証処理手段は、前記情報処理装置が有しており、
前記サービス要求受付工程では、前記複数の認証処理手段のうち、前記選択手段により選択された認証処理手段によって前記サービス要求元が認証された場合に、前記保持した属性情報が示す処理の実行を、前記サービス要求に含まれる前記識別情報によって識別されるサービスに要求することを特徴とする請求項5に記載の情報処理装置の制御方法。
The plurality of authentication processing means is included in the information processing apparatus,
In the service request reception step, when the service request source is authenticated by the authentication processing unit selected by the selection unit among the plurality of authentication processing units , execution of the process indicated by the held attribute information is performed . control method according to claim 5, characterized that you request a service identified by the identification information included in the service request.
前記記憶部に記憶された情報は、構造化言語で記述されていることを特徴とする請求項5または請求項6に記載の情報処理装置の制御方法。   7. The information processing apparatus control method according to claim 5, wherein the information stored in the storage unit is described in a structured language. 前記記憶工程では前記情報が複数記憶され、ユーザからの指示に基づいて、新規情報の登録または既存情報の更新または既存情報の削除が実行されることを特徴とする請求項5乃至請求項7のいずれか1項に記載の情報処理装置の制御方法。   A plurality of the information is stored in the storage step, and registration of new information, update of existing information, or deletion of existing information is executed based on an instruction from a user. The control method of the information processing apparatus of any one of Claims. 請求項5乃至請求項8のいずれか1項に記載の情報処理装置の制御方法をコンピュータに実行させるための制御プログラムを格納した記憶媒体。   A storage medium storing a control program for causing a computer to execute the control method of the information processing apparatus according to any one of claims 5 to 8. 請求項5乃至請求項8のいずれか1項に記載の情報処理装置の制御方法をコンピュータに実行させるための制御プログラム。   A control program for causing a computer to execute the control method of the information processing apparatus according to claim 5.
JP2004258406A 2004-09-06 2004-09-06 Information processing apparatus, control method for information processing apparatus, program, and storage medium Expired - Fee Related JP4748763B2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2004258406A JP4748763B2 (en) 2004-09-06 2004-09-06 Information processing apparatus, control method for information processing apparatus, program, and storage medium
CN2010101140557A CN101789951B (en) 2004-09-06 2005-09-06 Information processing apparatus and information processing method
CN200510099474.7A CN100596067C (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
JP2004258406A JP4748763B2 (en) 2004-09-06 2004-09-06 Information processing apparatus, control method for information processing apparatus, program, and storage medium

Publications (3)

Publication Number Publication Date
JP2006072904A JP2006072904A (en) 2006-03-16
JP2006072904A5 JP2006072904A5 (en) 2007-10-25
JP4748763B2 true JP4748763B2 (en) 2011-08-17

Family

ID=36153435

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004258406A Expired - Fee Related JP4748763B2 (en) 2004-09-06 2004-09-06 Information processing apparatus, control method for information processing apparatus, program, and storage medium

Country Status (2)

Country Link
JP (1) JP4748763B2 (en)
CN (1) CN100596067C (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4748766B2 (en) * 2004-12-08 2011-08-17 キヤノン株式会社 Information processing apparatus, information processing system, information processing method, program, and storage medium
US8019812B2 (en) * 2007-04-13 2011-09-13 Microsoft Corporation Extensible and programmable multi-tenant service architecture
US7979896B2 (en) * 2007-04-20 2011-07-12 Microsoft Corporation Authorization for access to web service resources
CN101079889A (en) * 2007-06-26 2007-11-28 中兴通讯股份有限公司 Data transmission system and its transmission method
CN101178757B (en) * 2007-11-23 2010-06-23 珠海博睿科技有限公司 Right managing method and apparatus
CN101572696B (en) * 2008-04-29 2012-07-18 华为技术有限公司 Method and device for validating data on webpage form
CN101296243B (en) * 2008-06-26 2013-02-20 阿里巴巴集团控股有限公司 Service integration platform system and method for providing internet service
CN101616136B (en) 2008-06-26 2013-05-01 阿里巴巴集团控股有限公司 Method for supplying internet service and service integrated platform system
JP2010170208A (en) * 2009-01-20 2010-08-05 Toshiba Corp Authority management system
CN102801694B (en) * 2011-05-27 2015-07-08 阿尔卡特朗讯公司 Method and system for implementing third-party authentication based on grey list
JP7210937B2 (en) * 2018-08-29 2023-01-24 コニカミノルタ株式会社 image forming device

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
JP4024052B2 (en) * 2002-02-07 2007-12-19 シャープ株式会社 Terminal, communication system, and program for realizing terminal communication method

Also Published As

Publication number Publication date
CN100596067C (en) 2010-03-24
JP2006072904A (en) 2006-03-16
CN1747387A (en) 2006-03-15

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
JP4868724B2 (en) Information processing apparatus, information processing method, and program thereof
US8347378B2 (en) Authentication for computer system management
JP4827523B2 (en) Information processing apparatus, information processing method, and control program
US9230078B2 (en) Authentication system, control method thereof, service provision device, and storage medium
US9053303B2 (en) Apparatus, authentication system, authentication control method, authentication control program, and computer-readable recording medium having authentication control program
EP2037385B1 (en) Information processing apparatus, authentication control method, and authentication control 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
JP5408910B2 (en) Network device management apparatus, control method thereof, program, and storage medium
JP2005202923A (en) Information processor, information processing system, information processing method, information processing program and recording medium
JP2003345789A (en) System and device for managing document, authenticating method, computer readable program, and storage medium
JP5091003B2 (en) Information processing system, information processing method, program, and recording medium
JP4748766B2 (en) Information processing apparatus, information processing system, information processing method, program, and storage medium
US9571272B2 (en) Image forming apparatus, information processing method, and control method
JP5295336B2 (en) Information processing apparatus, information processing method, and program thereof
JP2005157571A (en) Information processor, apparatus, information processing system, authentication program, and recording medium
KR100374285B1 (en) Space assignment service method and system using Internet printing protocols server
JP2017027272A (en) Information processing system, information processing method, and program
JP2005313487A (en) Print service providing device, program and recording medium for providing print service, communication device, and program and recording medium for requesting print service
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: 20070906

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070906

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20070906

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

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