信息处理装置以及控制方法与流程

文档序号:11279548阅读:212来源:国知局
信息处理装置以及控制方法与流程

本公开涉及一种能够转变到省电模式的信息处理装置、控制方法以及存储介质。



背景技术:

作为特定装置的省电模式,装置进入省电状态,在省电状态下,停止对诸如扫描器和打印机等的至少一些硬件资源的电力供给,并且在维持存储器内容的至少一部分的同时停止中央处理单元(cpu)。在下文中,将该省电状态称为深睡眠模式,并且将装置到深睡眠模式的转变称为进入深睡眠。

当在长时间段期间不操作装置时,装置进入深睡眠。装置还可能在用户按下电源开关时进入深睡眠。装置进入深睡眠并且从深睡眠返回,以实现用于比正常关机更快地进行关机操作的高速关机,并且实现用于比正常启动更快地进行启动操作的高速启动。

作为与高速关机有关的技术,日本特开2014-106835号公报讨论了一种如下的技术,其中,当用户按下电源开关时,装置在确认网络通信条件之后进行正常关机或高速关机。



技术实现要素:

根据本公开的一方面,一种信息处理装置,其具有至少两种服务,所述至少两种服务包括:登录服务,其被构造为基于接收到的认证信息进行认证处理,并且根据认证信息的有效性发布认证识别信息;以及通信服务,其被构造为在从外部装置接收到第一请求时,发布通信识别信息并且将通信识别信息连同响应一起发送到所述外部装置,以及,在接收到包括通信识别信息的请求时,对请求中包括的认证识别信息进行确认并且向所述外部装置发送响应,所述信息处理装置包括:转变单元,其被构造为,在接收到关机指令时,进行到省电状态的状态转变,在所述省电状态下,在不删除所述信息处理装置的存储器中存储的信息的情况下停止对所述信息处理装置的硬件资源的电力供给,以及存储单元,其被构造为,当所述转变单元进行到省电状态的状态转变时,将所发布的通信识别信息作为无效调度通信识别信息存储在存储器中,其中,在从所述省电状态返回之后,在从所述外部装置接收到的请求中包括的通信识别信息与由所述存储单元存储的无效调度通信识别信息一致的情况下,所述通信服务向所述登录服务发送用于使从所述外部装置接收到的请求中包括的认证识别信息无效的请求,并且向所述外部装置发送用于请求所述认证信息的响应。

通过以下参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。

附图说明

图1是例示根据本公开的示例性实施例的系统和软件构造的框图。

图2例示了根据第一示例性实施例的认证会话存储单元、超文本传输协议(http)会话存储单元和无效调度http会话存储单元。

图3是例示根据第一示例性实施例的登录处理的序列图。

图4是例示根据第一示例性实施例的高速关机的序列图。

图5是例示根据第一示例性实施例的当从web浏览器发送请求时进行的处理的序列图。

图6是例示根据第一示例性实施例的登出请求的序列图。

图7a和图7b例示了根据第一示例性实施例的会话存储单元的状态转变。

图8是例示根据第二示例性实施例的软件构造的框图。

图9(由图9a和图9b组成)是例示由servlet(服务器端小程序)进行的http会话无效处理的序列图。

图10是例示根据第二示例性实施例的由servlet进行的http会话无效处理和高速关机通知处理的流程图。

图11是例示根据第三示例性实施例的高速关机处理和http请求接收处理的流程图。

图12是例示根据第一示例性实施例的登录处理的流程图。

图13是例示根据第一示例性实施例的在高速关机时的http服务器的处理的流程图。

图14a和图14b是例示根据第一示例性实施例的当从web浏览器发送请求时进行的处理的流程图。

具体实施方式

当用户操作电源开关时,进行高速关机或高速启动。然而,用户可能没有意识到装置基于通过深睡眠的高速关机和通过从深睡眠返回的启动来实现高速操作。

假设在深睡眠期间,装置的cpu暂时停止,并且存储器内容的至少一部分被保留而不被擦除。因此,在装置进入深睡眠之前和在装置从深睡眠返回之后,在装置上运行的程序的状态是相同的。例如,当装置从深睡眠返回时,将保留表示针对装置中提供的通信服务的用户登录状态的认证识别信息。因此,该装置使得用户能够保持登录通信服务,而不在高速启动之后进行重新登录处理。因为指定关机的用户认为认证会话已被重置,所以用户可能从安全性的角度不信任该装置。

本公开提供了一种用于在装置从高速关机返回时,使由装置在进入高速关机之前发布的认证识别信息无效的机制。该机制维持具有用于保持存储器内容的至少一部分的省电模式的装置的安全性。

本公开使得能够维持具有用于保持存储器内容的至少一部分的省电模式的装置的安全性。

图1是例示根据第一示例性实施例的系统和软件构造的框图。该系统包括用作信息处理装置的多功能外围设备(mfp)100以及也用作经由网络110连接的信息处理装置的个人计算机(pc)108。mfp100包括用于执行实现本公开的软件的cpu101、用于存储实现本公开的软件的只读存储器(rom)102、用于执行实现本示例性实施例的软件的随机存取存储器(ram)103、用于借助于实现本示例性实施例的软件来存储数据的外部存储器104、用户进行操作的用户界面(ui)105、以及网络接口(i/f)控制单元107。ui105被实现为液晶触摸面板或者液晶面板和硬件键的组合。上述的模块经由总线106彼此连接以交换数据。mfp100经由网络i/f控制单元107连接到网络110。

