KR20110002417A - 데이터 처리 장치, 데이터 처리 장치의 제어 방법 및 기록 매체 - Google Patents

데이터 처리 장치, 데이터 처리 장치의 제어 방법 및 기록 매체 Download PDF

Info

Publication number
KR20110002417A
KR20110002417A KR1020100056542A KR20100056542A KR20110002417A KR 20110002417 A KR20110002417 A KR 20110002417A KR 1020100056542 A KR1020100056542 A KR 1020100056542A KR 20100056542 A KR20100056542 A KR 20100056542A KR 20110002417 A KR20110002417 A KR 20110002417A
Authority
KR
South Korea
Prior art keywords
user
authentication
session
processing apparatus
server
Prior art date
Application number
KR1020100056542A
Other languages
English (en)
Inventor
요시히또 나나우미
Original Assignee
캐논 가부시끼가이샤
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 캐논 가부시끼가이샤 filed Critical 캐논 가부시끼가이샤
Publication of KR20110002417A publication Critical patent/KR20110002417A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4406Restricting access, e.g. according to user identity
    • H04N1/4413Restricting access, e.g. according to user identity involving the use of passwords, ID codes or the like, e.g. PIN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32106Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file
    • H04N1/32117Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file in a separate transmission or protocol signal prior to or subsequent to the image data transmission, e.g. in digital identification signal [DIS], in non standard setup [NSS] or in non standard field [NSF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4406Restricting access, e.g. according to user identity
    • H04N1/4426Restricting access, e.g. according to user identity involving separate means, e.g. a server, a magnetic card
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/4406Restricting access, e.g. according to user identity
    • H04N1/4433Restricting access, e.g. according to user identity to an apparatus, part of an apparatus or an apparatus function
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N2201/3201Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N2201/3225Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document
    • H04N2201/3233Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title of data relating to an image, a page or a document of authentication information, e.g. digital signature, watermark
    • H04N2201/3235Checking or certification of the authentication information, e.g. by comparison with data stored independently

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Facsimiles In General (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

네트워크를 통하여 외부 장치에 접속될 수 있는 데이터 처리 장치를 제어하는 제어 방법이 제공된다. 제어 방법은 외부 장치에 구비된 사용자 인터페이스를 취득하여 표시하는 단계를 포함한다. 사용자로부터의 지시는 표시된 사용자 인터페이스를 통하여 수신된다. 수신된 지시는 외부 장치로 송신된다. 데이터 처리 장치를 조작하는 사용자의 인증이 성공했을 때, 외부 장치와 통신하기 위한 세션이 확보된다. 확보된 세션은 외부 장치에 송신된 지시에 대응하는 처리 요청을 외부장치로부터 수신하기 위한 제어를 실행하는데 사용된다.

Description

데이터 처리 장치, 데이터 처리 장치의 제어 방법 및 기록 매체{DATA PROCESSING APPARATUS, CONTROL METHOD FOR DATA PROCESSING APPARATUS, AND RECORDING MEDIUM}
본 발명은, 데이터 처리 장치, 데이터 처리 장치의 제어 방법 및 기록 매체에 관련된 것이다.
최근, 프린터, 복사기, 팩시밀리, 스캐너 등의 기능을 갖는 데이터 처리 장치가 일반적으로 알려져 있다. 복합기(Multi Function Peripheral, MFP)는 그러한 데이터 처리 장치의 일례이다. 이러한 데이터 처리 장치는, 프린터, 복사기, 팩시밀리, 스캐너 등의 기능을 사용자로부터의 지시에 따라 실행한다.
이들 데이터 처리 장치 중 일부는, 브라우저를 포함하여 네트워크 상의 웹 서버에 액세스할 수 있다.
또한, 웹 서버 등의 외부 장치에, 데이터 처리 장치를 조작하기 위한 사용자 인터페이스를 설치하고, 사용자가, 데이터 처리 장치의 브라우저로부터 웹 서버의 사용자 인터페이스를 이용할 수 있게 하는 방법이 제안되어 있다.
이러한 방법에 따르면, 데이터 처리 장치의 브라우저로부터 외부 장치의 사용자 인터페이스를 통해서 입력된 지시는, 외부로부터의 처리 요청(예를 들어, 인쇄 요청)으로서 데이터 처리 장치에 의해 수신된다. 이러한 데이터 처리 장치 중 일부에서는, 예를 들어, 외부 장치를 식별하는 식별 정보(호스트명 등)를 데이터 처리 장치와 외부 장치 사이에서 전송함으로써, 정당한 외부 장치로부터의 처리 요청만을 실행할 수 있다(일본 공개 특허 제2008-003834호 참조).
상술된 데이터 처리 장치와 외부 장치를 포함하는 시스템은, HTTP(Hyper Text Transfer Protocol)라는 프로토콜을 사용한다. HTTP 프로토콜에서는, 데이터 처리 장치가 처리 요청을 발행할 때마다 외부 장치가 데이터 처리 장치와의 접속을 확립한다. 외부 장치는, 데이터 처리 장치로부터 발행된 처리 요청에 대하여 응답을 행한다. 데이터 처리 장치는 응답을 수신할 때, 사용자의 로그인 정보 및 사용자 정보를 세션 영역에 세션 정보로서 저장시키고, 일련의 처리가 종료한 후에 접속을 끊는다.
그러나, 이들 데이터 처리 장치 중 일부에서는, 일반적인 웹 서버 등의 외부 장치의 메모리 리소스보다 세션 정보의 관리에 사용가능한 메모리 리소스가 적다. 그러한 데이터 처리 장치에서 확보할 수 있는 세션의 수에는 한계가 있다.
그러한 유형의 데이터 처리 장치는, 종종 네트워크를 통해서 복수의 PC에 접속되고, 복수의 PC로부터의 처리 요청을 수신했을 때, 처리 요청에 응답하기 위해서 복수의 세션을 확보하는 것이 요청된다.
그러한 이유 때문에, 사용자가 데이터 처리 장치에 로그인한 후, 데이터 처리 장치의 조작부로부터 외부 장치의 사용자 인터페이스를 통하여, 데이터 처리 장치에 처리 요청을 송신했을 때, 데이터 처리 장치에 의해 관리가능한 세션의 수가 일부 경우에 불충분하다. 그러한 경우에, 세션 부족에 기인하여 데이터 처리 장치가 처리 요청을 정상적으로 수신할 수 없어 에러가 발생한다.
그 경우, 사용자는, 데이터 처리 장치에 로그인한 후, 외부 장치에 액세스하고, 외부 장치의 사용자 인터페이스를 통해서 데이터 처리 장치에 처리 요청을 송신할 때까지, 세션 정보를 저장하기 위한 리소스의 부족을 인식할 수 없다.
본 발명은 네트워크를 통하여 외부 장치에 접속될 수 있는 데이터 처리 장치를 제공한다. 데이터 처리 장치는 표시 유닛, 수신 유닛, 지시 송신 유닛, 확보 유닛, 및 제어 유닛을 포함한다. 표시 유닛은 외부 장치에 구비된 사용자 인터페이스를 취득하여 표시할 수 있다. 수신 유닛은 표시 유닛에 의해 표시된 사용자 인터페이스를 통하여, 데이터 처리 장치를 조작하는 사용자로부터 지시를 수신할 수 있다. 지시 송신 유닛은 수신 유닛에 의해 수신된 지시를 외부 장치에 송신할 수 있다. 확보 유닛은 데이터 처리 장치를 조작하는 사용자의 인증이 성공하였을 때, 외부 장치와 통신하기 위한 세션을 확보할 수 있다. 제어 유닛은 처리 요청을 수신하도록 제어를 실행할 수 있다. 수신된 처리 요청은 지시 송신 유닛에 의해 외부 장치에 송신된 지시에 대응하고 확보 유닛에 의해 확보된 세션을 사용하여 외부 장치로부터 수신된다.
본 발명의 추가적인 특징은 첨부 도면을 참조하여 하기의 예시적인 실시예의 상세한 설명으로부터 명백하게 될 것이다.
도 1은 화상 처리 시스템의 일례를 나타내는 블록도이다.
도 2는 화상 처리 장치의 소프트웨어 구성을 나타내는 블록도이다.
도 3은 화상 처리 장치의 상세 구성을 나타내는 블록도이다.
도 4는 화상 처리 장치의 외관도이다.
도 5는 조작부의 외부 레이아웃을 도시하는 도면이다.
도 6은 조작부의 상세 구성을 도시하는 블록도이다.
도 7은 HTTP 프로토콜에 따른 요청과 응답의 처리의 흐름을 도시하는 차트이다.
도 8은 LCD 표시부 상에 표시되는 UI의 일례를 나타낸다.
도 9는 화상 처리 시스템의 인증 컨텍스트의 데이터 구조를 도시한다.
도 10은 WAS를 위한 처리의 일례를 설명하는 차트이다.
도 11은 서버의 상세 구성을 도시하는 블록도이다.
도 12는 화상 처리 시스템의 세션의 데이터 구조를 도시한다.
도 13은 조작부 상에 표시되는 로그인 화면의 일례를 나타낸다.
도 14는 화상 처리 시스템에서의 처리 수순을 나타내는 흐름도이다.
도 15a 및 도 15b는 각각 화상 처리 시스템에서의 처리 수순을 나타내는 흐름도이다.
도 16은 조작부 상에 표시되는 UI의 일례를 나타낸다.
도 17은 화상 처리 시스템의 처리 수순을 나타내는 흐름도이다.
도 18은 화상 처리 시스템의 처리 수순을 나타내는 흐름도이다.
도 19는 화상 처리 시스템의 처리 수순을 나타내는 흐름도이다.
하기에 본 발명의 실시예에 대해서 도면을 참조하여 설명한다.
도 1은 본 발명의 실시예에 따른 데이터 처리 시스템의 구성을 나타내는 블록도이다. 본 실시예에서, 데이터 처리 시스템의 일례로서 화상 처리 시스템을 설명하고, 데이터 처리 장치의 일례로서 화상 처리 장치를 설명한다. 또한, 화상 처리 장치가 소위 MFP인 경우와 관련하여 본 실시예가 설명되지만, 화상 처리 장치는 소위 단일 기능 주변 기기(Single Function Peripheral, SFP)일 수 있다.
도 1을 참조하면, 근거리 통신망(Local Area Network, LAN)(100)이, 광역 통신망(Wide Area Network, WAN)이나 인터넷에 접속된다. 호스트 컴퓨터(120)는 LAN(100)에 접속된다. 호스트 컴퓨터(120)는, 웹브라우저를 포함하고, 화상 처리 장치(110) 및 서버(130)와의 HTTP 접속을 통해서 서비스를 수신할 수 있다.
서버(130)는 웹 어플리케이션 서버를 실현하기 위한 소프트웨어 처리군을 포함한다. 서버(130)는, 후술되는 소프트웨어 모듈을 포함한다. 네트워크 상의 복수의 장치는 서버(130)에 액세스할 수 있고, 서버(130)의 기능을 이용할 수 있다. 예를 들어, 각각 네트워크에 접속된 호스트 컴퓨터(120), 화상 처리 장치(110), 또는 다른 장치(도시 안됨)는 서버(130)에 액세스할 수 있고, 서버(130)의 기능을 이용할 수 있다.
웹 서버부(131)는, HTTP 프로토콜에 따라 클라이언트로부터 발행된 요청에 응답해서 HTML 문서 등의 콘텐츠를 전송하기 위한 모듈이다. 어플리케이션 서버부(132)는 HTTP 요청의 수신 시, 미리 정해진 처리 및 HTTP 응답을 행하는 공통 게이트웨이 인터페이스(Common Gateway Interface, CGI) 프로그램이나 서브레트(Servlet) 등의 형태로 설치된 모듈이다. 데이터 관리부(133)는 어플리케이션 서버부(132)로부터 호출되는 스크립트 데이터를 저장하고, 수신한 데이터를 저장하는 모듈이다.
인증 서버(140)는 화상 처리 장치(110)에 대한 사용자 인증 및 사용자 정보 관리를 행한다. 더욱 구체적으로, 인증 서버(140)는 화상 처리 장치(110) 및 서버(130)로부터 취득되는 사용자명, 도메인명, 및 패스워드를 포함하는 신분증명(Credential)을 사용해서 사용자 인증을 행한다. 사용자 인증에 성공하면, 인증 서버(140)는 보안 토큰(Security Token)(이하 "ST"로 약기)을 인증의 요청원에 보냄으로써 회신한다. 즉, ST는, 신분증명의 유효성이 확인되어 사용자 인증이 성공했을 때 회신되는 정보, 즉 인증이 완료된 것을 나타내는 정보이다. 인증 서버(140)가 사용자 인증을 실행하는 디바이스들 사이에서, ST를 전송함으로써, 인증 서버(140)에 의해 사용자 인증을 다시 실행할 필요가 없어진다. 상술된 인증 서버(140)를 사용함으로써, LAN(100)에 접속된 디바이스들 사이에서 통일된 방식으로 사용자 인증을 행할 수 있고, 이들 디바이스 사이에서 사용자를 일의적으로 특정할 수 있다.
화상 처리 장치(110)는, 화상의 입출력과 송수신 및 다양한 유형의 화상 처리를 실행하기 위한 MFP(복합기)이다. 화상 처리 장치(110)는, 화상 입력 디바이스인 스캐너(113), 화상 출력 디바이스인 프린터(114), 컨트롤러 유닛(111), 및 조작부(112)를 포함한다.
스캐너(113), 프린터(114), 및 조작부(112)는 컨트롤러 유닛(111)에 접속되고, 컨트롤러 유닛(111)으로부터의 명령에 따라 제어된다. 컨트롤러 유닛(111)은 LAN(100)에 접속된다.
[화상 처리 장치(110)의 소프트웨어 구성]
하기에, 화상 처리 장치(110)의 소프트웨어 구성에 대해서 도 2를 참조하여 설명한다. 도 2는, 도 1에 도시된 화상 처리 장치(110)의 소프트웨어 구성을 도시하는 블록도이다.
도 2를 참조하면, 사용자 인터페이스(이하, "UI"로 약기) 모듈(201)은, 사용자(오퍼레이터)가 화상 처리 장치(110)에 대하여 각종 조작 및 설정을 행할 때에, 디바이스와 사용자 조작 사이의 중개를 위한 모듈이다. UI 모듈(201)은, 사용자 조작에 따라, 예를 들어, 후술의 각종 모듈에 입력 정보를 전송함으로써 처리 요청의 발행 또는 데이터의 설정을 실행한다.
웹 서버 모듈(203)은, 웹 클라이언트(예를 들어, 호스트 컴퓨터(120))로부터 HTTP 요청을 수신한다. 이하, 웹 서버 모듈(203)을, 단순히 "웹 서버(203)"라고 칭한다. 웹 서버(203)는, 클라이언트로부터의 HTTP 요청에 응답하여, HTTP 모듈(214), TCP/IP 통신 모듈(217), 및 네트워크 드라이버(221)를 통해서 웹 클라이언트에 HTTP로 응답한다. 웹 서버(203)로부터의 응답은, 예를 들어, 화상 처리 장치(110)의 관리 정보 등을 포함한다.
웹브라우저 모듈(209)은, 인터넷 또는 인트라넷 상의 각종 웹페이지를 판독하여 표시를 행하기 위한 것이다. 이하, 웹브라우저 모듈(209)을 단순히 "웹브라우저(209)"라고 칭하고, 그것의 상세한 구성은 후술한다.
HTTP 모듈(214)은, 화상 처리 장치(110)가 HTTP 통신을 실행할 때에 사용된다. HTTP 모듈(214)은 TCP/IP 통신 모듈(217)(후술됨)을 사용함으로써, 웹 서버(203), 웹브라우저(209), 및 웹 서비스 제공자(Web-Service-Provider) 모듈(207)(후술됨)에 통신 기능을 제공한다.
또한, HTTP 모듈(214)은, HTTP 등의 웹 상에서 사용되는 여러 가지 프로토콜에 적합하고, 특히 신뢰할만한 보안성을 갖도록 설계된 프로토콜에 적합한 통신 기능을 제공한다. TCP/IP 통신 모듈(217)은, 네트워크 드라이버(221)를 사용함으로써, 여러 가지 모듈에 네트워크 통신 기능을 제공한다. 네트워크 드라이버(221)는 네트워크에 물리적으로 접속되어 데이터의 입출력을 제어한다. 인증 서비스 모듈(205)은, 사용자가 화상 처리 장치(110)의 기능을 이용하기 위해 필요한 사용자 인증 처리를 관리 및 제어한다.
로컬 인증 서비스(Local-Authentication-Service) 모듈(210)은 UI 모듈(201)로부터 실행이 개시되는 사용자 인증을 위한 인증 처리를 관리 및 제어한다. 이하, 로컬 인증 서비스(LAS) 모듈을 "LAS"라고 약기한다. LAS(210)가 UI 모듈(201)로부터 입력된 신분증명을 수신할 때, 인증 서버(140)의 도움을 받아 인증 처리를 개시한다.
인증 서버(140)의 인증 방법이 상이하면, 사용자 인증에 필요한 데이터 통신 프로토콜 및 신분증명 둘 다도 상이하다. 그로 인해, LAS(210)는 교체가능하고, LAS(210)를 교체하는 것에 의해 화상 처리 장치(110)는 인증 서버(140)에서 사용될 수 있는 여러 가지 인증 방식에 적합하게 될 수 있다. 인증 방법은, 예를 들어 NTLM 인증 및 커베로스 인증(Kerberos authentication)을 포함한다. LAS(210)의 교체에 의해, 인증 서버(140) 대신 화상 처리 장치(110) 내의 간이 인증 서비스(Simple-Authentication-Service) 모듈(213)로 인증을 행할 수도 있다. 이하, 간이 인증 서비스(SAS) 모듈을 "SAS"라고 약기한다.
또한, LAS(210)의 교체에 의해, 터치 패널이나 소프트(소프트웨어) 키보드를 사용한 인증 정보 입력, 및 USB 키보드나 USB 카드 리더를 사용한 신분증명 입력을 포함한 다양한 방식으로 입력을 수신할 수 있다.
원격 인증 서비스(Remote-Authentication-Service) 모듈(211)은 웹 클라이언트로부터 웹 서버(203)를 통해서 실행이 개시되는 사용자 인증을 위한 인증 처리를 관리 및 제어한다. 이하, 원격 인증 서비스(RAS) 모듈을 "RAS"라고 약기한다.
RAS(211)가 웹 서버(203)로부터 신분증명을 수신한 때, 인증 서버(140)의 도움을 받아 인증 처리를 행한다. RAS(211)는 LAS(210)와 마찬가지로 교체가능하고, RAS(211)를 교체하는 것에 의해 화상 처리 장치(110)는 인증 서버(140)에서 사용될 수 있는 여러 가지 인증 방식에 적합하게 된다.
웹 인증 서비스(Web-Authentication-Service) 모듈(212)은, 후술되는 웹 서비스 제공자 모듈(207)을 통해서 화상 처리 장치(110)의 기능을 이용하기 위한 인증 처리를 관리 및 제어한다. 이하, 웹 인증 서비스(WAS) 모듈을 "WAS"라고 약기한다.
인증 처리를 행하기 위한 WAS(212)에 대한 인터페이스가 웹 서비스로서 네트워크에 공개되어 있음을 유의한다.
인증 컨텍스트 관리(Authentication-Context-Management) 모듈(206)은 사용자 인증이 성공한 후에 인증 서버(140)로부터 회신되는 ST뿐만 아니라 인증 서버(140)로부터 취득 가능한 사용자 정보도 관리한다. 이하, 인증 컨텍스트 관리(ACM) 모듈을 "ACM"이라고 약기한다. ACM(206)의 상세는 후술한다.
웹 서비스 제공자 모듈(207)은, 웹 서비스로서 디바이스 기능을 제공한다. 웹 서비스 제공자 모듈(207)은, LAN(100)을 통해서 수신한 명령을 해석해서 실행한다. 이 커맨드는, 예를 들어 SOAP에 기초한 커맨드일 수 있다. 이하, 웹 서비스 제공자 모듈을 "WSP"라고 약기한다.
사용자 프로파일 관리(User-Profile-Management) 모듈(208)은, 사용자의 설정 정보 및 관리 정보를 사용자 단위로 관리한다. 이하, 사용자 프로파일 관리(UPM) 모듈을 "UPM"이라고 약기한다. UPM(208)은, 설정 정보를 취득하기 위해서는 ST를 필요로 하고, ST를 액세스 키로서 사용하여 각 사용자의 설정 정보를 취득한다. SAS(213)는, 화상 처리 장치(110)에서 사용자 인증 및 사용자 정보 관리를 행하는 모듈이다.
그리하여, 인증 서비스(Authentication-Service) 모듈(205)은, LAS(210), RAS(211), 및 WAS(212) 중 임의의 것을 교체가능한 방식으로 선택하여 인증 서버(140)의 도움을 받아 인증을 행하도록 인증 서비스를 제공한다. 인증 서비스(Authentication-Service) 모듈(205)은, LAS(210), RAS(211), 및 WAS(212)가 아닌 SAS(213)를 선택하여 인증 서비스를 행할 수도 있다.
세션 관리자(Session-Manager) 모듈(204)은, 웹 서버 모듈(203), 인증 서비스모듈(205) 또는 웹 서비스 제공자 모듈(207)로부터 호출되어, 세션의 관리 및 제어를 행한다. 세션 관리자 모듈(204)의 상세는 후술한다. 이하, 세션 관리자 모듈(204)을 "SM(204)"이라고 약기한다. SM(204)은, 후술하는 세션과 사용자 인증이 성공한 인증 정보를 연관시켜서 관리한다.
제어 API(Control API, 218)는, 웹 서버(203), 웹브라우저(209), 및 WSP(207) 등의 상류 모듈에, 잡 관리자(Job Manager, 219) 등의 하류 모듈에 대한 인터페이스를 제공한다. 그 결과, 상류 및 하류 모듈 사이의 의존 관계가 경감될 수 있어, 그들 사이의 유동성을 증가시킬 수 있다. 이하, 잡 관리자 모듈을 단순히 "잡 관리자"라고 칭한다.
잡 관리자(219)는, 전술한 각종 모듈로부터 제어 API(218)를 통해서 지시되는 여러 가지 처리를 해석하고, 후술의 모듈들(220, 224, 및 226)에 지시를 제공한다. 또한, 잡 관리자(219)는, 화상 처리 장치(110) 내에서 실행되는 하드웨어 처리를 통일된 방식으로 관리한다.
코덱 관리자 모듈(220)은, 잡 관리자(219)로부터 지시된 여러 가지 처리 중에서, 데이터를 여러 가지 방식으로 압축 및 압축 해제하는 처리를 관리 및 제어한다. 이하, 코덱 관리자 모듈을 단순히 "코덱 관리자"라고 칭한다.
FBE 인코더 모듈(FBE-Encoder module, FBE CODEC)(229)은, 스캔 처리를 통해 판독된 데이터를, FBE 포맷을 사용하여 압축한다. 실제로, FBE 코덱(229)은 잡 관리자(219) 또는 후술의 스캐너 관리자(224)에 의해 실행된 스캔 처리를 통해 판독된 데이터를, FBE 포맷을 사용하여 압축한다.
JPEG 코덱(222)은, 판독된 데이터의 JPEG 압축 및 인쇄 데이터의 JPEG 전개 처리를 실행한다.
여기서, "판독된 데이터"라는 용어는, 잡 관리자(219)나 스캐너 관리자(224)에 의해 실행된 스캔 처리로 취득되는 데이터를 의미한다. 또한, "인쇄 데이터"라는 용어는, 인쇄 관리자(226)에 의해 실행되는 인쇄 데이터를 의미한다.
MMR 코덱 모듈(223)은, 판독된 데이터의 MMR 압축 및 인쇄 데이터의 MMR 압축 해제의 처리를 실행한다. 판독된 데이터는, 잡 관리자(219)나 스캐너 관리자(224)에 의해 실행된 스캔 처리에 의해 취득된 데이터를 포함한다. 또한, 인쇄 데이터는, 인쇄 관리자(226)에 의해 실행된 인쇄 처리에 의해 취득된 데이터를 포함한다.
스캐너 관리자(224)는, 잡 관리자(219)로부터 지시된 스캔 처리를 관리 및 제어한다. 스캐너 관리자(224)와, 화상 처리 장치(110)에 내부적으로 접속된 스캐너(113) 사이의 통신이, SCSI 드라이버(225)를 통해서 행해진다.
인쇄 관리자(226)는, 잡 관리자(219)로부터 지시된 인쇄 처리를 관리 및 제어한다. 인쇄 관리자(226)와 프린터(114) 사이의 인터페이스가 엔진 I/F(227)에 의해 제공된다.
병렬 포트 드라이버(Parallel, 228)가 탑재되어, Parallel(228)을 통해서 출력 디바이스(도시 안됨)에 데이터를 출력하기 위한 인터페이스(I/F)를 제공한다.
[화상 처리 장치(110)의 상세 구성]
도 3은, 도 1에 도시된 화상 처리 장치(110)의 상세 구성을 도시하는 블록도이다.
도 3을 참조하면, 컨트롤러 유닛(111)은 장치 전체를 제어한다. 컨트롤러 유닛(111)은, 화상 입력 디바이스인 스캐너(113) 및 화상 출력 디바이스인 프린터(114)를 제어하기 위하여, 이것들에 접속된다. 또한, 컨트롤러 유닛(111)은, LAN(100) 및 공중 회선에 접속되어, LAN(100) 및 공중 회선을 통해서 화상 정보 및 디바이스 정보를 외부의 디바이스에 대하여 수신하고 출력한다. 공중 회선에 접속되는 외부 디바이스의 예는, 팩시밀리 장치, 및 팩시밀리 기능을 갖는 정보 처리 장치를 포함한다.
컨트롤러 유닛(111)은, 시스템 버스(307)를 통해서 이하의 디바이스와 접속된다. 본 실시예에서, 이러한 디바이스는, CPU(301), RAM(302), ROM(303), HDD(하드 디스크 드라이브)(304), 화상 버스 I/F(305), 조작부 I/F(306), 네트워크 I/F(308), 및 모뎀(MODEM, 309)을 포함한다.
RAM(302)은, CPU(301)의 작업 영역을 제공하는 메모리이다. RAM(302)은 화상 데이터를 일시적으로 저장하기 위한 화상 메모리로서도 사용된다. ROM(303)은 부트 ROM이며, 시스템을 위한 부트 프로그램을 저장한다. HDD(304)는, 시스템 소프트웨어, 화상 데이터 등을 저장한다.
조작부 I/F(306)는, 조작부(112)에 대한 입출력을 행하기 위한 인터페이스이다. 조작부(112) 상에 표시하는 화상 데이터를 조작부 I/F(306)를 통하여 조작부(112)에 출력한다. 또한, 조작부 I/F(306)는, 사용자가 조작부(112)를 통해서 입력한 정보를, CPU(301)에 전송하는 역할을 한다.
네트워크 I/F(308)는 LAN(100)에 접속되어, LAN(100)에 대하여 정보를 입출력한다. MODEM(309)은, 공중 회선에 접속되어, 공중 회선에 대하여 정보를 입출력한다. 화상 버스 I/F(305)는, 데이터 구조의 변환을 위해, 시스템 버스(307)와, 화상 데이터를 고속으로 전송하는 화상 버스(310)를 접속하는 버스 브리지로서 기능한다.
화상 버스(310)는, RIP(Raster Image Processor, 311), 디바이스 I/F(312), 스캐너 화상 처리부(313), 프린터 화상 처리부(314), 화상 회전부(315), 및 화상 압축부(316)에 접속된다.
RIP(311)는, LAN을 통하여 수신된 PDL 코드를 비트맵 화상으로 전개한다. 디바이스 I/F(312)는, 화상 데이터의 동기계와 비동기계 사이에서의 변환을 위해 스캐너(113) 및 프린터(114)를 컨트롤러 유닛(111)에 접속한다.
스캐너 화상 처리부(313)는 입력 화상 데이터에 대하여 보정, 가공, 편집 등을 행한다. 프린터 화상 처리부(314)는, 프린트 출력 화상 데이터에 대하여, 프린터의 보정, 해상도 변환 등을 행한다. 화상 회전부(315)는 화상 데이터를 회전시킨다.
화상 압축부(316)는 다치 화상 데이터에 대하여 JPEG에 따라 압축/압축 해제 처리를 행한다. 또한, 화상 압축부(316)는 2치 화상 데이터에 대하여는 예를 들어, JBIG, MMR, 또는 MH에 따른 압축/압축 해제 처리를 행한다.
[화상 처리 장치(110)의 외부 구성]
하기에 화상 처리 장치(110)의 외부 구성에 대해서 도 4를 참조하여 설명한다.
도 4는, 도 1에 나타낸 화상 처리 장치(110)의 외관도이다.
도 4를 참조하면, 화상 처리 장치(110)에서, 스캐너(113)는, 원고의 각각의 용지 상의 화상을 조명하고, CCD 라인 센서(도시 안됨)를 주사함으로써, 래스터 화상 데이터(raster image data)를 생성한다. 사용자가 원고 용지를 문서 피더(405)의 트레이(406)에 세트하고, 조작부(112) 상에서 판독의 개시를 지시하면, 컨트롤러 유닛(111)의 CPU(301)가 스캐너(113)에 지시를 발행한다. 문서 피더(405)가 원고의 용지를 1장씩 급지하면, 스캐너(113)는 문서 피더(405)로부터 급지된 각 원고 상의 화상의 판독 동작을 행한다.
프린터(114)는, 래스터 화상 데이터를, 용지 카세트들(401, 402 및 403) 중 하나로부터 공급된 용지 상에 인쇄하고, 인쇄된 시트를 배지 트레이(404)에 배지한다. 프린터(114)에서 사용되는 인쇄 방법은, 감광 드럼 또는 감광 벨트를 사용한 전자 사진 방식일 수 있다.
[화상 처리 장치(110)의 조작부(112)의 외부 레이아웃]
하기에, 조작부(112)의 외부 레이아웃에 대해서 도 5를 참조하여 설명한다.
도 5는, 도 1에 나타낸 조작부(112)의 외부 레이아웃을 도시하는 도면이다.
도 5를 참조하면, 조작부(112)는, LCD 상에 터치 패널(502)이 접합되어 이루어지는 LCD 표시부(501)를 포함한다.
LCD 표시부(501)에, 시스템 조작 화면 및 소프트(소트트웨어) 키가 표시된다. 표시된 키 중 하나가 눌리면, 눌린 위치를 나타내는 위치 정보가 CPU(301)에 전달된다. 또한, 조작부(112)는, 개시 키(505), 스톱 키(503), ID 키(507), 및 리셋 키(504)와 같은 여러 가지 하드(하드웨어) 키를 포함한다.
개시 키(505)는, 원고 상의 화상의 판독 동작의 개시를 지시하기 위한 키이다. 개시 키(505)의 중앙에는, 녹색과 적색 2색을 표시할 수 있는 LED 표시부(506)가 배치된다. 2색의 LED 표시부(506)는, 2색 각각에 따라 개시 키(505)가 사용 가능한 상태에 있는지의 여부를 나타낸다. 스톱 키(503)는, 실행 중의 동작을 멈추기 위해 사용되는 키이다. ID 키(507)는, 사용자가 사용자 ID를 입력할 때에 사용되는 키이다. 리셋 키(504)는 조작부(112)로부터 입력된 설정을 초기화할 때에 사용되는 키이다.
[화상 처리 장치(110)의 조작부(112)의 구성]
하기에, 조작부(112)의 구성에 대해서 도 6을 참조하여 설명한다.
도 6은, 도 1의 조작부(112)의 상세 구성을 도시하는 블록도이다.
도 6을 참조하면, 조작부(112)는, 조작부 I/F(306)를 통해서 시스템 버스(307)에 접속된다. 상술한 바와 같이, 시스템 버스(307)에는, CPU(301), RAM(302), ROM(303), HDD(304) 등이 접속된다. 조작부 I/F(306)는, 사용자에 의한 입력을 제어하기 위한 입력 포트(601)와, 화면 출력 디바이스를 제어하기 위한 출력 포트(602)를 포함한다. 입력 포트(601)는, 터치 패널(502) 및 여러 가지 키(503, 504, 505 및 507)를 포함하는 키 군으로부터의 사용자 입력을 CPU(301)에 전송한다. 각각의 사용자 입력의 내용과 제어 프로그램에 따라, CPU(301)는 표시 화면 데이터를 생성하여, 출력 포트(602)를 통하여 LCD 표시부(501)에 표시 화면 데이터를 출력한다. 또한, CPU(301)는, 출력 포트(602)를 통해서 필요에 따라 LED 표시부(506)를 제어한다.
[화상 처리 장치(110)의 웹브라우저(209)의 구성]
도 2에 도시된 웹브라우저(209)는, HTTP 모듈(214)을 통하여, 다른 네트워크 노드와의 접속을 확립해 통신한다. 이 통신에서, URL에 의해 기술된 리소스에 대하여 HTTP 요청이 발행되어, HTTP 요청에 대한 응답이 취득된다. 이러한 처리에서, 여러 가지 부호화 모드에 따라 통신 데이터의 부호화/복호화(encoding/decoding)도 행해진다.
이벤트 처리부(도시 안됨)는, 조작부(112)에서 터치 패널(502) 시트, 여러 가지 키 등에 대하여 사용자가 행한 조작을 나타내는 이벤트를 수신하고, 수신된 이벤트들 각각에 대응하는 처리를 행한다. 또한, 이벤트 처리부는, 제어 API(218)로부터 장치, 잡 등의 상태 천이 이벤트를 수신하고, 수신된 이벤트 각각에 대응한 처리를 행한다. 스크립트 인터프리터(도시 안됨)는, Java(등록 상표) Script(ECMA Script) 등의 스크립트를 인터프리트하여 실행하는 인터프리터이다. 스크립트는, 문서에 매립되어 있거나, 또는 문서와 링크된 다른 파일에 기술된다. 스크립트를 사용함으로써, 콘텐츠 제공자는 제공하는 문서의 동적인 거동을 프로그램할 수 있다.
[HTTP 프로토콜에 따른 요청 및 응답의 흐름]
도 7은 도 2에 도시된 HTTP 모듈(214)에 의해 실행되는 HTTP 프로토콜에 따른 요청 및 응답의 처리의 흐름을 도시하는 차트이다.
도 7을 참조하면, 클라이언트(701)는, 도 7에 나타낸 바와 같이, HTTP 요청을 송신하고 HTTP 응답을 수신하는 소프트웨어가 설치된 장치를 나타낸다. 본 실시예에서, 클라이언트(701)는 웹브라우저(209)가 설치된 화상 처리 장치(110)나, 웹브라우저가 설치된 호스트 컴퓨터(120)에 대응한다.
서버(702)는, HTTP 요청을 수신하여 수신된 HTTP 요청에 대응하는 처리를 행하고, 또한 HTTP 응답을 회신하는 소프트웨어를 나타낸다. 본 실시예에서, 서버(701)는 도 1에 나타낸 서버(130)에 대응한다.
클라이언트(701)는, HTTP 요청을 GET 방법 또는 POST 방법 중 어느 하나의 방법에 따라 송신할 수 있다. 클라이언트(701)가 원하는 리소스에 대한 HTTP 요청(703)을 GET 방법에 따라 서버(702)에 송신할 경우, 리소스는 일반적으로 URI (특히 URL) 포맷으로 지정된다. 서버(702)는 HTTP 요청(703)에 의해 지정된 리소스에 대응하는 데이터를 취득 또는 생성하고, 이 데이터를 HTTP 응답(704)으로서 반송한다.
이제, HTTP 요청을 POST 방법에 따라 송신할 경우를 설명한다.
HTML 문서가 "폼(form)"을 포함하고, 송신 방법이 POST 방법으로 지정되어 있을 때, 하기의 처리가 실행된다.
사용자에 의해 입력된 정보가, 클라이언트(701)의 웹브라우저에 의해 표시된 폼으로 부호화된다. 또한, 클라이언트(701)는, 그 부호화된 정보, 즉 폼의 입력 상세를, HTTP 요청(705)에 대한 첨부물로서 서버(702)에 송신한다.
서버(702)에서는, 지정된 리소스가, 클라이언트(701)로부터 보내진 데이터를 수신해서 처리를 행하고, HTTP 응답(706)을 생성하고, 클라이언트(701)에 HTTP 응답(706)을 회신한다.
[화상 처리 장치(110)의 브라우저 화면 레이아웃]
하기에, UI 모듈(201)에 의해 표시되는 웹브라우저의 브라우저 화면 레이아웃에 대해서 도 8을 참조하여 설명한다. 이하, 서버(130)로부터 취득하는 웹브라우저의 화면을 사용하여, 사용자로부터의 처리 요청을 수신하는 처리에 대해서 설명한다.
도 8은, 도 6에 나타내는 LCD 표시부(501) 상에 표시되는 사용자 인터페이스(UI)의 일례를 나타낸다. 본 예는, UI 모듈(201)에 의해 표시되는 웹브라우저 화면에 대응한다.
도 8을 참조하면, 브라우저 화면(800)에는, URL 입력 필드(808), 콘텐츠 표시 영역(802), 및 상황 영역(status area, 807)이 표시된다. 또한, 브라우저 화면(800)에는, 탭(801), 확인 버튼(809), 프로그레스 바, 복귀 버튼(803), 진행 버튼(804), 새로고침 버튼(806), 및 정지 버튼(805) 등의 여러 가지 버튼이 표시된다. 또한, 버튼들의 표시 형태 및 표시 위치는 본 예의 표시 화면에 나타낸 것들로 한정되는 것이 아니라는 것에 유의한다.
탭(801)은, 웹브라우저 기능과, 다른 기능(즉, 복사, 박스, 송신, 및 확장) 중 어느 하나의 기능 사이에서의 화면 변경을 위한 버튼으로서 기능한다. URL 입력 필드(808)는, 사용자가 원하는 리소스의 URL을 입력하는 필드이다. URL 입력 필드(808)를 사용자가 누를 때, 문자 입력을 위한 가상적인 풀 키보드(full keyboard)(도시 안됨)가 표시된다. 사용자는, 가상적인 풀 키보드 상에 배치된 하드웨어 키 톱들(key tops)을 모방한 소프트 키들을 터치하는 것에 의해 원하는 문자열을 입력할 수 있다.
확인 버튼(809)은, 입력한 URL 문자열을 사용자가 확정할 때 사용되는 소프트 키이다. 확인 버튼(809)을 누름으로써 URL이 확정될 때, 웹브라우저(209)는 관련 리소스의 취득을 위한 HTTP 요청을 발행한다.
프로그레스 바는, HTTP 요청 및 응답에 기초한 콘텐츠 취득 처리의 진척 상황을 나타낸다. 콘텐츠 표시 영역(802)은, 취득된 리소스가 표시되는 영역이다. 복귀 버튼(803)은, 콘텐츠 표시의 이력을 거슬러 올라가면서, 현재 표시하고 있는 콘텐츠에 앞서 표시하였던 콘텐츠를 다시 표시하기 위해 사용되는 소프트 키이다.
진행 버튼(804)은, 콘텐츠 표시의 이력을 거슬러 올라가면서 콘텐츠가 표시될 때에, 현재 표시하고 있는 콘텐츠의 후에 표시했던 콘텐츠로 진행하기 위해 사용되는 소프트 키이다.
새로고침 버튼(806)은, 현 시점에서 표시하고 있는 콘텐츠의 재취득과 재표시에 사용되는 소프트 키이다. 정지 버튼(805)은, 실행 중의 콘텐츠 취득 처리를 정지하는 데 사용되는 소프트 키이다.
스테이터스 영역(810)은, 화상 처리 장치의 여러 가지 기능에 기초하여 발행된 메시지를 표시하는 영역이다. 이 스테이터스 영역(810)은, 브라우저 화면(800)을 표시하는 중이어도, 스캐너, 프린터, 또는 다른 기능 각각에 기초하여, 사용자의 주의를 환기시키기 위한 메시지를 표시할 수 있다.
또한, 마찬가지로 웹브라우저 기능에 기초하여 메시지를 표시할 수 있다. 웹브라우저 기능은, 링크된 웹의 URL 문자열, 콘텐츠 타이틀의 문자열, 스크립트에 의해 지시된 메시지 등을 표시한다.
[인증 컨텍스트 관리(ACM) 모듈]
도 2에 나타내는 ACM(206)은, 이하에 설명된 인증 서비스 모듈로부터 수신된 인증 컨텍스트를 관리한다. 인증 서비스는, LAS(210), RAS(211), 및 WAS(212)를 포함한다. LAS(210), RAS(211), 및 WAS(212) 각각은, 인증에 성공하면 인증 컨텍스트로서 필요한 정보를 ACM(206)에 전송한다. ACM(206)은 인증 컨텍스트를 준비하고, 사용자 정보를 기입한다. 인증에 성공한 후 인증 컨텍스트에 사용자 정보가 기입되면, 그 이후의 사용자의 조작은 모두 인증 컨텍스트에 이름이 기입된 사용자의 권한에서 동작한다.
또한, ACM(206)은 인증 컨텍스트를 관리한다. ACM(206)이 인증 컨텍스트를 관리하는 기간은, 상술한 바와 같이, 사용자의 인증의 성공 후 인증 컨텍스트가 준비되고 나서, 사용자가 로그아웃 처리를 할 때까지의 기간이다.
로그아웃 조건은, 예를 들어 사용자에 의해 로그아웃 처리가 이루어짐으로써, 설정된 타임-아웃 시간 동안에 아무 조작도 행해지지 않음으로써, 디바이스 설정 정보의 여러 가지 항목 중 임의의 것이 변경됨으로써, 저전력 모드로의 이행, 디바이스 재기동 등으로써 제공된다.
하기에, 인증 컨텍스트의 데이터 구조에 대해서 도 9를 참조해서 설명한다. 도 9는, 도 2에 나타낸 ACM(206)이 준비해서 관리하는 인증 컨텍스트의 데이터 구조를 나타내는 도면이다.
도 9를 참조하면, 속성("Attribute") 열(901)은 인증 컨텍스트의 속성을 나타낸다. 데이터 유형("DataType") 열(902)은 각 속성에 대응한 데이터 유형을 나타낸다.
인증 서비스 유형 속성(AuthSvcType, 904)은, 인증 서비스들(즉, LAS(210), RAS(211), 및 WAS(212)) 중 어느 것으로부터 인증 컨텍스트가 준비되었는지를 구분하기 위한 정보를 저장한다.
인증 서버 어드레스 속성(AuthSerIP, 905)은, 인증 서버(140)의 IP 어드레스를 저장한다. ST 속성(SecurityToken, 906)은, 인증 서버(140)로부터 취득한 ST를 저장한다.
사용자명 속성(UserName, 907)은, 인증 서버(140)로부터 취득한 사용자명을 저장한다. 사용자 ID 속성(UserID, 908)은, 인증 서버(140)로부터 취득한 사용자 ID를 저장한다.
그룹명 속성(GroupName, 909)은, 인증 서버(140)로부터 취득한 사용자가 소속하는 그룹명을 저장한다. 그룹 ID 속성(GroupID, 910)은, 인증 서버(140)로부터 취득한 그룹의 그룹 ID를 저장한다.
도메인명 속성(DomainName, 911)은, 인증 서버(140)로부터 취득한 사용자가 속하는 도메인명을 저장한다. 메일 주소 속성(Email, 912)은, 인증 서버(140)로부터 취득한 사용자의 메일 주소를 저장한다.
권한 속성(AccessRight, 913)은, 인증 서버(140)로부터 취득한 사용자가 예를 들어, 복사 조작 및 스캔 조작 등의 조작에 대한 권한을 가지고 있는지의 여부를 나타내는 정보를 저장한다. 세션 ID 참조 속성(RefSessionID, 914)은 인증 컨텍스트를 키로서 사용하여 준비된 세션 리소스에의 참조 정보를 저장한다.
[WAS(212)에 대한 처리의 흐름]
도 10은, 도 2에 나타낸 WAS(212)에 대한 처리의 일례를 설명하는 차트이다. 도 10에서, S1002 내지 S1009은 연속하는 단계를 나타낸다.
도 10을 참조하면, 클라이언트(1001)는, WAS(212)에 웹 서비스로서 HTTP 요청을 송신하고, HTTP 응답을 수신하는 소프트웨어를 설치한 단말기이다. 본 실시예에서는, 클라이언트(1001)는 서버(130)에 대응한다.
우선, S1002에서, 클라이언트(1001)는, 화상 처리 장치(110)의 WAS(212)에 대하여 인증 방법에 대하여 문의하기 위한 HTTP 요청을 송신한다. 그 후, S1003에서는, S1002에서 클라이언트(1001)로부터 송신된 요청에 응답하여, WAS(212)가 클라이언트(1001)에 인증 방법을 회신한다.
또한, WAS(212)는, 클라이언트(1001)로부터 수신된 신분증명에 대한 사용자 인증을 행한다. 클라이언트(1001)로부터 WAS(212)에 ST를 전송하여 사용자 인증을 행할 때, WAS(212)는 S1004에서, 인증 서버(140)에 대하여 관련 ST가 유효한지의 여부를 확인한다. ST가 유효한 경우에는 인증 서버(140)로부터 "OK"가 회신된다.
사용자 인증에 성공하면, WAS(212)는 ACM(206)에 대하여 인증 컨텍스트 준비를 요청한다. ACM(206)은 ST와 사용자 정보 둘 다에 기초하여 인증 컨텍스트를 준비해 저장한다. 이와 같이 하여, 인증 컨텍스트가 준비된 후, 사용자는 인증 컨텍스트에 기초한 권한에서 화상 처리 장치(110)의 서비스를 웹 서비스를 통해서 이용할 수 있다.
S1005에서, WAS(212)는, 클라이언트(1001)에 대하여 ST를 회신한다. 그 후, S1006에서, 클라이언트(1001)는 웹 서비스 기술의 헤더 부분에 ST를 부가하는 형식으로 삽입하고, 화상 처리 장치(110)에 HTTP 요청을 송신한다.
WAS(212)는, 클라이언트(1001)로부터 수신된 HTTP 요청의 헤더 부분의 ST를 판독하고, 판독된 ST가 유효한 것인지의 여부를 판단한다. 수신된 ST가 유효하지 않다고 WAS(212)가 판단한 경우에는, S1007에서 클라이언트(1001)에 에러 통지를 회신한다. 수신된 ST가 유효하다고 WAS(212)가 판단한 경우, 로컬 인증 서비스를 통해서 준비된 인증 컨텍스트와, 웹 서비스를 통해서 준비된 인증 컨텍스트가 서로 일치하는지의 여부를 WAS(212)가 확인한다.
WAS(212)가 상술된 2개의 인증 컨텍스트가 서로 일치하고 있다고 판단한 경우에는, WAS(212)는 WSP(207)로부터 웹 서비스를 호출한다. 한편, WAS(212)가 상술된 2개의 인증 컨텍스트가 서로 일치하고 있지 않다고 판단한 경우에는, S1007에서, WAS(212)는 에러 통지를 클라이언트(1001)에 회신한다.
S1008에서, 클라이언트(1001)는 로그아웃에 대한 HTTP 요청을 WAS(212)에 송신한다. 로그아웃 요청의 수신 시, WAS(212)는 ACM(206)에 대응 인증 컨텍스트를 폐기할 것을 요청한다. 그에 응답하여 ACM(206)은 인증 컨텍스트를 폐기한다.
S1009에서, 인증 컨텍스트가 성공적으로 폐기되면, WAS(212)는 클라이언트(1001)에 "OK"를 회신하고, 인증 컨텍스트의 폐기가 실패하면 "NO"를 회신한다.
[서버(130)의 상세 구성]
도 11은, 도 1에 나타낸 서버(130)의 상세 구성을 도시하는 블록도이다.
도 11을 참조하면, 어플리케이션 서버부(132)의 비즈니스 로직부(1103)는, HTTP 요청에 응답하여 웹 서버부(131)에 의해 호출되어서 처리를 실행한다. 비즈니스 로직부(1103)는, 처리 결과로서, 동적으로 생성한 HTML 문서를 웹 서버부(131)에 회신한다.
어플리케이션 서버부(132)의 스크립트 엔진부(1102)는, 비즈니스 로직부(1103)에 의해 호출되어, 프로그램 관리 영역(1105)(후술됨)으로부터 스크립트를판독한 후에 비즈니스 로직부(1103)에 스크립트(script)를 회신한다. 여기서, "스크립트"라는 용어는, 프로그램 실행 기술(program execution description)을 나타낸다.
비즈니스 로직부(1103)는, 스크립트 엔진부(1102)에 의해 판독된 스크립트를 순차 실행한다. 웹 서비스 리퀘스터부(1101)는, 비즈니스 로직부(1103)에 의해 호출되어, 외부의 웹 서비스 제공자(예를 들어, WSP(207))에 대한 웹 서비스 호출을 실행한다.
인증부(1104)는, 비즈니스 로직부(1103)에 의해 호출되어, 사용자 인증 처리의 관리 및 제어, 사용자 정보의 관리, 및 사용자 설정의 관리를 행한다. 프로그램 관리 영역(1105)은, 여러 가지 스크립트 및 스크립트에 의해 호출되는 프로그램을 관리한다. 프로그램 관리 영역(1105)의 데이터는 플러그인 기구(도시 안됨)를 사용하여 추가되거나 변경가능하다. 이 플러그인 기구에 의해, 서버(130)의 기능의 커스터마이즈가 가능하게 된다. 데이터 저장 영역(1106)은, 문서 등의 데이터를 저장하는 영역이다. 선호 데이터 영역(1107)은, 사용자마다의 설정 정보를 저장하기 위한 영역이다.
비즈니스 로직부(1103)는, 인증부(1104)로부터 취득한 ST를 액세스 키로서 사용하여, 선호 데이터 영역(1107)에 저장된 사용자마다의 설정 정보를 취득한다. 또한, 비즈니스 로직부(1103)는, 취득한 사용자마다의 설정 정보를 사용하여, 사용자마다 커스터마이즈된 화면 및 기능을 제공한다.
상술한 바와 같은 시스템의 구성에서, 화상 처리 장치(110)를 조작하는 사용자는, 서버(130)에 설치된 사용자 인터페이스를 취득하고, 취득한 사용자 인터페이스를 화상 처리 장치(110)의 조작부(112)에 표시시킨다. 그 후, 조작부(112) 상에 표시된 사용자 인터페이스를 사용하여, 사용자는, 화상 처리 장치(110)에 원하는 처리를 실행시키기 위한 지시를 입력한다. 사용자에 의해 입력된 지시는, 화상 처리 장치(110)로부터 서버(130)에 송신된다. 서버(130)는, 사용자에 의해 지시된 처리의 내용을 판단하여, 지시의 내용에 대응하는 처리 요청을 화상 처리 장치(110)에 송신한다. 화상 처리 장치(110)는, 서버(130)로부터 송신된 처리 요청을 수신하고, 수신된 처리 요청을 따라서 동작한다. 이러한 방식으로써 사용자는, 서버(130)에 설치된 인터페이스를 사용하여, 원하는 동작을 화상 처리 장치(110)가 실행하게 할 수 있다. 처리 요청은, 서버(130)가 사용자 인터페이스를 송신할 때 개시된 세션에서 송신될 수 있거나, 또는 상술된 세션과는 별도로 개시되는 다른 세션에서 개시될 수 있다.
처리 요청은, 화상 처리 장치(110)를 특정하기 위한 정보가 포함되어, 원하는 처리를 화상 처리 장치(110)가 실행할 수 있다.
또는, 사용자는, 화상 처리 장치(110)를 다음과 같이 동작시킬 수 있다. 예를 들어, 사용자는, 서버(130)에 설치된 사용자 인터페이스를 사용하여, 서버(130) 이외의 외부 장치에 처리 요청을 송신하고, 외부 장치가 처리 요청의 결과를 화상 처리 장치(110)에 송신하도록 하는 제어를 지시할 수 있다. 외부 장치에 송신된 처리 요청은, 예를 들어, 데이터의 다운로드 요청이다. 이러한 경우에, 외부 장치가 사용자에 의해 지정된 장소로부터 데이터를 다운로드하고, 다운로드가 완료한 후, 다운로드한 데이터를 화상 처리 장치(110)에 송신한다.
[세션 관리 모듈(SM, 204)의 상세]
도 12는, 도 2에 나타낸 세션 관리 모듈(Session-Manager module(SM), 204)이 관리하는 세션(1200)의 데이터 구조를 도시한다. 도 12를 참조하면, 속성("Attribute")열(1201)은, 각 세션에 고정적으로 설정된 속성을 나타낸다. 데이터 유형("DataType")열(1202)은, 각 속성에 대응한 데이터 유형을 나타낸다.
세션 ID 속성(SessionID)(1203)은, 각 세션을 일의적으로 식별하기 위한 식별 번호이다. 세션 유형 속성(SessionType)(1204)은, 인증 서비스들(즉, LAS(210), RAS(211), 및 WAS(212)) 중 어느 것을 통하여 준비된 세션인지를 구분하기 위한 정보를 저장한다. 본 실시예에서, 세션이 LAS(210)를 통하여 준비되었을 경우, 제1 비트에 플래그가 세트된다. 또한, 세션이 RAS(211)를 통하여 준비된 경우에는 제2 비트에 플래그가 세트된다.
또한, 세션이 WAS(212)를 통하여 준비된 경우에는 제3 비트에 플래그가 세트된다. 예를 들어, LAS(210)를 통하여 세션 리소스가 확보되고, 웹 인증 서비스(WAS)를 통하여 세션이 참조되었을 경우, 제1 비트 및 제3 비트 각각에 플래그가 세트된다. 이 플래그는 리소스 해방 시의 정보로서 기능한다. 플래그 값이 0으로 리셋될 때 리소스가 해방된다.
조작 종별 속성(OperateKind)(1205)은, 어떤 종류의 조작을 행하기 위해서 세션 리소스를 확보했는지, 즉, 확보된 세션 리소스에 의해 어떤 종류의 조작이 의도되는지를 구분하기 위한 정보를 저장한다. 조작의 종류는, 예를 들어, 인쇄 조작, 스캔 조작, 팩스 조작, 디바이스 설정 정보 업로드 조작, 디바이스 설정 정보 다운로드 조작, 디바이스 상태 취득 조작 등을 포함한다.
세션 상태 속성(SessionState, 1206)은, 세션 상태를 구분하기 위한 정보를 저장한다. 세션은, "리소스 확보 상태", "처리 대기 상태", 또는 "처리 실행 중 상태"를 취할 수 있다. "리소스 확보 상태"는 인증 컨텍스트를 키로서 사용하여 빈 세션 리소스를 확보했을 때 취해진 상태를 나타낸다. "처리 실행 중 상태"는 외부로부터의 처리 요청을 실행하기 직전의 상태를 나타낸다. "처리 대기 상태"는 처리가 종료한 후의 상태를 나타낸다.
최후 액세스 시간 속성(LastAccessTime, 1207)은, 세션에 대하여 참조, 기입 또는 판독이 마지막으로 행해진 시간을 저장한다.
세션 정보 속성(SessionInfo, 1208)은, 필요에 따라서 자유롭게 프로그램에 의해 이용된다. 즉, 세션 정보 속성(SessionInfo, 1208)은, 프로그램에 의해 동적 속성으로서 생성된다. 세션 ID 속성(1203)과, 사용자가 설정한 동적 속성 키 둘 다를 사용하여 동적 속성값은 프로그램에 따라 자유롭게 호출가능하다.
SM(204)은, 세션(1200)을 사용해서 세션의 우선 순위 관리를 행한다. 세션 상태 속성(1206)에 저장된 세션 상태에 대하여, 우선 순위는 높은 순서대로 (1) "처리 실행 중 상태"> (2) "리소스 확보 상태"> (3) "처리 대기 상태"로 설정된다.
또한, 각 세션 상태에 대하여 조작 종별 속성(1205)에 저장된 조작 종류에 대하여 우선 순위가 판단된다. 더욱 구체적으로는, 우선 순위는 높은 순서대로, (1) 인쇄 조작, 스캔 조작, 팩스 조작> (2) 디바이스 설정 정보 업로드 조작 및 디바이스 설정 정보 다운로드 조작> (3) 디바이스 상태 취득 조작> (4)기타로 설정된다. 또한, 조작 종별로 최후 액세스 시간 속성(1207)에 저장된 최후 액세스 시간이 현재 시간에 더 가까운 조작이 더 높은 우선 순위를 갖는다. 세션 관리 모듈(204)은, LAS(210) 또는 RAS(212)를 통하여 호출되어, 세션 리소스 확보 또는 해방의 관리 및 제어를 행한다.
또한, 세션 관리 모듈(204)은, 세션 정보의 판독 또는 기입에 대한 관리 및 제어를 행한다. 또한, 세션 관리 모듈(204)은, 세션수를 관리하기 위해서 세션 카운터를 구비하고, 화상 처리 장치(110)에서 확보가능한 세션수의 상한을 관리 및 제어한다. 세션 관리 모듈(204)은, 외부의 장치에 대하여 통신을 행할 때에, 세션을 확보해서 통신을 개시한다. 세션 관리 모듈(204)은 RAM(302) 등의 메모리에 세션 정보를 저장함으로써 각 세션을 관리한다. 또한, 세션 관리 모듈(204)에 확보가능한 세션수에는 상한이 설정된다. 그 하나의 이유는, 무제한으로 세션을 확보하면, 세션 정보를 확보하기 위해서 큰 용량을 갖는 메모리가 필요하기 때문이다. 다른 이유는, 무제한으로 세션을 확보하면, 확보된 세션을 사용해서 동시에 많은 외부 장치와 통신할 필요성이 있어, 처리 부하가 너무 많이 증가하기 때문이다.
[제1 실시예에 따른 제1 플로우]
도 13은, 도 1에 나타낸 화상 처리 장치(110)의 조작부(112) 상에 표시되는 로그인 화면의 일례를 나타낸다. 본 예에서는, 사용자가 사용자명, 도메인명, 및 패스워드로 이루어진 신분증명을 입력해서 화상 처리 장치(110)에 로그인한다. 화상 처리 장치(110)에 로그인 한 후에, 사용자는, 화상 처리 장치(110)를 사용하도록 허가된다. 또한, 본 실시예에서는, 인증 서버(140)를 화상 처리 시스템으로서 독립한 정보 처리 장치로 구성하는 경우와 관련하여 설명하지만, 인증 서버(140)의 기능과 유사한 기능을 화상 처리 장치(110), 또는 서버(130)가 가질 수 있다.
도 14는, 제1 실시예에 따른 화상 처리 시스템에서의 데이터 처리 수순의 일례를 나타내는 흐름도이다. 도시된 예는, 인증 서버(140)를 사용해서 사용자 인증 처리가 실행될 때 화상 처리 장치(110)와 인증 서버(140) 사이에서 실행되는 데이터 처리를 나타낸다. 도 14에서, S1501, S1502 및 S1506 내지 S1510은 화상 처리 장치(110)의 CPU(301)가 RAM(302)에 관련 모듈을 로드해서 실행함으로써 실현된다. 또한, S1503 내지 S1505는 인증 서버(140)의 CPU가 RAM에 관련 모듈을 로드해서 실행함으로써 실현된다.
S1501에서, 사용자는, 조작부(112) 상에 표시되는 도 13에 나타낸 사용자 인터페이스를 사용하여, 사용자명, 도메인명, 및 패스워드를 입력한다.
도 13에서, 텍스트 박스(1301)는, 사용자명을 입력하는 텍스트 박스 영역이다. 사용자가 텍스트 박스(1301)를 선택하면, CPU(301)에 의해 실행되는 UI 모듈(201)은, 소프트 키보드를 조작부(112) 상에 표시한다. 사용자는 소프트 키보드를 사용해서 사용자명 문자를 입력할 수 있다.
텍스트 박스(1302)는, 도메인명을 입력하는 텍스트 박스 영역이다. 텍스트 박스(1302)는 풀다운 메뉴의 폼으로 선택가능하다. 풀다운 메뉴에 표시되는 도메인의 수는 화상 처리 장치(110)에 적합한 인증 서버(140)를 포함하는 인증 서버들의 수에 대응한다.
달리 말하자면, 화상 처리 장치(110)는 복수의 인증 서버에 대하여 데이터를 전송할 수 있다. 텍스트 박스(1303)는 패스워드를 입력하는 텍스트 박스 영역이다. 상술된 항목의 정보가 입력된 후, 사용자에 의해 확인 버튼(1304)이 눌려질 때, 사용자명, 도메인명, 및 패스워드를 포함하는 신분증명이 UI 모듈(201)로부터 LAS(210)로 전송된다. 다음에, S1502에서, LAS(210)은 LAN(100)을 통해서 인증 서버(140)에 신분증명을 송신한다.
S1503에서, 인증 서버(140)는, LAS(210)로부터 수신한 신분증명을 사용함으로써 사용자 인증을 행한다. 인증 서버(140)가 사용자 인증에 성공했다고 판단한 경우, 처리는 S1504로 천이한다. 그렇지 않다고 판단한 경우, 처리는 S1501로 복귀한다. 후자의 경우에는, LAS(210)로부터 수신한 신분증명이 올바르지 않으므로, 인증 서버(140)는 LAS(210)에 인증 실패를 나타내는 통지를 회신하고, 다시 인증 화면이 조작부(112)에 표시된다. 그 후 처리는 S1501로 복귀한다.
S1504에서, 인증 서버(140)는 신분증명에 대응한 ST를 발행한다. S1505에서, 인증 서버(140)는, 발행된 ST를 LAS(210)에 회신한다. 화상 처리 장치(110) 측에서는, S1506에서, LAS(210)가 인증 서버(140)로부터 수신된 ST를 키로서 사용하여 다시 인증 서버(140)에 문의를 행하고, 사용자 정보를 취득한다.
S1507에서, ACM(206)은 인증 컨텍스트를 준비하여 RAM(302)에 저장한다. S1508에서, SM(204)은, 세션의 리소스 수를 관리하고 있는 세션 카운터가 상한값에 도달하는지(즉, 미리 정해진 값 이상인지, 또는 상한값을 초과하고 있는지)의 여부를 판단한다. 세션 카운터가 상한값에 도달하지 않은 것으로 SM(204)이 판단한 경우, 처리는 S1509로 천이한다. 세션 카운터가 상한값에 도달한 것으로 SM(204)이 판단한 경우는, 처리를 종료한다. S1508에서, 세션 카운터가 상한값에 도달한 것으로 SM(204)이 판단한 경우, 세션 카운터가 상한값에 도달한 사실을 사용자에게 통지할 수 있다.
S1509에서, SM(204)은 세션 리소스를 확보한다. S1510에서, SM(204)은 S1507에서 준비된 인증 컨텍스트의 세션 ID 참조 속성(914)의 값으로서 확보된 세션(1200)의 세션 ID 속성(1203)의 값을 저장한다. 이에 의해, 인증 컨텍스트를 키로서 사용하여 세션(1200)에 액세스하는 것이 가능해진다. 또한, SM(204)은, 세션(1200)의 세션 상태 속성(1206)에 "리소스 확보 상태"를 저장한다. 또한, SM(204)은, 세션(1200)의 세션 유형 속성(1204)의 제1 비트에 플래그를 세트한다.
[제1 실시예에 따른 제2 플로우]
제1 플로우에 계속되는 제2 플로우를 도 15에 나타내는 흐름도를 참조하면서 설명한다. 상술한 제1 플로우는, 사용자가 화상 처리 장치(110)에 로그인할 때 실행되는 처리를 나타내고, 하기에 설명되는 제2 플로우는, 사용자가 화상 처리 장치(110)의 브라우저 화면(800)을 개시하여 서버(130)와의 통신 처리를 행할 때 실행되는 처리를 나타낸다.
도 15a 및 도 15b는 각각, 본 실시예에 따른 화상 처리 시스템에서의 데이터 처리 수순의 일례를 나타내는 흐름도이다. 나타낸 예는, 인증 서버(140)를 사용해서 사용자 인증 처리를 행하는 경우에, 화상 처리 장치(110), 인증 서버(140), 및 서버(130) 사이에서 실행되는 데이터 처리를 나타낸다. 도 15a 및 도 15b에서, 단계들은, 화상 처리 장치(110), 인증 서버(140), 및 서버(130)의 CPU들에 의해, 그들의 ROM들에 저장된 프로그램들을 실행함으로써 실현된다.
본 처리에서는, 사용자가 조작부(112)를 통하여 사용자 인증을 행하고, 브라우저 화면(800)을 선택할 때, UPM(208)에 의해 관리되는 초기 표시 URL 정보에 기초하여, 웹브라우저 모듈(209)은 서버(130)의 URL에 PUT 방법으로 HTTP 요청을 송신한다. 서버(130)는 사용자 인증을 전제로 동작한다. 그리하여, HTTP 요청에 ST가 포함되어 있지 않으면, 서버(130)는, HTTP 요청을 발행한 클라이언트에 대하여 사용자 인증이 아직 실행되지 않았다고 판단하여, 로그인 화면으로 다시 향한다.
따라서, 서버(130)로부터 로그인 화면에 대응하는 HTTP 응답이 화상 처리 장치(110)의 웹브라우저 모듈(209)에 회신되어, 브라우저 화면(800) 상에는 서버(130)에 로그인하기 위한 로그인 화면이 표시된다.
한편, 서버(130)가 싱글 사인온(Single Sign-On, SSO)에 적합할 때, 화상 처리 장치(110)의 인증 컨텍스트 관리(ACM) 모듈(206)은 이미 인증 서버(140)의 ST를 구비하고 있다. 그리하여, ST를 포함하는 HTTP 요청을 서버(130)에 송신함으로써, 하기 S1601 내지 S1608은 생략가능하다. S1601 내지 S1608을 생략했을 때, 처리는 S1601로부터 S1609로 건너뛴다. 하기에, S1601 이후의 처리를 설명한다.
우선, S1601에서, 조작부(112)를 조작하는 사용자에 의해 화상 처리 장치(110)의 조작부(112) 상에 표시되는 브라우저 로그인 화면(도시 안됨) 상에서 사용자명, 도메인명, 및 패스워드를 포함하는 신분증명의 입력을 접수한다. 그 후, 처리는 S1602로 진행한다.
S1602에서, 화상 처리 장치(110)의 웹브라우저 모듈(209)은 HTTP 모듈(214)을 통해서 신분증명을 PUT 방법으로 HTTP 요청으로서 서버(130)에 송신한다.
S1603에서, 서버(130)의 웹 서버부(131)는 화상 처리 장치(110)로부터의 신분증명을 HTTP 요청으로서 수신한다. S1604에서, 서버(130)의 인증부(1104)는, 웹 서버부(131)로부터 비즈니스 로직부(1103)를 통하여 신분증명을 수신하고, 인증 서버(140)에 신분증명을 송신한다.
S1605에서, 인증 서버(140)는, 미리 사용자마다 등록된 신분증명과, 서버(130)의 인증부(1104)로부터 수신한 신분증명 둘 다를 사용해서 사용자 인증을 실행한다. 인증 서버(140)가 사용자 인증에 성공했다고 판단한 경우, 처리는 S1607로 천이한다. 서버(130)의 인증부(1104)로부터 수신한 신분증명이 옳지 않다고 인증 서버(140)가 판단한 경우는, 처리는 S1606으로 천이한다. 후자의 경우에, 즉, 인증 서버(140)가 서버(130)의 인증부(1104)로부터 수신한 신분증명이 올바르지 않다는 사실을 회신한 경우에는, 서버(130)의 웹 서버부(131)는 S1606에서 다음과 같이 제어를 행한다. 웹 서버부(131)는, 인증 실패인 것을 나타내는 메시지와 인증 화면을 서로 합성한 HTML 문서를 준비하고, HTML 문서를 HTTP 응답으로서 화상 처리 장치(110)에 회신한다.
한편, 인증에 성공했다고 판단하는 경우, 인증 서버(140)는 S1607에서, 관련된 신분증명에 대응하는 ST(보안 토큰)를 발행한다. S1608에서, 인증 서버(140)는 서버(130)의 인증부(1104)에 ST를 회신한다.
또한, 서버(130)의 인증부(1104)는 수신한 ST를 사용하여, 다시 인증 서버(140)에 문의를 행하고, 사용자 정보를 취득한다. 서버(130)의 인증부(1104)는, 둘 다 인증 서버(140)로부터 취득한 ST 및 사용자 정보를 선호 데이터 영역(1107)에 저장한다.
사용자 인증에 성공하면, 서버(130)의 비즈니스 로직부(1103)는 사용자에 대한 ST를 액세스 키로서 사용하여 데이터 관리 영역(133)의 선호 데이터 영역(1107)으로부터 사용자 화면(user screen)을 준비하는 데 필요한 사용자 정보를 꺼낸다. 그 후, S1609에서, 비즈니스 로직부(1103)는 이전에 실패한 처리 태스크가 남아있는지의 여부를 판단한다. S1609에서, 이전에 실패한 처리 태스크가 남아있지 않다고 판단한 경우, 처리는 S1610으로 천이한다. S1609에서, 이전에 실패한 임의의 처리 태스크가 남아있다고 판단한 경우, 프로세스는 S1611로 천이한다. "남아있는 처리 태스크"라는 용어는, 도 16에 나타내는 버튼들(1401 내지 1404) 중 어떤 버튼이 사용자에 의해 눌러졌지만, 기능 실행에 실패했을 때에, S1643(후술됨)에서 저장되어 서버(130)에 남아있는 처리 태스크를 의미한다. S1643에서 저장되는 데이터는, 관련 버튼을 누른 사용자를 나타내는 사용자 정보와, "버튼에 대응한 스크립트"를 포함한다. 그 결과, 관련된 사용자가 다음에 로그인 할 때, 인증 정보로부터 사용자를 특정하고, 관련된 사용자에게만, 남아있는 처리 태스크(들)를 표시하는 것이 가능하다.
즉, 사용자 정보와, "버튼에 대응한 스크립트"를 서버(130)에 저장해서 관리함으로써, 관련 사용자가 다시 로그인했을 때, 버튼에 대응하는 기능을 실행할 수 있다. 예를 들면, 도 16에 나타내는 버튼(1403)에 대응하는 기능, 즉, "폴더 A로 스캔"에 대응하는 기능을 실행시킬 때, 기능을 실행시키는 처리는 사용자가 버튼(1403)을 누른 후, 인증 처리 동안에 인터럽트될 수 있다. 도 16에 나타내는 버튼은 후술한다. 이러한 경우에, 예를 들어, 관련 기능을 실행하도록 설정된 저장소로의 경로에 관한 정보가 유지된다. 따라서, 사용자가 다음번에 로그인했을 때, 패스 설정 처리 등이 더 이상 필요하지 않고, 사용자에게 주어지는 조작 부담을 감소시킬 수 있다.
S1610에서, 비즈니스 로직부(1103)는 사용자 정보에 기초하여 사용자에 대응하는 화면을 구축하고, 그에 의해 실행 화면 정보(즉, 웹 페이지)를 준비한다.
한편, S1611에서는, 비즈니스 로직부(1103)는 2개의 화면, 즉, 남아있는 처리 태스크(들)을 표시하는 화면과 사용자 정보에 기초한 사용자에 대응하는 화면을 합해서 화면을 구축하고, 그에 의해 실행 화면 정보(즉, 웹 페이지)를 준비한다. 그 후 처리는 S1612로 진행한다.
S1612에서, 서버(130)의 웹 서버부(131)는, 비즈니스 로직부(1103)에 의해 준비된 화면을 단계 S1602에서 화상 처리 장치(110)로부터 송신된 HTTP 요청에 대한 HTTP 응답으로서 화상 처리 장치(110)에 회신한다.
도 16은, 도 1에 나타낸 화상 처리 장치(110)의 조작부(112) 상에 표시되는 사용자 인터페이스(UI)의 일례를 나타낸다. 나타낸 예는, 화상 처리 장치(110)에 의해 서버(130)로부터 수신되고 브라우저 화면(800) 상에 표시된 HTTP 응답을 나타낸다. 도 8의 구성 요소들과 동일한 구성 요소들은 동일한 참조 부호로 표시됨에 유의한다. 또한, 하기에서 설명하는 버튼들은, 사용자 인증 후에 서버(130)가 제공하는 서비스에 의해 표시되는 버튼들이다.
도 16을 참조하면, 버튼(1401)은, 화상 처리 장치(110)에서 종이 원고를 스캔하고, 화상 처리 장치(110)에서 컬러 인쇄를 행하기 위해 사용된다.
버튼(1402)은, 화상 처리 장치(110)에서 종이 원고를 스캔하고, 화상 처리 장치(110)에서 흑백 인쇄를 행하기 위해 사용된다. 버튼(1403)은, 화상 처리 장치(110)에서 종이 원고를 스캔하고, 스캔된 화상 데이터를 화상 처리 장치(110)에서 PDF 포맷의 데이터로 변환하기 위해 사용된다. 버튼(1403)을 누름으로써 PDF 포맷으로 변환된 화상 데이터를 또한 화상 처리 장치(110)로부터 서버(130)의 데이터 저장 영역(1106)의 폴더 A (논리 영역)에 저장한다.
버튼(1404)은, 서버(130)의 데이터 저장 영역(1106)에 저장되는 "XXX 문서.PDF"를 화상 처리 장치(110)에서 인쇄하기 위해 사용된다. 화상 처리 장치(110)의 조작부(112)를 조작하는 사용자는 상술된 버튼들을 누를 수 있다. 화상 처리 장치(110)의 조작부(112) 상에서 눌려진 버튼에 대응하는 정보가 서버(130)에 통지될 때, 서버(130)의 비즈니스 로직부(1103)는 눌려진 버튼에 대응하는 로직을 동작시키기 시작한다.
비즈니스 로직부(1103)가 눌려진 버튼에 대응하는 로직을 동작시키기 시작하면, 웹 서비스 리퀘스터부(1101)를 통해서 화상 처리 장치(110)의 기능에 대응하는 웹 서비스가 호출되어서 처리가 실행된다. 각 버튼에 대응하는 비즈니스 로직은 스크립트의 폼으로 표현되기 때문에, 스크립트의 표현에 따라 여러 가지 패턴으로 기능 버튼을 제공할 수 있다. 즉, 서로 링크된 복수의 기능을 포함하는 기능 버튼도 표시될 수 있다. 예를 들어, 버튼들(1401 내지 1404) 중 2개 이상을 조합한 버튼이 표시될 수 있다. 도 16에 나타내어지는 화면은, 호스트 컴퓨터(120)에 포함되는 표시부 상에도 표시할 수 있다. 그러한 경우에, 더욱 구체적으로, 호스트 컴퓨터(120)가 서버(130)에 액세스할 때에, 호스트 컴퓨터(120)는 웹 브라우저를 통해서 사용자에 의해 입력된 사용자 ID, 패스워드 등을 포함하는 정보를 서버(130)에 송신한다. 서버(130)는, 사용자 ID, 패스워드 등을 포함하는 송신된 정보에 기초하여, 인증 서버(140)가 인증을 실행하게 한다. 인증에 성공하면, 서버(130)는, 도 16에 도시된 화면을 호스트 컴퓨터(120)의 웹 브라우저에 송신하여 표시시킨다. 사용자는, 표시된 화면 상의 버튼들(1401 내지 1404)을 사용하여, 화상 처리 장치(110)에 지시를 행할 수 있다. 이러한 방식으로, 호스트 컴퓨터(120)는 화상 처리 장치(110)에 지시를 제공할 수도 있다.
화상 처리 장치(110)의 조작부(112) 상의 상술된 버튼들 중 임의의 것이 사용자에 의해 눌리면, 서버(130)의 비즈니스 로직부(1103)는 눌려진 버튼에 대응하는 로직을 동작시키기 시작한다.
또한, 도 11에 나타내는 서버(130)의 웹 서비스 리퀘스터부(1101)는 화상 처리 장치(110)의 기능에 대응하는 웹 서비스를 호출하여 처리를 실행한다. 각 버튼에 대응하는 비즈니스 로직은 스크립트의 폼으로 표현되기 때문에, 스크립트의 표현에 따라 여러 가지 패턴의 기능 버튼의 제공이 가능하다.
S1613에서는, S1612에서 서버(130)로부터 송신된 실행 화면에 기초하여 조작부(112) 상에 사용자 인터페이스를 표시하기 위해 표시 제어가 실행된다. 화상 처리 장치(110)의 조작부(112) 상에 표시된 사용자 인터페이스 상에서 사용자에 의해, 도 16에 나타낸 버튼들 중 임의의 버튼이 눌릴 때, 처리는 S1614로 진행한다.
S1614에서, 조작부(112) 상의 버튼이 눌리는 이벤트가 도 2에 나타낸 UI 모듈(201)로부터 웹브라우저 모듈(209)에 통지된다. 그 후, 버튼이 눌린 것을 의미하는 PUT 방법의 HTTP 요청이 웹브라우저 모듈(209)로부터 HTTP 모듈(214)을 통해서 서버(130)에 송신된다. 달리 말하자면, 조작부(112) 상에서 사용자에 의해 눌린 버튼에 대응하는 지시의 내용이 버튼 누름의 이벤트로서 서버(130)에 지시 및 송신된다.
S1615에서, 서버(130)의 웹 서버부(131)는, 화상 처리 장치(110)로부터 버튼(1401)이 눌린 것을 의미하는 HTTP 요청을 수신하고, 비즈니스 로직부(1103)에 버튼(1401)에 대응한 로직 처리를 실행하도록 요청한다.
S1616에서, 비즈니스 로직부(1103)는 수신한 HTTP 요청에서 버튼에 대응한 스크립트를 프로그램 관리 영역(1105)으로부터 꺼내고, 스크립트 엔진부(1102)에 스크립트의 처리를 실행하도록 요청한다. S1617에서, 스크립트 엔진부(1102)는 스크립트의 상세로부터 화상 처리 장치(110)에 대한 처리 상세, 설정 정보 등을 판독하고, 그들을 비즈니스 로직부(1103)에 반환한다.
S1618에서, 서버(130)의 비즈니스 로직부(1103)는, 웹 서비스 리퀘스터부(1101)로부터 화상 처리 장치(110)에 대한 웹 서비스를 사용하여 화상 처리 장치(110)의 기능을 이용하기 위한 인증 처리를 실행한다. 서버(130)가 구비하고 있는 ST를 송신할 경우에는, 하기의 S1619로부터 S1623은 생략할 수 있다.
S1619에서, 화상 처리 장치(110)의 WAS(212)는, 서버(130)로부터 수신된 신분증명을 인증 서버(140)에 송신한다. 인증 서버(140)는, WAS(212)로부터 수신한 신분증명에 기초하여 사용자 인증을 행한다. S1620에서, 인증 서버(140)는 사용자 인증이 성공하였는지의 여부를 판단한다. 인증 서버(140)가 사용자 인증이 성공했다고 판단한 경우는, 처리는 S1622로 천이한다.
한편, S1620에서, WAS(212)로부터 수신한 신분증명이 올바르지 않다고 인증 서버(140)가 판단한 경우는, 인증 서버(140)는 인증 실패를 나타내는 통지를 WAS(212)에 회신한다. 그 후, 처리는 S1621로 천이한다.
S1621에서, 화상 처리 장치(110)의 WAS(212)는 또한 인증 실패를 나타내는 통지를 서버(130)에 회신한다. 처리가 S1622로 천이할 때, 인증 서버(140)는 신분증명에 대응한 ST를 발행하고, S1623에서 화상 처리 장치(110)의 WAS(212)에 ST를 회신한다.
S1624에서, 화상 처리 장치(110)의 WAS(212)는 인증 서버(140)로부터 수신한 ST를 키로서 사용하여 다시 인증 서버(140)에 문의를 행하고, 사용자 정보를 취득한다. S1625에서, ACM(206)은 인증 컨텍스트를 준비해 저장한다.
인증에 성공하면, 서버(130)의 비즈니스 로직부(1103)는, 스크립트 엔진부(1102)로부터 회신된 스크립트의 실행 처리를 순차 실행한다.
S1626에서, 비즈니스 로직부(1103)는, 화상 처리 장치(110)에 대한 실행 처리 요청이 있는지의 여부를 판단한다. 실행 처리 요청이 있다고 비즈니스 로직부(1103)가 판단한 경우, 처리는 S1627로 천이한다. 한편, S1626에서, 실행 처리 요청이 없다고 비즈니스 로직부(1103)가 판단한 경우는, 처리를 종료한다.
S1627에서, 서버(130)는 ST와 실행 처리 요청을 둘 다 포함하는 웹 서비스에 대한 HTTP 요청을 화상 처리 장치(110)에 송신한다.
S1628에서, 화상 처리 장치(110)의 WAS(212)는, 서버(130)로부터 ST와 실행 처리 요청 둘 다를 수신한다. 그 후, 수신한 ST가 유효한지의 여부를 WAS(212)가 판단한다. 그리하여 수신한 ST가 유효하지 않다고 WAS(212)가 판단한 경우, 화상 처리 장치(110)는, 서버(130)에 에러 통지를 회신한다.
S1629에서, 화상 처리 장치(110)의 WAS(212)는, 도시하지 않은 단계에서 로컬 인증 서비스를 통하여 준비된 인증 컨텍스트와 S1625에서 웹 서비스를 통하여 준비된 인증 컨텍스트가 서로 일치하는지의 여부를 판단한다. 두 인증 컨텍스트가 서로 일치하는지의 여부에 대한 판단은 비교를 행하는 방법으로써 이루어질 수 있다. 수행된 비교는 ST 속성(905), 사용자명 속성(906), 사용자 ID 속성(907), 그룹명 속성(908), 그룹 ID 속성(909), 도메인명 속성(910), 메일 주소 속성(911) 중 임의의 것에 기초할 수 있다. 또한, 이들 속성의 조합에 기초하여 비교하는 방법에 의해 S1629의 판단을 행할 수 있다.
인증 컨텍스트의 비교의 결과로서, 두 인증 컨텍스트가 서로 일치하지 않는다고 WAS(212)가 판단한 경우, 처리는 S1637로 천이한다. 두 인증 컨텍스트가 서로 일치한다고 WAS(212)가 판단한 경우, 처리는 S1630으로 천이한다. 또한, 로컬 인증 서비스를 통하여 준비된 인증 컨텍스트가 없다고 WAS(212)가 판단하면, 처리는 S1637로 천이한다.
그 후, WAS(212)는, LAS(210)를 통하여 준비된 인증 컨텍스트에 대응하는 세션이 확보되었는지의 여부를 SM(204)에 문의한다. S1630에서, WAS(212)는, SM(204)이 이미 대응하는 세션을 확보하였는지의 여부를 판단한다. SM(204)이 이미 대응하는 세션을 확보했다고 WAS(212)가 판단한 경우, 처리는 S1631로 천이한다. SM(204)이 대응하는 세션을 아직 확보하지 않았다고 WAS(212)가 판단한 경우에, 처리는 S1633으로 천이한다.
S1631에서, SM(204)은, 세션(1200)의 세션 유형 속성(1204)에 WAS(212)가 참조된 것을 나타내기 위해서 제3 비트에 플래그를 세트한다. 또한, SM(204)은, 세션(1200)의 조작 종별 속성(1205)에 어떤 종류의 실행 처리 요청인지를 나타내는 정보를 저장한다. 또한, SM(204)은, 세션(1200)의 세션 상태 속성(1206)에 "처리 실행 중 상태"를 저장한다.
S1632에서, 화상 처리 장치(110)는 처리 요청, 예를 들어, 스캔(판독 처리)이나 인쇄(인쇄 처리)를 실행한다. 처리 요청은, 예를 들어, HDD(304)에 저장된 데이터를 인쇄하기 위한 요청이나, 또는 상술된 예가 아닌 어떤 다른 처리 요청일 수 있다. 본 실시예는, 서버(130)가 사용자 인터페이스를 송신하고, 송신된 사용자 인터페이스를 통해서 사용자가 입력한 지시를, 화상 처리 장치(110)가 서버(130)에 송신하는 경우와 관련해서 설명했다. 또한, 이 경우에는, 송신된 지시를 서버(130)가 직접 수신한다. 그러나, 서버(130) 이외의 소정의 장치가 지시 송신에 의해 송신되는 지시를, 서버(130)에 도달하도록 전달할 수 있다.
S1630에서 이미 확보한 세션이 없다고 WAS(212)가 판단하면, S1633에서, SM(204)은, 세션 리소스의 수를 관리하고 있는 세션 카운터가 상한값에 도달한 것인지의 여부를 판단한다. S1633에서 세션 카운터가 상한값에 도달하지 않은 것으로 SM(204)이 판단한 경우, 처리는 S1635로 천이한다. 세션 카운터가 상한값에 도달한 것으로 SM(204)이 판단한 경우, 처리는 S1634로 천이한다.
S1634에서, SM(204)은, 가장 낮은 우선 순위를 갖는 세션 리소스를 해방한다. S1635에서, SM(204)은 세션 리소스를 확보한다. S1636에서, SM(204)은, LAS(210)에 의해 준비된 인증 컨텍스트의 세션 ID 참조 속성(914)의 값으로서, 확보된 세션(1200)의 세션 ID 속성(1203)의 값을 저장한다.
또한, SM(204)은, WAS(212)에 의해 준비된 인증 컨텍스트의 세션 ID 참조 속성(914)의 값으로서, 확보된 세션(1200)의 세션 ID 속성(1203)의 값을 저장한다. 또한, SM(204)은, 세션(1200)의 세션 상태 속성(1206)에 "리소스 확보 상태"를 저장한다.
또한, SM(204)은, 세션(1200)의 세션 유형 속성(1204)의 제1 비트와 제3 비트 각각에 플래그를 설정한다.
한편, S1629에서, 두 인증 컨텍스트가 서로 일치하지 않는다고 WAS(212)가 판단한 경우는, S1637에서, SM(204)이, 세션 리소스의 수를 관리하고 있는 세션 카운터가 상한값에 도달한 것인지의 여부를 판단한다. 세션 카운터가 상한값에 도달하지 않은 것으로 SM(204)이 판단한 경우, 처리는 S1638로 천이한다. 세션 카운터가 상한값에 도달한 것으로 SM(204)이 판단한 경우, 처리는 S1642로 천이한다.
S1638에서, SM(204)은 세션 리소스를 확보한다. S1639에서, SM(204)은, WAS(212)에 의해 준비된 인증 컨텍스트의 세션 ID 참조 속성(914)의 값으로서, 확보한 세션(1200)의 세션 ID 속성(1203)의 값을 저장한다.
또한, SM(204)은, 세션(1200)의 세션 상태 속성(1206)에 "리소스 확보 상태"를 저장한다. 또한, SM(204)은, 세션(1200)의 세션 유형 속성(1204)의 제3비트에 플래그를 세트한다.
S1640에서, SM(204)은, 세션(1200)의 세션 상태 속성(1206)에 "처리 대기 상태"를 저장한다. S1641에서, SM(204)은, S1632에 대응하는 처리가 정상적으로 완료했는지의 여부를 판단한다. 관련된 처리가 정상적으로 완료했다고 SM(204)이 판단한 경우, 처리는 S1626으로 천이한다. 처리가 정상적으로 완료되지 않았다고 SM(204)이 판단한 경우, 처리는 S1642로 천이한다.
S1642에서, 화상 처리 장치(110)는 서버(130)에 에러 통지를 회신한다. S1643에서, 서버(130)의 비즈니스 로직부(1103)는 선호 데이터 영역(1107)에 실패한 처리를 저장한다. 본 처리는 그에 의해 종료한다.
상술된 바와 같이, 본 실시예는, 서버(130) 등의 외부 장치에 사용자 인터페이스를 설치함으로써, 화상 처리 장치(110)에 사용자 인터페이스를 설치할 경우보다 소프트웨어를 용이하게 설치할 수 있다고 하는 장점을 갖는다. 그 이유는 다음과 같다. 화상 처리 장치(110)에 사용자 인터페이스를 설치할 경우에는, 화상 처리 장치(110) 특유의 프로그래밍 방법에 대해서 사용자가 능숙할 필요가 있다. 반면, 서버(130)에 사용자 인터페이스를 설치할 때에는, 사용자는 웹 어플리케이션용의 소프트웨어를 설치할 수 있으면 충분하기 때문이다.
또한, 상술된 바와 같이, 사용자 인증이 실행될 때 화상 처리 장치(110)의 조작부(112)를 통하여 사용자 인증 정보를 키로서 사용해서 세션의 리소스를 미리 확보한다. 그 결과, 화상 처리 장치(110) 앞에 있는 사용자가 지시한 외부 처리 요청을 확실하게 실행할 수 있다. 실제로, 예를 들어, 사용자가 화상 처리 장치(110)에 로그인한 후, 화상 처리 장치(110)의 조작부(112)를 통해 입력된 지시에 대응하는 처리 요청을 외부의 서버(130)로부터 수신하는 단계에서, 세션을 확보할 수 없는 문제를 방지할 수 있다.
[제2 실시예]
하기에서, 제2 실시예를 도 17의 흐름도를 참조하여 설명한다.
도 17은, 제2 실시예에 따른 화상 처리 시스템에서의 데이터 처리 수순의 일례를 나타내는 흐름도이다. 나타낸 예는, 인증 서버(140)를 사용해서 사용자 인증 처리를 행할 때, 화상 처리 장치(110)와 인증 서버(140) 사이에서 실행되는 데이터 처리를 나타낸다. 도 17에서 S1701, S1702, 및 S1706 내지 S1711은 화상 처리 장치(110)의 CPU(301)가 RAM(302)에 관련 모듈을 로드해서 실행함으로써 실현된다.
또한, S1703 내지 S1705는 인증 서버(140)의 CPU가 RAM에 관련 모듈을 로드해서 실행함으로써 실현된다. 설명의 편의를 위해, 인증 서버(140)에서 실행되는 처리를 화상 처리 장치(110)에서의 동작과 링크하여 설명하기 위해 다양한 단계를 일련의 단계들로서 나타낸다.
도 17의 S1701 내지 S1707은, 도 14의 S1501 내지 S1507에 각각 대응한다. 제1 실시예와 비교하여 차이점에 대해서만 하기에서 설명한다.
사용자 인증에 성공하면, 화상 처리 장치(110)의 조작부(112)는 디폴트 화면으로서 어플리케이션 선택 화면(도시 안됨)을 표시한다. 사용자는 복사, 팩스, 및 브라우저 등의 어플리케이션들 중 원하는 것을 선택하여 이용할 수 있다. S1708에서, 사용자는 브라우저 어플리케이션을 선택한다. S1709 내지 S1711은, 각각 S1508 내지 S1510에 대응한다.
그리하여, 화상 처리 장치(110)의 조작부(112)를 통하여 어플리케이션 선택 시에 사용자 인증 정보를 키로서 사용하여 세션 리소스를 미리 확보한다. 그 결과, 화상 처리 장치(110) 앞에 있는 사용자가 지시한 외부 처리 요청을 확실하게 실행할 수 있다.
[제3 실시예]
본 발명의 제3 실시예를 도 18의 흐름도를 참조하여 하기에서 설명한다.
도 18은, 제3 실시예에 따른 화상 처리 시스템에서 데이터 처리 수순의 일례를 나타내는 흐름도이다. 나타낸 예는, 인증 서버(140)를 사용해서 사용자 인증 처리를 행할 때, 화상 처리 장치(110)와 인증 서버(140) 사이에서 실행되는 데이터 처리를 나타낸다. 도 18에서, S1801, S1802, 및 S1806 내지 S1811은 화상 처리 장치(110)의 CPU(301)가 RAM(302)에 관련 모듈을 로드해서 실행함으로써 실현된다.
또한, S1803 내지 S1805는 인증 서버(140)의 CPU가 RAM에 관련 모듈을 로드해서 실행함으로써 실현된다. 설명의 편의를 위해, 인증 서버(140)에서 실행되는 처리를 화상 처리 장치(110)에서의 동작과 링크하여 설명하기 위해서 다양한 단계를 일련의 단계들로서 나타낸다. 제1 실시예와 비교하여 차이점에 대해서만 하기에서 설명한다.
S1808에서, SM(204)은, 세션 리소스의 수를 관리하는 세션 카운터가 상한값에 도달하는지의 여부를 판단한다. 세션 카운터가 상한값에 도달하지 않은 것으로 SM(204)이 판단한 경우, 처리는 S1810으로 천이한다. 세션 카운터가 상한값에 도달한 것으로 SM(204)이 판단한 경우, 처리는 S1809로 천이한다. S1809에서, SM(204)이 미리 정해진 시간 동안 대기한 후, 처리는 S1808로 복귀한다.
그리하여, 설명한 바와 같이, 화상 처리 장치(110)의 조작부(112)를 통하여 사용자 인증이 완료된 후에 확보된 세션 리소스 수의 상한을 감시하고, 세션 리소스에 사용하지 않는 것이 있으면, 사용자 인증 정보를 키로서 사용하여 미리 세션 리소스를 확보한다. 그 결과, 화상 처리 장치(110) 앞에 있는 사용자가 지시한 외부 처리 요청을 확실하게 행할 수 있다.
[제4 실시예]
도 19의 흐름도를 참조하여 제4 실시예를 하기에서 설명한다.
도 19는, 제4 실시예에 따른 화상 처리 시스템에서 데이터 처리 수순의 일례를 나타내는 흐름도이다. 나타낸 예는, 인증 서버(140)를 사용해서 사용자 인증 처리를 행할 때, 화상 처리 장치(110)와 인증 서버(140) 사이에서 실행되는 데이터 처리를 나타낸다. 도 19에서, S1901, S1902, 및 S1906 내지 S1912는 화상 처리 장치(110)의 CPU(301)가 RAM(302)에 관련 모듈을 로드해서 실행함으로써 실현된다. 제1 실시예와 비교하여 차이점에 대해서만 하기에서 설명한다.
S1909에서, SM(204)은 복수의 세션(1200)을 위한 리소스를 확보한다. S1910에서, SM(204)은, S1907에서 준비된 인증 컨텍스트의 세션 ID 참조 속성(914)의 값으로서, 확보한 복수의 세션(1200) 각각에 대한 세션 ID 속성(1203)의 값을 저장한다.
그 결과, 인증 컨텍스트를 키로서 사용하여 복수의 세션(1200)이 각각 액세스될 수 있다. 또한, SM(204)은, 세션(1200)의 세션 상태 속성(1206)에 "리소스 확보 상태"를 저장한다. 또한, SM(204)은, 세션(1200)의 세션 유형 속성(1204)의 제1비트에 플래그를 세트한다.
사용자 인증에 성공하면 화상 처리 장치(110)의 조작부(112)는 디폴트 화면으로서 어플리케이션 선택 화면(도시 안됨)을 표시한다. 사용자는 복사, 팩스, 및 브라우저 등의 어플리케이션들 중 원하는 것을 선택하여 이용할 수 있다.
S1911에서, 사용자는 브라우저 어플리케이션을 선택한다. S1912에서, SM(204)은 무용한 세션 리소스를 해방하는데, 그 이유는 일단 브라우저 어플리케이션이 선택되면 시스템 및/또는 처리에 그러한 세션 리소스가 더 이상 필요하지 않기 때문이다. 확보 유닛이 세션을 확보한 후에, 사용자 인터페이스를 통하여 선택된 처리에 따라 무용한 리소스를 해방 유닛이 해방할 수 있다. 그 후, 본 처리를 종료한다.
그리하여, 화상 처리 장치(110)의 조작부(112)를 통하여 사용자 인증이 행해질 때에, 사용자 인증 정보를 키로서 사용하여 복수의 세션 리소스를 미리 확보한다. 필요한 세션 리소스가 결정될 때(즉, 어플리케이션이 선택될 때)에, 필요한 세션 리소스 이외의 세션 리소스를 해방한다. 그 결과, 화상 처리 장치(110) 앞에 있는 사용자가 지시한 외부 처리 요청을 확실하게 실행할 수 있다.
<다른 실시예>
본 발명의 양태들은, 전술된 실시예(들)의 기능들을 수행하기 위해 메모리 디바이스에 기록된 프로그램을 판독하여 실행하는 시스템 또는 장치의 컴퓨터 (또는 CPU나 MPU와 같은 디바이스)에 의해서 실현될 수 있다. 본 발명의 양태들은 또한, 예를 들면, 전술된 실시예(들)의 기능들을 실행하기 위해 메모리 디바이스에 기록된 프로그램을 판독하여 실행함으로써 시스템 또는 장치의 컴퓨터에 의해 단계들이 수행되는 방법에 의해서 실현될 수 있다. 이러한 목적을 위하여, 예를 들어 네트워크를 통하여 또는 메모리 디바이스로서 기능하는 여러 가지 유형의 기록 매체(예를 들어, 컴퓨터 판독가능 매체)로부터 프로그램이 컴퓨터에 제공된다.
본 발명이 예시적인 실시예를 참조하여 기술되었지만, 본 발명은 기술된 예시적인 실시예로 한정되지 않는다는 것이 이해되어야 한다. 이하의 청구항들의 범위는 그러한 변경들과, 등가의 구조 및 기능을 모두 포괄하도록 최광의의 해석에 따라야 한다.
100: 근거리 통신망(LAN)
110: 화상 처리 장치
112: 조작부
113: 스캐너
114: 프린터
120: 호스트 컴퓨터
130: 서버
140: 인증 서버

Claims (9)

  1. 네트워크를 통하여 외부 장치에 접속되도록 구성된 데이터 처리 장치이며,
    상기 외부 장치에 구비된 사용자 인터페이스를 취득하여 표시하도록 구성된 표시 유닛;
    상기 표시 유닛에 의해 표시된 상기 사용자 인터페이스를 통하여, 상기 데이터 처리 장치를 조작하는 사용자로부터 지시를 수신하도록 구성된 수신 유닛;
    상기 수신 유닛에 의해 수신된 지시를 상기 외부 장치에 송신하도록 구성된 지시 송신 유닛;
    상기 데이터 처리 장치를 조작하는 사용자를 인증하기 위한 처리가 성공하였을 때 상기 외부 장치와 통신하기 위한 세션(session)을 확보하도록 구성된 확보 유닛; 및
    상기 지시 송신 유닛에 의해 상기 외부 장치에 송신된 지시에 대응하는 처리 요청을 상기 외부 장치로부터 수신하기 위한 제어를, 상기 확보 유닛에 의해 확보된 상기 세션을 사용하여 실행하도록 구성된 제어 유닛을 포함하는, 데이터 처리 장치.
  2. 제1항에 있어서,
    상기 사용자를 인증하기 위한 처리가 실행되어 상기 사용자가 상기 데이터 처리 장치를 사용할 수 있게 하는, 데이터 처리 장치.
  3. 제1항에 있어서,
    상기 사용자를 인증하기 위한 처리는, 상기 데이터 처리 장치에 상기 네트워크를 통하여 접속하는 외부 인증 서버에 의해 실행되는, 데이터 처리 장치.
  4. 제1항에 있어서,
    원고의 화상을 판독하도록 구성된 판독 유닛을 더 포함하고,
    상기 처리 요청은 상기 판독 유닛이 판독 처리를 시작(engage in)하도록 하기 위한 요청을 포함하는, 데이터 처리 장치.
  5. 제1항에 있어서,
    상기 사용자의 인증과 어플리케이션의 선택 중 어느 하나가 실행될 때 상기 확보 유닛은 상기 세션을 위한 리소스를 확보하는, 데이터 처리 장치.
  6. 제1항에 있어서,
    상기 확보 유닛이 상기 세션을 확보한 후에 상기 사용자 인터페이스를 통하여 선택된 처리에 따라 무용한 리소스를 해방하도록 구성된 해방 유닛을 더 포함하는, 데이터 처리 장치.
  7. 제6항에 있어서,
    상기 확보 유닛에 의해 확보된 세션의 수가 미리 정해진 값과 적어도 동일할 때, 상기 해방 유닛은 더 낮은 우선 순위를 갖는 세션을 해방하는, 데이터 처리 장치.
  8. 네트워크를 통하여 외부 장치에 접속되도록 구성된 데이터 처리 장치를 제어하는 제어 방법이며,
    상기 외부 장치에 구비된 사용자 인터페이스를 취득하여 표시하는 단계;
    표시된 상기 사용자 인터페이스를 통하여, 상기 데이터 처리 장치를 조작하는 사용자로부터 지시를 수신하는 단계;
    수신된 지시를 상기 외부 장치에 송신하는 단계;
    상기 데이터 처리 장치를 조작하는 사용자를 인증하기 위한 처리가 성공하였을 때, 상기 외부 장치와 통신하기 위한 세션을 확보하는 단계; 및
    상기 외부 장치에 송신된 지시에 대응하는 처리 요청을 상기 외부 장치로부터 수신하기 위한 제어를, 확보된 상기 세션을 사용하여 실행하는 단계를 포함하는, 데이터 처리 장치의 제어 방법.
  9. 네트워크를 통하여 외부 장치에 접속되도록 구성된 데이터 처리 장치를 제어하기 위한 컴퓨터로 실행가능한 프로그램이 저장된 컴퓨터 판독가능 저장 매체이며, 상기 컴퓨터 프로그램은,
    상기 외부 장치에 구비된 사용자 인터페이스를 취득하여 표시하기 위한 코드;
    표시된 상기 사용자 인터페이스를 통하여, 상기 데이터 처리 장치를 조작하는 사용자로부터 지시를 수신하기 위한 코드;
    수신된 지시를 상기 외부 장치에 송신하기 위한 코드;
    상기 데이터 처리 장치를 조작하는 사용자를 인증하기 위한 처리가 성공하였을 때 상기 외부 장치와 통신하기 위한 세션을 확보하기 위한 코드; 및
    상기 외부 장치에 송신된 지시에 대응하는 처리 요청을 상기 외부 장치로부터 수신하기 위한 제어를, 확보된 상기 세션을 사용하여 실행하기 위한 코드를 포함하는, 컴퓨터 판독가능 저장 매체.
KR1020100056542A 2009-07-01 2010-06-15 데이터 처리 장치, 데이터 처리 장치의 제어 방법 및 기록 매체 KR20110002417A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JPJP-P-2009-156890 2009-07-01
JP2009156890A JP5460145B2 (ja) 2009-07-01 2009-07-01 データ処理装置、データ処理装置の制御方法、及びプログラム

Publications (1)

Publication Number Publication Date
KR20110002417A true KR20110002417A (ko) 2011-01-07

Family

ID=43412498

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100056542A KR20110002417A (ko) 2009-07-01 2010-06-15 데이터 처리 장치, 데이터 처리 장치의 제어 방법 및 기록 매체

Country Status (4)

Country Link
US (1) US20110001999A1 (ko)
JP (1) JP5460145B2 (ko)
KR (1) KR20110002417A (ko)
CN (1) CN101945193B (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5412364B2 (ja) * 2009-07-16 2014-02-12 株式会社日立製作所 情報処理方法および情報処理システム
JP5730082B2 (ja) * 2011-03-08 2015-06-03 キヤノン株式会社 プリントサーバ、印刷システム、制御方法、およびプログラム。
JP5839846B2 (ja) * 2011-06-08 2016-01-06 キヤノン株式会社 画像処理装置、その制御方法、及びプログラム
US20130061298A1 (en) * 2011-09-01 2013-03-07 International Business Machines Corporation Authenticating session passwords
JP5556839B2 (ja) * 2012-03-28 2014-07-23 コニカミノルタ株式会社 認証システム、電子機器及び認証方法
JP6011167B2 (ja) 2012-09-03 2016-10-19 ブラザー工業株式会社 通信中継プログラム、及び、通信中継装置
JP6167502B2 (ja) * 2012-10-31 2017-07-26 ブラザー工業株式会社 通信中継プログラム、通信中継装置、及び、画像処理装置
JP5974942B2 (ja) 2013-03-15 2016-08-23 ブラザー工業株式会社 サーバ、及びネットワークシステム
JP5971160B2 (ja) * 2013-03-15 2016-08-17 ブラザー工業株式会社 サーバ、及びネットワークシステム
WO2015012867A1 (en) 2013-07-26 2015-01-29 Hewlett Packard Development Company, L.P. Data view based on context
US9001370B1 (en) * 2013-11-15 2015-04-07 Ricoh Company, Ltd. Card authentication for OAuth supported cloud services on a multi-function device
JP2015213244A (ja) * 2014-05-02 2015-11-26 キヤノン株式会社 通信装置及びその制御方法、並びにプログラム
WO2018216999A1 (ko) 2017-05-24 2018-11-29 한국전자통신연구원 Miso 동작을 위한 게이트웨이 시그널링 방법 및 이를 위한 장치
JP6751266B2 (ja) * 2017-06-30 2020-09-02 京セラドキュメントソリューションズ株式会社 リモート通信制御システム、セッション管理システムおよびセッション管理プログラム
CN108287917B (zh) * 2018-02-13 2020-03-10 Oppo广东移动通信有限公司 文件打开方法、装置、存储介质及电子设备
JP7317561B2 (ja) * 2019-04-19 2023-07-31 キヤノン株式会社 タッチパネルを用いた文字入力のための画像処理装置、その制御方法及びプログラム
JP2023076287A (ja) * 2021-11-22 2023-06-01 キヤノン株式会社 情報処理装置とその制御方法、及びプログラム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6421558A (en) * 1987-07-15 1989-01-24 Fujitsu Ltd Session opening system based upon reservation system
JP3730563B2 (ja) * 2001-11-02 2006-01-05 キヤノンソフトウェア株式会社 セッション管理装置およびセッション管理方法およびプログラムおよび記録媒体
US20030217135A1 (en) * 2002-05-17 2003-11-20 Masayuki Chatani Dynamic player management
US7529822B2 (en) * 2002-05-31 2009-05-05 Symantec Operating Corporation Business continuation policy for server consolidation environment
JP2004187094A (ja) * 2002-12-04 2004-07-02 Mitsubishi Electric Corp 通信確立装置
JP4128443B2 (ja) * 2002-12-27 2008-07-30 株式会社野村総合研究所 ウェブブラウザ利用処理システムにおけるデータ領域管理方法
AU2004200809B2 (en) * 2003-03-07 2006-05-11 Samsung Electronics Co., Ltd. Method and system for providing data services to mobile communication terminals and mobile communication terminal therefor
JP4297034B2 (ja) * 2004-11-05 2009-07-15 ブラザー工業株式会社 サービス提供システムおよびサーバ
JP2006146292A (ja) * 2004-11-16 2006-06-08 Shimadzu System Solutions Co Ltd 分散型制御システム及び同システム用端末プログラム
US7533155B2 (en) * 2005-03-30 2009-05-12 Ricoh Company, Ltd. System and method for managing documents with multiple network applications
CN100409170C (zh) * 2005-03-31 2008-08-06 佳能株式会社 打印控制装置以及控制方法
KR100700690B1 (ko) * 2005-05-31 2007-03-27 엔에이치엔(주) 중복 로그인 검출 방법 및 시스템
CN100396000C (zh) * 2005-08-12 2008-06-18 华为技术有限公司 客户端向服务器申请服务的方法及其系统
JP4626464B2 (ja) * 2005-09-22 2011-02-09 村田機械株式会社 処理装置
US8280979B2 (en) * 2006-02-27 2012-10-02 Microsoft Corporation Persistent public machine setting
JP2007249851A (ja) * 2006-03-17 2007-09-27 Sony Corp 情報処理装置および方法、並びにプログラム
AU2007249647A1 (en) * 2006-03-17 2007-11-22 Camiant, Inc. Distributed policy services for mobile and nomadic networking
JP4903018B2 (ja) * 2006-06-22 2012-03-21 株式会社リコー 画像形成装置、サービス提供方法、サービス提供プログラム
JP4848939B2 (ja) * 2006-11-27 2011-12-28 沖電気工業株式会社 端末切替システム、端末切替方法及び端末切替プログラム
JP4978262B2 (ja) * 2007-03-23 2012-07-18 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法及びアプリケーションプログラム
JP5278792B2 (ja) * 2008-04-18 2013-09-04 日本電気株式会社 ネットワーク接続装置、接続設定方法、及び接続設定用プログラム
US8331337B2 (en) * 2008-04-18 2012-12-11 Nec Corporation Session management apparatus, communication system, and session clear-out method

Also Published As

Publication number Publication date
CN101945193A (zh) 2011-01-12
JP5460145B2 (ja) 2014-04-02
CN101945193B (zh) 2014-05-07
US20110001999A1 (en) 2011-01-06
JP2011013892A (ja) 2011-01-20

Similar Documents

Publication Publication Date Title
KR20110002417A (ko) 데이터 처리 장치, 데이터 처리 장치의 제어 방법 및 기록 매체
JP4070693B2 (ja) 画像形成装置およびスキャンデータ処理方法
JP4429998B2 (ja) 画像形成装置、遠隔演算装置、これら装置間の情報通信の方法、画像形成システム、通信プログラムおよび記録媒体
JP5145828B2 (ja) ネットワークシステム、画像形成装置、プログラムおよび記録媒体
JP5340124B2 (ja) 画像処理装置及びその制御方法、並びにプログラム
JP5289041B2 (ja) データ処理装置、データ処理方法、及びコンピュータプログラム
US10983740B2 (en) Image forming apparatus, method, storage medium storing program, and system
US7761908B2 (en) Network apparatus
US20110214133A1 (en) Event Notification Subscription
US9100513B2 (en) Image processing apparatus and method of controlling the image processing apparatus
JP2011191888A (ja) 画像形成装置、制御方法、及びプログラム
US9710676B2 (en) Data processing apparatus, information processing apparatus, and storage medium
US8115945B2 (en) Methods and systems for imaging device job configuration management
JP4615498B2 (ja) 画像処理装置、画像処理装置の制御システム、画像処理装置の制御方法、プログラム、およびコンピュータ読み取り可能な記録媒体
JP4536696B2 (ja) 通知予約アクセス制御方法、画像処理装置、および、通知予約アクセス制御システム
JP2007042098A (ja) コンテンツ表示方法、コンテンツ伝送方法、画像処理装置、遠隔演算装置
US9013735B2 (en) Image forming system and image forming method providing controls of settings of image position and restriction
JP7250596B2 (ja) 画像処理装置、方法およびプログラム
JP4837475B2 (ja) 認証情報データの入力回数の削減方法、システムおよびサーバ装置
JP4860414B2 (ja) 画像処理装置によるイベント発生通知を管理および予約する、画像処理装置、遠隔演算装置、画像処理装置イベント通知予約方法、および、画像処理装置イベント通知予約システム
JP4531729B2 (ja) 課金データ保持システムおよび課金データ保持方法
JP2020005204A (ja) 画像処理装置とその制御方法、及びプログラム
JP4499074B2 (ja) 動的文書作成システム
JP4975855B2 (ja) ファイル構造データ提供システム、および、ファイル構造データを提供する方法
JP2007043703A (ja) ファイル構造データへのアクセス方法、ファイル構造データ提供システム、画像処理装置およびファイル構造変換装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application