电源开关121被用户用来将电源接通和断开。当用户按下电源开关121时,mfp100进行启动、关机、高速启动或高速关机。mfp100配设有诸如打印引擎和扫描器引擎(未例示)这样的硬件资源。当mfp100进行高速关机时,停止对硬件资源的电力供给。打印引擎是用于将图像数据打印到记录片材上的引擎,并且扫描器引擎是用于电子地读取记录片材并将读取的数据转换成图像的引擎。

pc108连接到网络110,并且包括cpu、rom、ram、外部存储设备和网络i/f控制单元(未例示)。web浏览器109在pc108上进行操作。使用web浏览器109,用户访问超文本传输协议(http)服务器112(下面描述),接收webui,并且经由webui进行对mfp100的设置以及打印。

操作系统(os)111、http服务器112、登录服务115、servlet117以及电源管理模块118是mfp100的rom102中存储的软件。当mfp100启动时,软件被加载到ram103中,然后被cpu101执行。(下面描述)这些软件执行序列和流程图。

os111是用于向在os111上运行的应用提供硬件功能的基本软件。http服务器112是用于进行基于http的通信的通信服务,并且具有通过网络110从web浏览器109接收http请求的服务器功能。第一示例性实施例采用http服务器112,用于进行基于http的通信作为通信服务。http服务器112分析所接收的http请求,并且请求登录服务115进行认证处理。http服务器112还分析所接收的http请求,并且请求servlet117进行处理。http服务器112还将登录服务115和servlet117的处理结果作为http响应发送到web浏览器109。

http服务器112包括用于进行http通信的会话管理的http会话存储单元113,以及用于在进行高速关机之前存储所发布的http会话的无效调度http会话存储单元114。虽然在第一示例性实施例中,http会话存储单元113和无效调度http会话存储单元114被描述为不同的存储单元,但是http会话存储单元113可以包括用于会话管理的无效调度标志。

登录服务115是用于进行用户认证的模块,并且检查输入的认证信息是否是与预登记的认证信息一致的有效认证信息。登录服务115生成用于使得用户能够通过使用web浏览器109来登录的登录页面,并且确定从web浏览器109发送的认证信息是否是有效认证信息。当认证信息是有效认证信息并且用户能够登录时,登录服务115发布认证会话cookie和认证会话。根据来自http服务器112的请求,登录服务115确定从web浏览器109发送的http请求中包括的认证会话是否有效。登录服务115包括存储当前正在登录的用户的认证信息的认证会话存储单元116。

servlet117是应用服务之一,并且根据来自http服务器112的请求进行用于生成作为webui画面信息的html的处理以及经由webui指定的处理,并且将处理结果发送到http服务器112。

当用户按下电源开关121时,电源管理模块118进行高速关机处理、高速启动处理、关机处理或启动处理。当mfp100正在运行时,电源管理模块118确定当用户按下电源开关121时是进行高速关机还是进行关机。例如,电源管理模块118确定用户是否做出了需要重新启动的设置(例如ip地址设置)。如果用户做出了这种需要重新启动的设置,则电源管理模块118进行正常关机处理。如果不需要重新启动,则电源管理模块118进行高速关机处理。

当用户在对mfp100进行了高速关机的状态下按下电源开关121时,电源管理模块118进行高速启动处理。当用户在对mfp100进行了正常关机的状态下按下电源开关121时,电源管理模块118进行启动处理。此外,当通过用户操作进行高速关机时,电源管理模块118向http服务器112通知高速关机的执行。

图2例示了在认证会话存储单元116、http会话存储单元113以及无效调度http会话存储单元114中存储的数据。cookie是用来在两个不同的通信装置之间交换任意信息时、指定由特定通信装置接收到的任意信息与哪个会话有关的识别信息。将在下面详细描述会话的数据内容。会话是指在通信装置之间建立的许多连接当中的特定连接中的任意信息交换结束之前使用的信息。在本示例性实施例中,使用http会话cookie作为用于识别web浏览器109和http服务器112之间的会话的通信识别信息。

首先,从http服务器112向web浏览器109发送http会话cookie。web浏览器109存储用于各个连接目标http服务器的http会话cookie。当web浏览器109向http服务器112发送请求时,web浏览器109将从http服务器112接收到的http会话cookie发送到http服务器112。http服务器112通过使用http响应头“set-cookie”,将http会话cookie发送到web浏览器109。set-cookie头包括作为http会话cookie的标识符的cookie名,以及如同“set-cookie:loginsession=aaaaa”的cookie值。在该示例中,cookie名为“loginsession”,并且cookie值为“aaaaa”。

除了http会话cookie以外,登录服务115还在http响应头中设置特定类型的cookie,例如作为认证识别信息的认证会话cookie201。类似于通信识别信息,认证识别信息是用于两个不同的装置之间的任意信息交换的识别信息。此外,servlet117能够在http响应头中设置任意cookie。更具体地,能够在一个http响应中包括0个或更多个set-cookie头。当web浏览器109从http服务器112接收到1个或更多个cookie时,web浏览器109存储cookie名和cookie值的组。web浏览器109通过使用所存储的http请求头“cookie”进行“set-cookieheader”,并且将所设置的cookie发送到http服务器112。

cookie头包括至少一组cookie名和cookie值,cookie名是cookie的标识符,cookie值如同“cookie:httpsession=11111;loginsession=aaaaa”。在该示例中,web浏览器109发送具有cookie名“httpsession”和cookie值“11111”的cookie以及具有cookie名“loginsession”和cookie值“aaaaa”的cookie。换言之,将通信识别信息和认证识别信息发送到http服务器112。当web浏览器109向http服务器112发送多个cookie时,由分号“;”分隔cookie名和cookie值的各个组。

认证会话存储单元116存储认证会话,认证会话各自包括认证会话cookie201和认证会话202的组。认证会话202包括有效期限203、有效标志210和权限信息。认证会话cookie201是用于在认证会话存储单元116中搜索认证会话的标识符。使用http请求中包括的认证会话cookie作为关键字,登录服务115搜索与http请求相对应的认证会话。有效期限203是认证会话202的有效期限。当有效期限期满时,登录服务115从认证会话存储单元116中删除认证会话202。权限信息是指已认证用户的权限信息,并且被用来限制servlet117的使用。例如,当没有管理员权限的用户使用servlet117来作为管理员进行操作时,使用权限信息来返回权限错误。

http会话存储单元113存储http会话,该http会话各自包括http会话cookie204和http会话205的组。http会话205包括有效期限206。http会话cookie204是用于在http会话存储单元113中搜索http会话的标识符。使用http请求中包括的http会话cookie作为关键字,http服务器112搜索与http请求相对应的http会话。有效期限206是http会话205的有效期限。当有效期限期满时,http服务112从http会话存储单元113中删除http会话205。

无效调度http会话存储单元114存储http会话,该http会话各自包括http会话cookie207和http会话208的组。http会话208包括有效期限209。http会话cookie207是用于在无效调度http会话存储单元114中搜索http会话的标识符。使用http请求中包括的http会话cookie作为关键字,http服务器112搜索与http请求相对应的http会话。有效期限209是http会话208的有效期限。当有效期限期满时,http服务器112从无效调度http会话存储单元114中删除http会话208。

图3是例示在登录操作期间的处理的序列图。在步骤s3001中,http服务器112从web浏览器109接收登录页面请求3101,并且分析http请求格式的登录页面请求3101。由于web浏览器109和http服务器112第一次建立连接,所以登录页面请求3101用作从web浏览器109发送的第一请求。第一请求不一定需要是登录页面请求。

在步骤s3002中,如果http请求是针对登录服务115,则http服务器112向登录服务115发布用于生成登录页面的登录页面请求。在步骤s3003中,在从http服务器112接收到登录页面请求时,登录服务115生成登录页面。在步骤s3004中,登录服务115将所生成的登录页面返回到http服务器112。在步骤s3005中,当http服务器112与web浏览器109第一次建立连接时,http服务器112发布http会话。在步骤s3006中,http服务器112将http会话添加到http会话存储单元113。每次http会话无效并且与web浏览器109建立会话时,http服务器112发布新的http会话,并且进行登录请求。因此,http服务器112将http会话与认证会话间接地相关联。

在步骤s3007中,http服务器112将所发布的http会话的http会话cookie的值设置在http响应3102的set-cookie头中。虽然根据第一示例性实施例,使用cookie作为用于http会话和认证会话信息交换的识别信息,但是可以依据http服务器112和登录服务115的实现,使用请求统一资源定位符(url)的参数或专用http头。在步骤s3008中,http服务器112将由登录服务115生成的登录页面作为http响应3102的响应主体发送到web浏览器109。

web浏览器109接收并显示作为画面信息的登录页面。在步骤s3009中,当用户在所显示的登录页面中输入登录id和密码作为认证信息,并且然后进行登录操作时,web浏览器109发送http请求3103作为登录请求。http请求3103的请求主体包括登录所需的信息,例如用户id和密码。通过登录服务115的规格来确定请求主体中包括的登录所需的信息。当从web浏览器109接收到http格式的登录请求3103时,http服务器112分析http请求。在步骤s3010中,如果http请求针对登录服务115,则http服务器112请求登录服务115进行登录。

在步骤s3011中,在从http服务器112接收到登录请求时,登录服务115进行登录处理。下面将参照图12描述登录处理的执行序列。在步骤s12001中,登录服务115开始登录处理。在步骤s12002中,登录服务115从请求主体获取登录id。在步骤s12003中,登录服务115从请求主体获取登录密码。

在步骤s12004中,登录服务115通过使用在步骤s12002中获取的登录id和在步骤s12003中获取的登录密码来确定是否能够登录。当能够登录时(在步骤s12004中为“是”),处理进行到步骤s12005。另一方面,当不能登录时(在步骤s12004中为“否”),处理进行到步骤s12013。在步骤s12013中,登录服务115将登录页面作为响应返回到http服务器112(步骤s3013)。在步骤s12011中,登录服务115结束登录处理。

在步骤s12005中,登录服务115生成认证会话cookie。在步骤s12006中,登录服务115生成认证会话。在步骤s12007中,登录服务115对所生成的认证会话3014设置有效期限。在步骤s12008中,登录服务115对认证会话3014设置诸如用户权限等的其他信息。在步骤s12009中,登录服务115将在步骤s12005中生成的认证会话cookie和在步骤s12006中生成的认证会话添加到认证会话存储单元116。在步骤s12010中,登录服务115将在步骤s12005中生成的认证会话cookie的值设置到响应头的“set-cookie”。在步骤s12012中,登录服务115生成登录完成页面作为响应主体。在步骤s12011中,登录服务115结束登录处理。虽然根据第一示例性实施例,登录服务115获取登录id和登录密码,但是由于要使用的信息的类型取决于登录服务115的规格,因此登录服务115可以获取其他信息。在步骤s3013,http服务器112从登录服务115接收http响应3104。在步骤s3014中,http服务器112将http响应3104返回到web浏览器109。

图4是例示当用户按下电源开关121以开始高速关机时进行的处理的序列图。当用户按下电源开关121时,电源管理模块118依据mfp100的当前状态确定是进行高速关机还是进行关机。在步骤s4001中,当电源管理模块118确定开始高速关机时,电源管理模块118向http服务器112发送高速关机通知。下面将参照图13描述当http服务器112接收到高速关机通知时进行的处理流程。

在步骤s13001中,在接收到高速关机通知时,http服务器112开始高速关机处理。在步骤s13002中,http服务器112从http会话存储单元113获取一个发布的http会话。在步骤s13003中,http服务器112从http会话存储单元113中删除在步骤s13002中获取的发布的http会话。在步骤s13004中,http服务器112将在步骤s13002中获取的发布的http会话添加到无效调度http会话存储单元114。在步骤s13005中,http服务器112确定http会话存储单元113是否是空的。当http会话存储单元113是空的时(在步骤s13005中为“是”),处理进行到步骤s13006。在步骤s13006中,http服务器112结束高速关机处理。在步骤s4002中,http服务器112将控制返回到电源管理模块118。

当http会话存储单元113不是空的时(在步骤s13005中为“否”),处理返回到步骤s13002。在步骤s13002至s13004中,http服务器112重复地进行用于将其他发布的http会话添加到无效调度http会话存储单元114的处理。因此,在高速关机时,所有发布的http会话将被删除,并且然后被添加到无效调度http会话存储单元114。即使在进行高速关机操作并且停止对包括mfp100中所包括的打印引擎的硬件资源的电力供给之后,也不删除包括无效调度http会话存储单元114中的数据的数据的至少一部分。

图5是例示当web浏览器109针对http服务器112向webui发送请求时进行的处理的序列图。在完成图3中所示的登录序列和图4中所示的高速关机之后,当用户按下电源开关121并且mfp100进行高速启动时,进行图5中所示的序列。在步骤s5001中,web浏览器109针对http服务器112向webui发送请求。http请求5101的cookie头包括用于识别http会话的http会话cookie和用于识别认证会话的认证会话cookie。下面将参照图14a和图14b描述由接收到http请求5101的http服务器112进行的处理流程。

在步骤s14001中,在从web浏览器109接收到http请求5101时,http服务器112开始http请求接收处理。在步骤s14002中,http服务器112从http请求5101的cookie头获取http会话cookie。在步骤s5002和s14003中,http服务器112通过使用在步骤s1402中获取的http会话cookie作为关键字,确定在无效调度http会话存储单元114中是否存在在高速关机中无效的http会话。当存在这种http会话时(在步骤s14003中为“是”),处理进行到步骤s14004。在步骤s13006中,http服务器112结束高速关机处理。另一方面,当不存在这种http会话时(在步骤s14003中为“否”),处理进行到步骤s14013。在步骤s5003中,http服务器112向登录服务115请求认证会话。在用户登录的状态下进行高速关机之后,当进行高速启动并且web浏览器109针对http服务器112向webui发送请求时,进行步骤s14004至s14011中的处理。

在步骤s5004和s14004中,登录服务115通过使用http请求5101的cookie头的认证会话cookie的值作为关键字,在认证会话存储单元116中搜索认证会话5102,并且获取认证会话5102。在步骤s5005中,当登录服务115能够获取认证会话5102时,登录服务115将认证会话5102返回到http服务器112。另一方面,当登录服务115无法获取认证会话5102时,登录服务115向http服务器112返回表示无认证会话的响应。在步骤s14005中,http服务器112检查是否从登录服务115返回了认证会话。当返回了认证会话时(在步骤s14005中为“是”),处理进行到步骤s14006。另一方面,当返回了表示无认证会话的响应时(在步骤s14005中为“否”),处理进行到步骤s14007。在认证会话的有效期限在接收http请求5101之前期满并且登录服务115从认证会话存储单元116删除了认证会话的情况下,返回表示无认证会话的响应。

在步骤s5006和s14006中,http服务器112请求登录服务115使所获取的认证会话无效。作为用于请求无效的方法,http服务器112可以将无效目标认证会话的认证会话cookie发送到登录服务115,方法不限于此。在步骤s5007中,为了使无效目标认证会话无效,登录服务115从认证会话存储单元116中删除认证会话。当从认证会话存储单元116中删除认证会话时,即使在由http服务器112接收到的http请求中包括被删除的认证会话的认证会话cookie,http服务器112也不能获取认证会话。因此,在这种情况下,操作发送了http请求的web浏览器109的用户需要再次进行登录操作。在步骤s5008中,登录服务115将控制返回到http服务器112。

在步骤s5009中,http服务器112请求登录服务115生成登录页面。在步骤s5010和s14007中,登录服务115生成登录页面。在步骤s5011中,登录服务115将登录页面返回到http服务器112。在步骤s5012和s14008中,http服务器112生成新的http会话。在步骤s14009中,http服务器112将新的http会话添加到http会话存储单元113。在步骤s14010中,http服务器112在响应中设置具有http会话cookie的值的响应头“set-cookie”5103。在步骤s5013和s14011中,http服务器112将登录页面作为http响应发送到web浏览器109。在步骤s14012中,http服务器112结束http请求接收处理。在步骤s14013中,http服务器112通过使用在步骤s14002中获取的http会话cookie作为关键字,来确定在http会话存储单元113中是否存在http会话。当存在http会话时(在步骤s14013中为“是”),处理进行到步骤s14014。另一方面,当不存在http会话时(在步骤s14013中为“否”),处理进行到步骤s14021。在步骤s14014中,http服务器112将http会话存储单元113中存储的http会话的有效期限更新为通过将http会话的生存期加到当前时间而获得的值。由http服务器112预先确定http会话的生存期。

然后,http服务器112向登录服务115请求认证会话。在步骤s14015中,登录服务115获取认证会话。如果登录服务115在步骤s14015中能够获取认证会话,则登录服务115将认证会话返回到http服务器112。另一方面,如果登录服务115在步骤s14015中不能获取认证会话,则登录服务115返回表示没有认证会话的响应。在步骤s14016中,http服务器112检查是否从登录服务115返回了认证会话。当返回了认证会话时(在步骤s14016中为“是”),处理进行到步骤s14017。另一方面,当返回了表示没有认证会话的响应时(在步骤s14016中为“否”),处理进行到步骤s14019。在http服务器112接收http请求之前,认证会话的有效期限期满的情况下,返回表示没有认证会话的响应。

在步骤s14017中,http服务器112请求servlet117进行servlet处理,并且servlet117进行包括用于生成html的处理的servlet处理。在步骤s14018中,http服务器112将由servlet117生成的html数据作为http响应发送到web浏览器109。在步骤s14012中,http服务器112结束http请求接收处理。

在步骤s14021中,当在http会话存储单元113中不存在http会话时,http服务器112生成新的http会话。在步骤s14022中,http服务器112将新的http会话添加到http会话存储单元113。在步骤s14023中,http服务器112在响应中设置具有在步骤s14021中生成的http会话的http会话cookie的值的响应头“set-cookie”。http服务器112进行该流程图中的处理。因为http服务器112第一次从web浏览器109接收请求,所以这意味着http服务器112在步骤s14016中确认不存在认证会话。在步骤s14019中,http服务器112请求登录服务115生成登录页面,并且登录服务115生成登录页面并将登录页面返回到http服务器112。在步骤s14020中,http服务器112将登录页面作为http响应发送到web浏览器109。在步骤s14012中,http服务器112结束http请求接收处理。

下面将详细描述认证会话的获取。在步骤s14101中,当登录服务115从http服务器112接收到认证会话请求时,登录服务115开始认证会话获取处理。在步骤s14102中,登录服务115从http请求的cookie头获取认证会话cookie。在步骤s14103中,登录服务115确定是否获取了认证会话cookie。当获取了认证会话cookie时(在步骤s14103中为“是”),处理进行到步骤s14104。另一方面,当未获取到认证会话cookie时(在步骤s14103中为“否”),处理进行到步骤s14109。在步骤s14104中,登录服务115通过使用所获取的认证会话cookie作为关键字,在认证会话存储单元116中搜索认证会话。当存在认证会话时(在步骤s14104中为“是”),登录服务115获取认证会话,并且处理进行到步骤s14105。另一方面,当登录服务115不能获取认证会话时(在步骤s14104中为“否”),处理进行到步骤s14109。

在步骤s14105中,登录服务115检查所获取的认证会话的有效期限。当所获取的认证会话的有效期限未期满(当前日期在有效期限之前)时(在步骤s14105中为“是”),处理进行到步骤s14106。另一方面,当所获取的认证会话的有效期限期满(当前日期不在有效期限之前)时(在步骤s14105中为“否”),处理进行到步骤s14109。在步骤s14106中,登录服务115将所获取的认证会话的有效期限更新为通过将认证会话的生存期加到当前时间而获得的值。由登录服务115预先确定认证会话的生存期。当web浏览器109在认证会话的生存期内发送下一个http请求时,认证会话的有效期限被更新,并且因此变得长于其生存期。在步骤s14107中,登录服务115将所获取的认证会话传送到http服务器112。在步骤s14108中,登录服务115结束认证会话获取处理。在步骤s14109中,登录服务115向http服务器112返回表示没有认证会话的响应。在步骤s14108中,登录服务115结束认证会话获取处理。

下面将详细描述会话。http会话具有有效期限。http服务器112从http会话存储单元113和无效调度http会话存储单元114中删除有效期限已期满的http会话。同样,认证会话具有有效期限。登录服务115从认证会话存储单元116中删除有效期限已期满的认证会话。为了提高mfp100的安全性,假设认证会话的生存期短于由http服务器112预先确定的http会话的生存期。在考虑用户方便的情况下,将http会话维持尽可能长的时间段。另一方面,为了提高安全性,需要在尽可能短的时间段内使认证会话无效。例如,http会话的生存期为大约30分钟至1小时,而认证会话的生存期为大约1分钟至5分钟。

当http服务器112从web浏览器109接收到包括http会话cookie和认证会话cookie的请求时,http服务器112更新与各cookie对应的http会话的有效期限和认证会话的有效期限。同时,登录服务115更新认证会话的有效期限。因此,如果在预定时间段内没有接收到http请求,则认证会话的有效期限首先期满。

登录服务115能够通过从web浏览器109接收登出请求来使认证会话无效。图6是例示当从web浏览器109发送登出请求时进行的处理的序列图。在步骤s6001中,web浏览器109向http服务器112发送http请求6101。http请求6101中的请求url是表示登出的url。cookie头包括认证会话cookie的值。在步骤s6002中,当接收到http请求6101的http服务器112分析请求url以确定请求url作为登出请求时,http服务器112请求登录服务115进行登出。

在步骤s6003中,登录服务115进行登出处理,并且从认证会话存储单元116中删除具有http请求6101的cookie头中包括的认证会话cookie的认证会话。在步骤s6004中,登录服务115生成登录页面。在步骤s6005中,登录服务115将登录页面返回到http服务器112。在步骤s6006中,http服务器112向web浏览器109返回包括登录页面的html数据的响应6102。

图7例示了当混合进行http会话和认证会话的超时、用户的登出、高速关机以及高速启动时,认证会话存储单元116、http会话存储单元113和无效调度http会话存储单元114的状态转变。箭头7018表示时间的经过,即,时间从上向下进行。

状态7001是认证会话存储单元116、http会话存储单元113和无效调度http会话存储单元114处于初始状态的初始状态1。认证会话“aaaaa”和“bbbb”被存储在认证会话存储单元116中。http会话“11111”和“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。假设认证会话“aaaaa”和http会话“11111”被包括在同一http请求中。状态7002表示当进行认证会话“aaaaa”的超时时的三个存储单元的状态。认证会话“bbbb”被存储在认证会话存储单元116中。http会话“11111”和“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。

状态7003表示当在时间的经过之后进行http会话“11111”的超时时的三个存储单元的状态。认证会话“bbbbb”被存储在认证会话存储单元116中。http会话“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。状态7004表示在进行高速关机启动之后的三个存储单元的状态。认证会话“bbbbb”被存储在认证会话存储单元116中。http会话存储单元113是空的。http会话“22222”被存储在无效调度http会话存储单元114中。当http服务器112在该阶段接收到http请求7005时,由于已经发生了认证会话“aaaaa”的超时,所以用户需要新登录。

状态7006是认证会话存储单元116、http会话存储单元113和无效调度http会话存储单元114处于初始状态的初始状态2。认证会话“aaaaa”和“bbbbb”被存储在认证会话存储单元116中。http会话“11111”和“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。假设认证会话“aaaaa”和http会话“11111”被包括在同一http请求中。状态7007表示当在时间的经过之后进行认证会话“aaaaa”的超时时的三个存储单元的状态。认证会话“bbbbb”被存储在认证会话存储单元116中。http会话“11111”和“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。

状态7008表示在进行高速关机启动之后的三个存储单元的状态。认证会话“bbbbb”被存储在认证会话存储单元116中。http会话存储单元113是空的。http会话“11111”和“22222”被存储在无效调度http会话存储单元114中。

当http服务器112在该阶段接收到http请求7009时,由于已经发生了认证会话“aaaaa”的超时,所以用户需要新登录。

状态7010是认证会话存储单元116、http会话存储单元113和无效调度http会话存储单元114处于初始状态的初始状态3。认证会话“aaaaa”和“bbbbb”被存储在认证会话存储单元116中。http会话“11111”和“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。状态7011表示当由用户进行登出时的三个存储单元的状态。认证会话“bbbbb”被存储在认证会话存储单元116中。http会话“11111”和“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。

状态7012表示在进行高速关机启动之后的三个存储单元的状态。认证会话“bbbbb”被存储在认证会话存储单元116中。http会话存储单元113是空的。http会话“11111”和“22222”被存储在无效调度http会话存储单元114中。当http服务器112在该阶段接收到http请求7013时,由于已经进行了认证会话“aaaaa”的登出,所以用户需要新登录。

状态7014是认证会话存储单元116、http会话存储单元113和无效调度http会话存储单元114处于初始状态的初始状态4。认证会话“aaaaa”和“bbbbb”被存储在认证会话存储单元116中。http会话“11111”和“22222”被存储在http会话存储单元113中。无效调度http会话存储单元114是空的。状态7015表示在进行高速关机启动之后的三个存储单元的状态。认证会话“aaaaa”和“bbbbb”被存储在认证会话存储单元116中。http会话存储单元113是空的。http会话“11111”和“22222”被存储在无效调度http会话存储单元114中。

状态7016表示当在时间的经过之后进行认证会话“aaaaa”的超时时的三个存储单元的状态。认证会话“bbbbb”被存储在认证会话存储单元116中。http会话存储单元113是空的。http会话“11111”和“22222”被存储在无效调度http会话存储单元114中。当http服务器112在该阶段接收到http请求7017时,由于发生了认证会话“aaaaa”的超时,所以用户需要新登录。

根据第一示例性实施例,能够通过将在高速关机之前生成的http会话存储在无效调度http会话存储单元114中,来使在高速关机之前生成的认证会话无效。上述构造使得能够维持以下装置的安全性:在用户操作电源时,在存储存储器内容的至少一部分的同时进入深睡眠(省电状态)以进行高速关机的装置。

根据第一示例性实施例,当在进行高速关机之前由servlet117使http会话无效时,从http会话存储单元113中删除无效的http会话。因此,在mfp100根据servlet117的指令进行高速关机之前无效的http会话不能被移动到无效调度http会话存储单元114。因此,在mfp100进行高速启动之后,与由servlet117无效的http会话间接有关的认证会话不能被无效。结果,认证会话保留在认证会话存储单元116中。虽然认证会话将由于时间的经过而被删除,但是在认证会话被删除之前以某种方式向servlet117做出请求的情况下,可能基于无法删除的认证会话使用servlet117。下面将以解决该问题的方法为中心描述第二示例性实施例。在第二示例性实施例中未描述的单元和模块具有与第一示例性实施例中的单元和模块类似的构造和操作。

图8例示了根据第二示例性实施例的软件构造。除了根据第一示例性实施例的软件构造以外,http服务器112还包括无效http会话存储单元8001。无效http会话存储单元8001是用于存储http会话cookie8002和http会话8003的存储单元。

图9(由图9a和9b由组成)是例示在servlet117设置有使http请求中包括的http会话无效的功能的情况下发生问题的序列图。在步骤s9001中,web浏览器109向http服务器112发送http请求9101。http请求9101包括用于识别http会话的http会话cookie和用于识别认证会话的认证会话cookie。在http服务器112进行图14a和图14b中所示的处理并且从登录服务115获取认证会话之后,http服务器112分析http请求9101。在步骤s9002中,当http服务器112确定http请求9101是对servlet117的请求时,http服务器112请求servlet117进行servlet处理。在步骤s9003中,servlet117请求http服务器112使与http请求9101中包括的http会话cookie相对应的http会话无效。在步骤s9004中,http服务器112从http会话存储单元113中删除指定的http会话以使其无效。在步骤s9005中,在完成http会话的无效之后,http服务器112将控制返回到servlet117。在步骤s9006中,servlet117进行包括用于生成html并控制mfp100的处理的servlet处理。依据由servlet117进行的servlet处理的内容,可以以不同的顺序调用步骤s9003和s9006,或者可以多次执行步骤s9003和s9006。

在步骤s9007中,servlet117将生成的html发送到http服务器112。在步骤s9008中,http服务器112将由servlet117生成的html数据作为响应发送到web浏览器109。在步骤s9009中,当用户按下电源开关121并且电源管理模块118在该状态下开始高速关机时,电源管理模块118向http服务器112通知高速关机。http服务器112进行图13中所示的步骤s13001至s13006中的处理,以将http会话存储单元113中包括的http会话移动到无效调度http会话存储单元114。然而,由servlet117无效的http会话不再存在于http会话存储单元113中,因此不会被移动到无效调度http会话存储单元114。在步骤s9010中,http服务器112向电源管理模块118返回“高速关机通知接收完成”。

在步骤s9011中,在高速启动之后,web浏览器109向http服务器112发送http请求9102。在步骤s9013中,由于请求9013中包括的http会话不存在于无效调度http会话存储单元114中,所以http服务器112不能使请求9102中包括的认证会话无效。

图10是例示由servlet117进行的http会话无效处理和高速关机通知处理以解决图9中所示的问题的流程图。步骤s10001至s10004形成由servlet117进行的http会话无效处理的流程图。

步骤s10101至s10110形成高速关机通知处理的流程图。在步骤s10001中,当servlet117请求http服务器112进行http会话无效处理时,http服务器112开始http会话无效处理。在步骤s10002中,http服务器112从http会话存储单元113中删除由servlet117指定的无效目标http会话。

在步骤s10003中,http服务器112将由servlet117指定的无效目标http会话添加到无效http会话存储单元8001。在步骤s10004中,http服务器112结束http会话无效处理。当用户按下电源开关121并且电源管理模块118开始高速关机时,电源管理模块118向http服务器112发送高速关机通知。在步骤s10101中,在接收到高速度关机通知时,http服务器112开始高速关机处理。在步骤s10102中,http服务器112从http会话存储单元113获取一个http会话。在步骤s10103中,http服务器112从http会话存储单元113中删除所获取的http会话。

在步骤s10104中,http服务器112将在步骤s10102中获取的http会话添加到无效调度http会话存储单元114。在步骤s10105中,http服务器112确定http会话存储单元113是否是空的。当http会话存储单元113是空的时(在步骤s10105中为“是”),处理进行到步骤s10106。另一方面,当http会话存储单元113不是空的时(在步骤s10105中为“否”),处理返回到步骤s10102,并且http服务器112继续处理。在步骤s10106中,http服务器112从无效http会话存储单元8001获取一个http会话。在步骤s10107中,http服务器112从无效http会话存储单元8001中删除所获取的http会话。

在步骤s10108中,http服务器112将在步骤s10106中获取的http会话添加到无效调度http会话存储单元114。在步骤s10109中,http服务器112确定无效http会话存储单元8001是否是空的。在步骤s10110中,当无效http会话存储单元8001是空的时(在步骤s10109中为“是”),处理进行到步骤s10110。在步骤s10110中,http服务器112结束高速关机处理。另一方面,当无效http会话存储单元8001不是空的时(在步骤s10109中为“否”),处理返回到步骤s10106,并且http服务器112继续处理。

虽然在第二示例性实施例中,http服务器112曾经将无效目标http会话移动到无效http会话存储单元8001,但是http服务器112可以将无效目标http会话直接存储在无效调度http会话存储单元114。代替无效http会话存储单元8001,可以在http会话存储单元113中设置用于http会话无效标志的字段。在接收到http会话无效请求时,http服务器112可以设置http会话无效标志。

当在高速关机启动之后web浏览器109请求http服务器112时进行的认证会话无效处理类似于根据第一示例性实施例的处理。即使当应用服务使http会话无效时,使用无效http会话存储单元8001也使得能够在高速启动之后使在高速关机前登录的用户的认证会话无效。

作为第一示例性实施例的改进版本的第三示例性实施例,是用于以简化的方式来使认证会话无效的方法。下面将以该无效方法为中心来描述第三示例性实施例。在第三示例性实施例中未描述的单元和模块具有与第一示例性实施例中的单元和模块类似的构造和操作。图11是例示根据第三示例性实施例的高速关机处理和http请求接收处理的流程图。步骤s11001至s11003形成由http服务器112进行的高速关机处理的流程图。步骤s10101至s10110形成在高速启动之后从web浏览器109接收到请求时由http服务器112进行的处理的流程图。

当用户按下电源开关121并且电源管理模块118开始高速关机时,电源管理模块118向http服务器112发送高速关机通知。在步骤s11001中,在接收到高速关机通知时,http服务器112开始高速关机处理。在步骤s11002中,http服务器112清空http会话存储单元113。在步骤s11003中,http服务器112结束高速关机处理。在步骤s11101中,在从web浏览器109接收到http请求时,http服务器112开始http请求接收处理。在步骤s11102中,http服务器112从http请求的cookie头获取http会话cookie。

在步骤s11103中,http服务器112通过使用在步骤s11102中获取的http会话cookie作为关键字来检查在http会话存储单元113中是否存在http会话。当存在http会话时(在步骤s11103中为“是”),处理进行到步骤s11112。另一方面,当不存在http会话时(在步骤s11103中为“否”),处理进行到步骤s11104。在步骤s11104中,http服务器112向登录服务115请求认证会话,并且登录服务115进行图14b中所示的步骤s14101至s14108中的处理,以获取认证会话。如果登录服务115能够获取认证会话,则登录服务115将认证会话返回到http服务器112。另一方面,如果登录服务115不能获取认证会话,则登录服务115向http服务器112返回表示没有认证会话的响应。

在步骤s11117中,http服务器112检查是否从登录服务115返回了认证会话。当http服务器112确认返回了认证会话时(在步骤s11117中为“是”),处理进行到步骤s11105。另一方面,当http服务器112确认返回了表示没有认证会话的响应时(在步骤s11117中为“否”),处理进行到步骤s11106。在接收http请求之前认证会话的有效期限期满的情况下,返回表示没有认证会话的响应。在步骤s11105中,http服务器112使从登录服务115获取的认证会话无效。

认证会话无效处理类似于根据第一示例性实施例的处理。在步骤s11106中,http服务器112生成新的http会话。在步骤s11107中,http服务器112将新的http会话添加到http会话存储单元113。在步骤s11108中,http服务器112在响应中设置具有在步骤s11106中生成的http会话的http会话cookie的值的响应头“set-cookie”。在步骤s11109中,http服务器112请求登录服务115生成登录页面,并且登录服务115生成登录页面,然后将登录页面返回到http服务器112。在步骤s11110中,http服务器112将登录页面作为http响应的主体数据发送到web浏览器109。在步骤s11111中,http服务器112结束http请求接收处理。在步骤s11112中,http服务器112更新在步骤s11102中获取的http会话的有效期限。用于更新http会话的有效期限的处理类似于根据第一示例性实施例的处理。

在步骤s11113中,http服务器112向登录服务115请求认证会话,并且登录服务115进行图14b中所示的步骤s14101至s14108中的处理。以获取认证会话。如果登录服务115能够获取认证会话,则登录服务115将认证会话返回到http服务器112。另一方面,如果登录服务115不能获取认证会话,则登录服务115返回表示没有认证会话的响应。在步骤s11114中,http服务器112检查是否从登录服务115返回了认证会话。当http服务器112确认返回了认证会话时(在步骤s11114中为“是”),处理进行到步骤s11115。另一方面,当http服务器112确认返回了表示没有认证会话的响应时(在步骤s11114中为“否”),处理进行到步骤s11109。在步骤s11115中,http服务器112请求servlet117进行servlet处理,并且servlet117进行包括用于生成html的处理的servlet处理。在步骤s11116中,http服务器112将由servlet117生成的html数据作为http响应的主体数据发送到web浏览器109。在步骤s11111中,http服务器112结束http请求接收处理。

利用第三示例性实施例的上述构造,http服务器112能够在高速关机时删除在http会话存储单元113中存储的所有http会话,并且,在高速启动之后使在高速关机前登录的用户的认证会话无效。

其他实施例

还可以通过读出并执行记录在存储介质(例如,非暂时性计算机可读存储介质)上的计算机可执行指令以执行本公开的上述实施例中的一个或更多个的功能的系统或装置的计算机,来实现本公开的实施例,并且,可以通过由系统或装置的计算机进行的例如读出并执行来自存储介质的计算机可执行指令以执行上述实施例中的一个或更多个的功能的方法,来实现本公开的实施例。计算机可以包括一个或更多个中央处理单元(cpu)、微处理单元(mpu)或其他电路,并且可以包括分开的计算机或分开的处理器的网络。计算机可执行指令可以例如从网络或存储介质被提供给计算机。存储介质可以包括例如硬盘、随机存取存储器(ram)、只读存储器(rom)、分布式计算系统的存储器、光盘(诸如压缩光盘(cd)、数字通用光盘(dvd)或蓝光光盘(bd)tm)、闪存装置以及存储卡等中的一个或更多个。

本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(cpu)、微处理单元(mpu)读出并执行程序的方法。

虽然参照示例性实施例对本发明进行了描述,但是应当理解,本发明不限于所公开的示例性实施例。应当对所附权利要求的范围给予最宽的解释,以便涵盖所有这些变型例以及等同的结构和功能。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1