CN101286142B - 一种磁盘操作的保护方法及磁盘控制器 - Google Patents

一种磁盘操作的保护方法及磁盘控制器 Download PDF

Info

Publication number
CN101286142B
CN101286142B CN2008100981416A CN200810098141A CN101286142B CN 101286142 B CN101286142 B CN 101286142B CN 2008100981416 A CN2008100981416 A CN 2008100981416A CN 200810098141 A CN200810098141 A CN 200810098141A CN 101286142 B CN101286142 B CN 101286142B
Authority
CN
China
Prior art keywords
time
disk operating
interval duration
last
disk
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.)
Active
Application number
CN2008100981416A
Other languages
English (en)
Other versions
CN101286142A (zh
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Symantec Technologies Co Ltd
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 Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN2008100981416A priority Critical patent/CN101286142B/zh
Publication of CN101286142A publication Critical patent/CN101286142A/zh
Priority to US12/417,391 priority patent/US8054722B2/en
Application granted granted Critical
Publication of CN101286142B publication Critical patent/CN101286142B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/80Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors

Abstract

一种磁盘操作的保护方法及磁盘控制器,其主要包括:接收磁盘操作请求,磁盘控制器获取待操作的当前磁盘区域对应的操作控制参数,根据所述操作控制参数判断是否允许操作当前磁盘区域;当根据所述操作控制参数确定允许对所述当前磁盘区域进行操作时,则执行所述磁盘操作。本发明实施例的实现可以针对磁盘中存储的数据进行相应的操作保护,以有效防范非法意图的修改等非法磁盘操作,并可以在数据产生过程中实施相应的磁盘保护,克服现有技术中提供的磁盘保护机制存在的缺陷。

Description

一种磁盘操作的保护方法及磁盘控制器 
技术领域
本发明涉及电子技术领域,尤其涉及一种磁盘操作保护技术。 
背景技术
在电子设备中经常需要将数据保存于磁盘中,例如,需要将视频监视设备获得的视频信号录制存储于磁盘中,或者,记录一些股市数据、天气预报、新闻播放等日志信息,等等。这些需要保存的数据需要真实记录以反映记录的实际情形,也就是说这些保存记录的数据不允许被修改,为此,需要对保存记录的数据提供相应的保护机制。 
在上述数据存储过程中,为了满足数据所有者对所生产的数据进行实时保护,目前主要可以采用以下两种实现方案。 
一种实现方案是:利用上层应用软件或者操作系统对存储记录于磁盘中的数据进行操作保存,例如,使用Unix操作系统、Windows操作系统的文件权限管理机制,通过权限不同实现对文件的操作控制。 
另一种实现方案则是:在数据产生后,在存储设备上通过对逻辑单元(LUN)设置权限的方式来对整个LUN进行保护,以限制数据生产和使用者对磁盘保存的数据的访问。 
在实现本发明过程中,发明人发现现有技术中至少存在如下问题: 
上述第一种实现方案中,由于数据生产者和使用者与数据所有者共用同一管理系统,相应的安全机制很容易被绕开,导致保护失效;例如,可以通过非法获得超级用户权限、利用操作系统漏洞或修改系统时间等方法避开相应的安全机制。 
上述第二种实现方案中,只能在数据产生后实现相应的保存,却无法在数据生产过程中实施保护。 
发明内容
本发明的实施例提供了一种磁盘操作的保护方法及磁盘控制器,以便于对磁盘中记录的数据实现有效的操作保护。 
一种磁盘操作的保护方法,包括: 
接收磁盘操作请求,磁盘控制器获取待操作的当前磁盘区域对应的操作控制参数,根据所述操作控制参数判断是否允许操作当前磁盘区域,所述的操作控制参数包括操作控制时间参数; 
当根据所述操作控制参数确定允许对所述当前磁盘区域进行操作时,则执行所述磁盘操作; 
所述的操作控制时间参数包括允许磁盘操作间隔时间,且判断是否允许操作当前磁盘区域的过程具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,禁止本次磁盘操作; 
或者, 
所述的操作控制时间参数包括允许磁盘操作间隔时间和数据保护有效时间,且判断是否允许操作当前磁盘区域的过程具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述数据保护有效时间要求,若符合,则禁止本次磁盘操作,否则,允许本次磁盘操作。 
一种磁盘控制器,包括: 
参数获取单元,用于在接收磁盘操作请求后,获取待操作的当前磁盘区域对应的操作控制参数,所述操作控制参数用于表示是否允许操作当前磁盘 区域,所述的操作控制参数包括操作控制时间参数; 
磁盘操作控制处理单元,用于根据所述参数获取单元获取的操作控制参数判断是否允许操作当前磁盘区域,并在确定允许对所述当前磁盘区域进行操作时,执行所述磁盘操作; 
若所述的操作控制时间参数包括允许磁盘操作间隔时间,则所述磁盘操作控制处理单元具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,禁止本次磁盘操作; 
或者, 
若所述的操作控制时间参数包括允许磁盘操作间隔时间和数据保护有效时间,则所述磁盘操作控制处理单元具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述数据保护有效时间要求,若符合,则禁止本次磁盘操作,否则,允许本次磁盘操作。 
由上述本发明的实施例提供的技术方案可以看出,其可以针对磁盘中存储的数据进行相应的操作保护,以有效防范非法意图的修改等非法磁盘操作,并可以在数据产生过程中实施相应的磁盘保护,克服现有技术中提供的磁盘保护机制存在的缺陷。 
附图说明
图1为本发明实施例的实现原理示意图; 
图2为本发明实施例提供的操作控制参数的设置原理示意图; 
图3为本发明实施例提供的操作控制时间参数的统计方式示意图; 
图4为本发明实施例提供的刷新表记录方式示意图; 
图5为本发明实施例提供的处理过程示意图一; 
图6为本发明实施例提供的处理过程示意图二; 
图7为本发明实施例提供的磁盘控制器的结构示意图。 
具体实施方式
本发明实施例提供的磁盘操作的保护方案,是在磁盘控制器层次上实现针对磁盘的读写等操作的控制,具体可以在接收磁盘操作请求后,由磁盘控制器获取待操作的当前磁盘区域对应的操作控制参数,该操作控制参数用于表示是否允许操作当前磁盘区域,当根据获取的操作控制参数确定允许对所述当前磁盘区域进行操作时,则执行所述磁盘操作。 
可见上述处理方式不再基于应用软件和操作系统实现相应的磁盘操作保护(如读写保护等),进而实现了数据生产者、使用者和数据所有者权限分离,使得数据所有者对生产出来的数据能够进行实时保护。 
参照图1所示,相应的应用软件为数据生产者,其产生的数据可以通过操作系统写于磁盘阵列,数据使用者也可以通过操作系统读取磁盘阵列中的相应数据。磁盘阵列通过相应的磁盘控制器提供对外接口,磁盘控制器有独立的CPU系统,RAM和总线接口,并用于控制针对磁盘的读写操作,即:所有针对磁盘的操作只能通过磁盘控制器实现,磁盘控制器将磁盘和操作系统及应用软件等隔离。本发明实施例便可以通过在磁盘控制器运行相应的控制程序以实现针对磁盘操作的控制,如写保护等。 
在磁盘阵列中,通常是以扇区作为最小的记录单位,且操作系统层对磁盘的最小寻址单位通常也是扇区。因此,在上述处理过程中,相应的磁盘区域可以为磁盘中的一个或多个扇区对应的存储区域,或者,也可以为以其他方式划分确定的磁盘中的相应区域,例如,若磁盘的最小寻址单位不再为扇区时,则可以相应的新的最小寻址单位作为相应的磁盘区域(即最小的操作控制区域)进行操作控制。 
本发明实施例中,相应的操作控制参数可以包括:操作控制时间参数或 操作控制事件参数中的至少一项,例如,相应的操作控制时间参数可以为具体的可以为允许写操作的时间段或不允许写操作的时间段等参数中的至少一项,操作控制事件参数则可以为允许写操作的事件参数或不允许写操作的触发事件等参数中的至少一项,等等。 
进一步地,可以在预定的时间段内设置允许符合操作间隔要求的写操作执行,例如,以操作的磁盘区域为扇区为例,则可以为磁盘的扇区设置时间索引,该时间索引可以用于记录最后一次磁盘操作与当前时间之间的间隔时长,也可以用于记录最后一次磁盘操作时间,或者,也可以记录其他可以体现出最后一次磁盘操作时间的信息,以便于基于磁盘操作之间的间隔时长实现对磁盘扇区的保护。 
相应的时间索引可以采用非线型的记录方式来扩大记录时间范围,或者,也可以采用其他实现方式进行时间索引的统计记录。 
为便于对本发明实施例的理解,下面将结合附图对本发明实施例的具体实施过程进行详细说明。 
在该具体说明过程中,以写操作作为磁盘操作、以扇区作为当前需要操作的磁盘区域,并以采用操作控制时间参数作为相应的操作控制参数为例,参照图2所示,相应的可以设置两个参数作为操作控制时间参数: 
(1)写操作允许间隔时间T1,即写操作时间窗,作为允许磁盘操作间隔时间,若针对某扇区的本次写操作时间与上次写操作时间之间的差值未超过该写操作允许间隔时间,则确认符合写操作允许间隔时间要求,否则,认为本次写操作不符合写操作允许间隔时间要求; 
该写操作允许间隔时间T1作为一个时间窗可以针对整个磁盘设置(即针对一个磁盘设置写操作允许间隔时间作为磁盘的写操作时间窗),也可以针对磁盘中的一个或多个扇区进行设置,或者,也可以针对整个存储系统设置; 
该参数T1的设置是考虑到某些应用对于磁盘中的一个扇区的写操作不是 一次性写满,而是由多个写操作组成,各个写操作之间的间隔时长不超过T1,则认为相应的写操作为合法;即每次针对一个扇区的成功写操作后的T1时间段内允许用户继续写入,且T1的取值单位可以是分钟、小时、日或月等,相应的T1具体可以根据不同应用设置不同的值; 
(2)数据保护有效时间T2,作为相应磁盘的数据保护期,若针对某扇区的本次写操作时间与上次写操作时间之间的差值未超过该数据保护有效时间,则确认符合该数据保护有效时间要求,即不允许执行本次写操作,否则,认为本次写操作不符合该数据保护有效时间,即允许执行本次写操作; 
该数据保护有效时间T2可以基于整个存储系统设置,也可以基于每个磁盘设置,或者也可以针对磁盘中的一个或多个扇区进行设置。 
该数据保护有效时间T2在应用过程中为可选设置,该T2的设置可以满足数据所有者的要求,使得相应的数据可以在保留一定期限(即T2时间)后才允许解除写保护,该数据保护有效时间T2的取值通常可以大于1天,其取值单位可以为日或月等。 
其中,若设置数据保护有效时间T2,则具体可以设置为:T2大于T1。 
在具体实现过程中,可以为每个扇区建立一个时间标签,用于记录下每个扇区最后一次写操作的时间(作为上述上一次写操作时间),则基于上述操作控制时间参数,相应的磁盘操作保护方式包括:从每个扇区最后一次写操作开始计时,在该扇区对应的写操作时间窗(即写操作允许间隔时间)内,则允许继续进行写操作,并完成写操作后更新该扇区的时间标签;在超过该扇区对应的写操作时间窗后,则该扇区将被写保护,即不允许对该扇区进行写操作;之后,在从每个扇区最后一次写操作开始经过了数据保护有效时间后,即相应的写保护期结束,则继续允许针对该扇区进行相应的写操作。 
本发明实施例在应用过程中,具体可以针对每个扇区采用一个字节记录相应的时间索引,根据该时间索引值可以计算出该扇区最后一次写操作时 间,具体地,该时间索引可以记录当前时间与上一次写操作时间之间的间隔时长,或者,也可以直接记录相应的最后一次写操作时间(作为上一次写操作时间),例如,可以通过该最后一次写操作时间与当前时间的比较,并根据所述图2确定是否允许针对该扇区的本次写操作。 
为了避免浪费存储空间,本发明实施例采用精确度逐渐降低的非线性时间统计方式进行时间索引值的记录,以便于利用一个字节记录较长的存储时间,即可以记录较长的当前时间与上一次写操作时间之间的间隔时长,或者,记录最后一次写操作时间。或者,本发明实施例中也可以采用较多的存储空间精确记录相应的时间索引值。 
其中,相应的非线性时间统计方式具体可以包括:若所述当前时间与上一次磁盘操作时间之间的间隔时长小于60分钟,则采用分钟作为计时单位进行间隔时长或最后一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于60分钟小于24小时,则采用小时作为计时单位进行间隔时长或最后一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于24小时小于1个月,则采用天作为计时单位进行间隔时长或最后一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于1个月,则采用月作为计时单位进行间隔时长或最后一次磁盘操作时间的统计; 
参照图3所示,假设某扇区最后一次写操作的时间为YY-MM2-DDHH:MM1,YY表示年,MM2表示月,DD表示日期,HH表示小时,MM1表示分钟,则相应的非线性时间统计方式具体可以采用以下方式进行时间索引值的记录,即相应的时间索引的记录规则具体可以为: 
如果当前时间和最后一次写操作时间差小于60分钟,则相应的时间索引可以采用最后一次写操作时间的分钟值MM1表示,值为MM1,或者,也可以以分钟为单位统计相应的当前时间和最后一次写操作时间差,此时,MM1为以分钟为单位的实际间隔时长; 
如果当前时间和最后一次写操作时间差大于60分钟且小于24小时,则相应的时间索引可以采用最后一次写操作时间的小时值HH表示,值为HH+60,或者,也可以以小时为单位统计相应的当前时间和最后一次写操作时间差,此时,相应的HH表示以小时为单位的实际的间隔时长; 
如果当前时间和最后一次写操作时间差大于24小时且小于1月,则相应的时间索引可以采用最后一次写操作时间的日期值DD表示,值为DD+83,其中,83=60+24-1(因为日期从1开始计算),或者,也可以以天为单位统计相应的当前时间和最后一次写操作时间差,此时,相应的DD为以天为单位的实际间隔时长; 
如果当前时间和最后一次写操作时间差大于1月,则相应的时间索引可以采用当前时间月份MM2和最后一次写操作时间的月MM2之间的差表示,值为差值+114,其中,114=60+24+31-1,或者,也可以直接记录最后一次写操作的MM2值(MM2最大值为12)。若采用前一种时间索引记录方式,则具体可以表示最多255-114=141个月的间隔时间,即可以记录大于11年的当前时间与上一次磁盘操作时间之间的间隔时长,增加了存储空间的利用效率。 
基于上述时间索引的记录规则,若相应的时间索引值具体记录的为当前扇区的上一次磁盘操作时间(即在当前时间之前的最后一次磁盘操作时间),例如,假设当前时间为2007-4-16 11:46,则不同的时间索引值对应的当前扇区对应的最后一次写操作时间可以为: 
若某一扇区的时间索引值记录为30,则表示该扇区使用分钟表示,其对应的最后一次写操作时间的分钟值为30,则该扇区的最后一次写操作时间为2007-4-16 11:30,该记录的时间索引值可以精确到分钟; 
若某一扇区的时间索引值记录为62,表示该扇区使用小时表示,其对应的最后一次写操作时间的小时值为2,则该扇区的最后一次写操作时间为2007-4-16 2:00,该记录的时间索引值可以精确到小时; 
若某一扇区的时间索引值记录为85,表示该扇区使用天表示,其对应的最后一次写操作时间的日期值为2,则该扇区的最后一次写操作时间为2007-4-20:00,该记录的时间索引值可以精确到天; 
若某一扇区的时间索引值记录为116,表示该扇区使用月表示,其对应的最后一次写操作时间的月和当前月份的差为2,则该扇区的最后一次写操作时间为2007-2-00:00,该记录的时间索引值可以精确到月。 
在采用上述记录规则记录相应的时间索引时,当时间索引无法以小的单位表示时,则需要使用更大一些的单位表示,例如,在分钟计时超过60分钟时,则需要修改为用小时计数,为此,具体可以在磁盘控制器上启动定时器,对时间索引做周期性的刷新,进一步地,参照图4所示,相应的时间索引值的更新过程具体可以采用以下处理方式实现: 
(1)磁盘控制器采用分钟刷新机制,即每分钟定时刷新扇区对应的时间索引值,在超过60分钟后针对该扇区改为采用小时刷新机制 
具体地,每分钟查询处于分钟刷新表中的各个扇区对应的时间索引,该时间索引用于记录最后一次写操作时间,若当前时间的分钟数值与该时间索引值一致,则改为采用小时刷新机制更新相应的时间索引,并将相应的时间索引对应扇区的编号记录到小时刷新表中;例如,若最后一次写操作时间为2007-4-11 16:27,则在每分钟更新的处理过程中,需要将分钟刷新表中所有时间索引为27的扇区修改为其对应的时间索引为76(即60+16),并更新到小时刷新表中; 
(2)磁盘控制器采用小时刷新机制,即每小时定时刷新扇区对应的时间索引值,在超过24小时后针对该扇区改为采用日刷新机制 
具体地,每小时查询处于小时刷新表中的各个扇区对应的时间索引,该时间索引用于记录最后一次写操作时间,若当前时间的小时数值加上60后的值与扇区对应的时间索引一致,则改为采用日刷新机制更新相应的时间索引,并将相应的时间索引对应的扇区的编号记录到日刷新表中,例如,若最 后一次写操作时间为2007-4-11 16:00,则在每小时更新中,需要将所有时间索引为76的扇区修改为其对应的时间索引为94(即83+11),并更新到是刷新表中; 
(3)磁盘控制器采用日刷新机制,即每天定时刷新扇区对应的时间索引值,在超过1个月后针对该扇区改为采用月刷新机制 
具体地,每天查询处于天刷新表中的各个扇区对应的时间索引,该时间索引用于记录最后一次写操作时间,若当前时间的日期值加上83后的值与扇区对应的时间索引一致,则将相应扇区对应的时间索引修改为月表示(即采用月刷新机制对相应的时间索引进行更新),其值为115,表示一个月; 
需要说明的是,由于每个月包含的天数不同,因此,需要在每个月的最后一天,将本月没有而上个月有的日期也执行相应的更新处理,以使得不足31天的月份的刷新处理也可以正常进行;例如,在4月30日的每日定时刷新中,将时间索引为113的扇区修改其时间索引为115,也将时间索引为114的扇区修改其时间索引为115; 
(4)磁盘控制器采用月刷新机制,即每月定时刷新扇区对应的时间索引值,增加扇区对应的时间索引值 
具体地,每月查询所有扇区对应的时间索引,该时间索引用于记录当前时间与最后一次写操作时间之间的间隔时长,若相应的时间索引是采用月计数方式记录,则时间索引对应的计数值加1,并重新写回该扇区对应的时间索引值中,以实现针对扇区的时间索引的更新。 
在上述处理过程中,在相应的分钟刷新表、小时刷新表和日刷新表中保存着要刷新扇区的扇区号和对应的时间索引值,使用扇区号可以直接定位到相应的扇区以进行读写操作;通过各个刷新表的设置,可以有效减少定时刷新时需要读取的扇区的数量,进而可以减少定时刷新过程所占用的CPU的资源。 
需要说明的是,若使用月计数的扇区占全部扇区的比例较小,则还可以 建立相应的月刷新表,以节省刷新时间。 
在掉电后,本发明实施例采用的恢复各个刷新表的方式可以为:查询所有扇区对应的时间索引,如果用分钟表示则记录在分钟刷新表中,如果用小时表示则记录在小时刷新表中,如果用日期表示则记录在日刷新表中。 
基于上述时间索引的记录规则,当操作系统对某一扇区执行写操作时,则先读取该扇区的时间索引,并根据相应的时间索引判断该扇区是否在不允许写的时间范围内,若在不允许写的时间范围内则禁止执行本次写操作,以实现针对磁盘中的文件的保护。 
下面将结合具体的处理流程图对本发明实施例提供的针对磁盘的写操作的保存处理过程进行说明。 
实施处理过程一 
如图5所示,针对磁盘执行写操作的处理过程可以包括: 
步骤1,磁盘控制器接收到针对磁盘中的某个扇区的写操作; 
步骤2,读取该扇区的时间索引,以便于根据该时间索引确定上一次磁盘操作(该过程中指的是写操作)时间,进而确定本次写操作的合法性; 
步骤3,根据所述时间索引判断是否允许本次写操作的执行,若允许,则执行步骤4,否则,执行步骤6; 
具体可以采用的判断方式可以包括:根据时间索引确定上一次磁盘操作时间与当前时间之间的差值是否超过预先设置的允许磁盘操作间隔时间,若未超过,则确认允许本次写操作,否则,确认不允许本次操作; 
步骤4,执行相应的写操作,即向磁盘中相应扇区写入数据,修改该扇区对应的时间索引,即以当前时间的分钟数作为修改后的扇区的时间索引,并执行步骤5; 
步骤5,将该执行了写操作的扇区对应的扇区号(即扇区的编号)写入到分钟刷新表中,相应的本次写操作过程结束。 
步骤6,拒绝本次写操作,且本次写操作过程结束。 
实施处理过程二 
如图6所示,相应的根据时间索引判断当前扇区是否允许写操作的处理过程具体可以包括: 
步骤1,当需要执行针对磁盘的写操作时,判断当前时间与系统保存的最后一次写操作时间差是否大于预定的值(如5分钟或其他预定时间等),若是,则认为系统时间被非法修改,并执行步骤5,否则,执行步骤2; 
步骤2,根据当前待执行写操作的扇区对应的时间索引值确定当前时间与上一次磁盘操作时间之间的差值(即间隔时长),并判断相应的间隔时长是否大于预先设置的允许磁盘操作间隔时间T1,若是,则执行步骤3,否则,执行步骤4; 
在该步骤中,若时间索引值记录的是当前时间与上一次磁盘操作时间之间的差值,则可以直接确定相应的间隔时长;若时间索引值记录的是上一次磁盘操作时间,则需要根据时间索引值记录的上一次磁盘操作时间及当前时间确定相应的间隔时长,例如,时间索引值为62,则上一次磁盘操作时间为2:00,若当前时间为6:00,则相应的间隔时长记录为4小时; 
步骤3,判断所述间隔时长是否大于数据保护有效时间T2,若是,则执行步骤4,否则,执行步骤6; 
步骤4,允许执行本次写操作,并针对磁盘中的相应扇区执行本次写操作,在相应扇区写入相应的信息。 
步骤5,上报告警信息,并执行步骤6; 
步骤6,不允许执行本次写操作。 
可见,在上述图6所示的处理过程中,磁盘控制器为防止系统时间被非法修改,进而非法更改磁盘中保存的相应文件,增加了相应的步骤1的操作,该操作具体可以为:存储系统将每次读写操作的时间都更新在一个非易失的内存中,以保存针对存储系统的磁盘的一个最后修改时间;之后,当存储系统判断当前时间和保存的最后修改时间之间的差值大于预定的时间值(如5分钟 等),则认为存储系统的时间遭到非法修改,此时,可以上报相应的告警信息并拒绝相应的磁盘操作。 
本发明实施例还提供了一种磁盘控制器,其具体实现结构如图7所示,主要可以包括以下处理单元: 
(1)参数获取单元701,用于在执行磁盘操作前,获取待操作的当前磁盘区域对应的操作控制参数,所述操作控制参数用于表示是否允许操作当前磁盘区域,如是否允许对当前待操作的扇区进行写操作等; 
可选地,相应的操作控制参数包括:操作控制时间参数或操作控制事件参数中的至少一项; 
(2)磁盘操作控制处理单元702,用于在根据所述参数获取单元701获取的操作控制参数确定允许对所述当前磁盘区域进行操作时,执行所述磁盘操作; 
其中,根据采用的操作控制参数的不同,该磁盘操作控制处理单元702具体可以但不限于采用以下任一处理方式进行磁盘操作控制: 
处理方式一: 
若所述的操作控制时间参数包括允许磁盘操作间隔时间,则所述磁盘操作控制处理单元具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,禁止本次磁盘操作; 
处理方式二: 
若所述的操作控制时间参数包括允许磁盘操作间隔时间和数据保护有效时间,则所述磁盘操作控制处理单元具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述数据保护有效时间要求,若符合,则禁止本次磁盘操作,否则,允许本次磁盘操作。 
可选地,该磁盘控制器还可以包括时间信息记录单元703,用于通过时间索引值记录所述当前时间与上一次磁盘操作时间之间的间隔时长或上一次磁盘操作时间,且所述的时间索引值为采用精确度逐渐降低的非线性时间统计方式记录所述当前时间与上一次磁盘操作时间之间的间隔时长;其中,该时间信息记录单元具体可以采用以下任一记录方式进行时间信息的记录: 
记录方式一: 
若所述当前时间与上一次磁盘操作时间之间的间隔时长小于60分钟,则采用分钟作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于60分钟小于24小时,则采用小时作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于24小时小于1个月,则采用天作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于1个月,则采用月作为计时单位进行间隔时长或上一次磁盘操作时间的统计; 
记录方式二: 
若所述当前时间与上一次磁盘操作时间之间的间隔时长小于60分钟,则以分钟为单位记录所述间隔时长或上一次磁盘操作时间的分钟值,取值范围为0-60;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于60分钟小于24小时,则采用HH+60记录所述间隔时长或上一次磁盘操作时间,其中,HH表示实际间隔时长或上一次磁盘操作时间的小时值,单位为小时,取值范围为0-24;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于24小时小于1个月,则采用DD+83记录所述间隔时长或上一次磁盘操作时间,其中,DD表示实际间隔时长或上一次磁盘操作时间中的日期值,单位为天,取值范围为0-31;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于1个月,则采用MM+114记录所述间隔时长或上一次磁盘操作时间,其中,MM表示实际间隔时长或上一次磁盘操作时间的月份值,单位为月,取 值范围为0-141。 
基于上述时间信息记录方式,在该磁盘控制器中还可以包括刷新表记录单元704,用于采用分钟刷新表、小时刷新表、日刷新表或月刷新表中的至少一种表,分别记录采用对应的分钟、小时、日或月作为时间索引统计单位的扇区,并记录扇区对应的时间索引值。 
可选地,在该磁盘控制器中还可以包括非法修改时间识别单元705,用于识别当前系统时间与存储系统的最后一次磁盘操作时间之间的间隔是否大于预定的时间值,若大于,则拒绝针对存储系统的磁盘操作,否则,通知所述参数获取单元执行相应的操作。 
综上所述,本发明实施例采用了一种简单的、未基于应用和操作系统的磁盘写保护方式,从而可以针对磁盘中存储数据的有效保护,例如,可以满足塞班斯法案对于文件在一定时间内不允许被改写的要求,等等。本发明实施例提供的实现方案具有易于实现、物理上安全可靠及能够有效防范非法意图的修改、控制方式灵活等优点。 
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。 

Claims (12)

1.一种磁盘操作的保护方法,其特征在于,包括:
接收磁盘操作请求,磁盘控制器获取待操作的当前磁盘区域对应的操作控制参数,根据所述操作控制参数判断是否允许操作当前磁盘区域,所述的操作控制参数包括操作控制时间参数;
当根据所述操作控制参数确定允许对所述当前磁盘区域进行操作时,则执行所述磁盘操作;
所述的操作控制时间参数包括允许磁盘操作间隔时间,且判断是否允许操作当前磁盘区域的过程具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,禁止本次磁盘操作;
或者,
所述的操作控制时间参数包括允许磁盘操作间隔时间和数据保护有效时间,且判断是否允许操作当前磁盘区域的过程具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述数据保护有效时间要求,若符合,则禁止本次磁盘操作,否则,允许本次磁盘操作。
2.根据权利要求1所述的方法,其特征在于,所述的操作控制参数还包括操作控制事件参数。
3.根据权利要求2所述的方法,其特征在于,该方法还包括:
通过时间索引值记录所述当前时间与上一次磁盘操作时间之间的间隔时长,且所述的时间索引值为采用精确度逐渐降低的非线性时间统计方式记录所述当前时间与上一次磁盘操作时间之间的间隔时长。
4.根据权利要求3所述的方法,其特征在于,所述的非线性时间统计方式具体包括:
若所述当前时间与上一次磁盘操作时间之间的间隔时长小于60分钟,则采用分钟作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于60分钟小于24小时,则采用小时作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于24小时小于1个月,则采用天作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于1个月,则采用月作为计时单位进行间隔时长或上一次磁盘操作时间的统计;
或者,
若所述当前时间与上一次磁盘操作时间之间的间隔时长小于60分钟,则以分钟为单位记录所述间隔时长或上一次磁盘操作时间的分钟值,取值范围为0-60;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于60分钟小于24小时,则采用HH+60记录所述间隔时长或上一次磁盘操作时间,其中,HH表示实际间隔时长或上一次磁盘操作时间的小时值,单位为小时,取值范围为0-24;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于24小时小于1个月,则采用DD+83记录所述间隔时长或上一次磁盘操作时间,其中,DD表示实际间隔时长或上一次磁盘操作时间中的日期值,单位为天,取值范围为0-31;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于1个月,则采用MM+114记录所述间隔时长或上一次磁盘操作时间,其中,MM表示实际间隔时长或上一次磁盘操作时间的月份值,单位为月,取值范围为0-141。
5.根据权利要求4所述的方法,其特征在于,该方法还包括:
采用分钟刷新表、小时刷新表、日刷新表或月刷新表中的至少一种表,分别记录采用对应的分钟、小时、日或月作为时间索引统计单位的扇区信息,并记录扇区对应的时间索引值。
6.根据权利要求1至5任一项所述的方法,其特征在于,在获取所述磁盘操作控制参数之前,该方法还包括:
判断当前系统时间与存储系统的最后一次磁盘操作时间之间的间隔是否大于预定的时间值,若判断为是,则拒绝针对存储系统的磁盘操作,若判断为否则执行获取所述磁盘操作控制参数的步骤。
7.一种磁盘控制器,其特征在于,包括:
参数获取单元,用于在接收磁盘操作请求后,获取待操作的当前磁盘区域对应的操作控制参数,所述操作控制参数用于表示是否允许操作当前磁盘区域,所述的操作控制参数包括操作控制时间参数;
磁盘操作控制处理单元,用于根据所述参数获取单元获取的操作控制参数判断是否允许操作当前磁盘区域,并在确定允许对所述当前磁盘区域进行操作时,执行所述磁盘操作;
若所述的操作控制时间参数包括允许磁盘操作间隔时间,则所述磁盘操作控制处理单元具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,禁止本次磁盘操作;
或者,
若所述的操作控制时间参数包括允许磁盘操作间隔时间和数据保护有效时间,则所述磁盘操作控制处理单元具体包括:判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述允许磁盘操作间隔时间要求,若符合,则允许本次磁盘操作,否则,判断当前时间与上一次磁盘操作时间之间的间隔时长是否符合所述数据保护有效时间要求,若符合,则禁止本次磁盘操作,否则,允许本次磁盘操作。
8.根据权利要求7所述的磁盘控制器,其特征在于,所述的操作控制参数还包括操作控制事件参数。
9.根据权利要求8所述的磁盘控制器,其特征在于,该磁盘控制器还包括时间信息记录单元,用于通过时间索引值记录所述当前时间与上一次磁盘操作时间之间的间隔时长或上一次磁盘操作时间,且所述的时间索引值为采用精确度逐渐降低的非线性时间统计方式记录所述当前时间与上一次磁盘操作时间之间的间隔时长或上一次磁盘操作时间。
10.根据权利要求9所述的磁盘控制器,其特征在于,所述时间信息记录单元中所述非线性时间统计方式具体包括:
若所述当前时间与上一次磁盘操作时间之间的间隔时长小于60分钟,则采用分钟作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于60分钟小于24小时,则采用小时作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于24小时小于1个月,则采用天作为计时单位进行间隔时长或上一次磁盘操作时间的统计;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于1个月,则采用月作为计时单位进行间隔时长或上一次磁盘操作时间的统计;
或者,
若所述当前时间与上一次磁盘操作时间之间的间隔时长小于60分钟,则以分钟为单位记录所述间隔时长或上一次磁盘操作时间的分钟值,取值范围为0-60;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于60分钟小于24小时,则采用HH+60记录所述间隔时长或上一次磁盘操作时间,其中,HH表示实际间隔时长或上一次磁盘操作时间的小时值,单位为小时,取值范围为0-24;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于24小时小于1个月,则采用DD+83记录所述间隔时长或上一次磁盘操作时间,其中,DD表示实际间隔时长或上一次磁盘操作时间中的日期值,单位为天,取值范围为0-31;若所述当前时间与上一次磁盘操作时间之间的间隔时长大于1个月,则采用MM+114记录所述间隔时长或上一次磁盘操作时间,其中,MM表示实际间隔时长或上一次磁盘操作时间的月份值,单位为月,取值范围为0-141。
11.根据权利要求10所述的磁盘控制器,其特征在于,该磁盘控制器还包括刷新表记录单元,用于采用分钟刷新表、小时刷新表、日刷新表或月刷新表中的至少一种表,分别记录采用对应的分钟、小时、日或月作为时间索引统计单位的扇区信息,并记录扇区对应的时间索引值。
12.根据权利要求7至11任一项所述的磁盘控制器,其特征在于,该磁盘控制器还包括非法修改时间识别单元,用于识别当前系统时间与存储系统的最后一次磁盘操作时间之间的间隔是否大于预定的时间值,若大于,则拒绝针对存储系统的磁盘操作,否则,通知所述参数获取单元。
CN2008100981416A 2008-05-19 2008-05-19 一种磁盘操作的保护方法及磁盘控制器 Active CN101286142B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2008100981416A CN101286142B (zh) 2008-05-19 2008-05-19 一种磁盘操作的保护方法及磁盘控制器
US12/417,391 US8054722B2 (en) 2008-05-19 2009-04-02 Disk operation protection method and disk controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100981416A CN101286142B (zh) 2008-05-19 2008-05-19 一种磁盘操作的保护方法及磁盘控制器

Publications (2)

Publication Number Publication Date
CN101286142A CN101286142A (zh) 2008-10-15
CN101286142B true CN101286142B (zh) 2010-12-08

Family

ID=40058356

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100981416A Active CN101286142B (zh) 2008-05-19 2008-05-19 一种磁盘操作的保护方法及磁盘控制器

Country Status (2)

Country Link
US (1) US8054722B2 (zh)
CN (1) CN101286142B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201137660A (en) * 2009-12-23 2011-11-01 Ibm Method and system for protecting an operating system against unauthorized modification
CN107301018A (zh) * 2017-06-15 2017-10-27 郑州云海信息技术有限公司 一种在集群存储上的worm技术应用方法
US20230171099A1 (en) * 2021-11-27 2023-06-01 Oracle International Corporation Methods, systems, and computer readable media for sharing key identification and public certificate data for access token verification
CN115168908B (zh) * 2022-09-05 2022-12-06 深圳市科力锐科技有限公司 文件保护方法、装置、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1176427A (zh) * 1997-07-24 1998-03-18 谢用富 硬盘选择性写保护装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001048753A1 (fr) * 1999-12-28 2001-07-05 Mitsubishi Chemical Corporation Disque optique reinscriptible a changement de phase dote partiellement d'une region rom et procedes d'enregistrement et d'effacement de donnees pour disques optiques

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1176427A (zh) * 1997-07-24 1998-03-18 谢用富 硬盘选择性写保护装置

Also Published As

Publication number Publication date
CN101286142A (zh) 2008-10-15
US8054722B2 (en) 2011-11-08
US20090285068A1 (en) 2009-11-19

Similar Documents

Publication Publication Date Title
US7965465B2 (en) Techniques for storing shingle blocks in a cache memory using a data storage device
CN102004681B (zh) 使用写时分配快照以实现持续数据保护的方法
US20060224902A1 (en) Data management system for removable storage media
CN100541439C (zh) 快闪存储器数据校正及擦除技术
US8745318B2 (en) Parameter tracking for memory devices
CN100483362C (zh) 非易失性存储系统的内部维护调度请求
US8464021B2 (en) Address caching stored translation
US20030196036A1 (en) System and method to guarantee overwrite of expired data in a virtual tape server
CN101286142B (zh) 一种磁盘操作的保护方法及磁盘控制器
US7441085B2 (en) Memory control method for restoring data in a cache memory
WO2012167392A2 (en) Method and devices for secure deletion of data in a log structured file system
KR20160077343A (ko) 스토리지 장치 및 스토리지 장치의 동작 방법
US20070226402A1 (en) Data management and control system in semiconductor flush memory and semiconductor flush memory accommodation apparatus
KR20160055310A (ko) 불휘발성 메모리의 동작 방법 및 불휘발성 메모리를 포함하는 스토리지 장치의 동작 방법
CN101742263A (zh) 一种存储视频监控录像数据的方法
US7162602B2 (en) More granular and more efficient write protection for disk volumes
WO2009110305A1 (en) Memory system
CN103037203A (zh) 一种基于块存储的索引恢复方法和装置
CN1822017A (zh) 软件保护装置中的实时时钟校准方法
CN105404468A (zh) 绿能与非固态硬盘应用及其驱动器
US10528348B2 (en) Data management method for storage media
US20130054903A1 (en) Memory device and writing method thereof
KR101609980B1 (ko) 메모리 기반 저장장치의 주기적 갱신 장치 및 방법
US20230297248A1 (en) Memory controller and operating method thereof
Barbara Solid state drives: Part 5

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: CHENGDU CITY HUAWEI SAIMENTEKE SCIENCE CO., LTD.

Free format text: FORMER OWNER: HUAWEI TECHNOLOGY CO., LTD.

Effective date: 20090424

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20090424

Address after: Qingshui River District, Chengdu high tech Zone, Sichuan Province, China: 611731

Applicant after: Chengdu Huawei Symantec Technologies Co., Ltd.

Address before: Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Province, China: 518129

Applicant before: Huawei Technologies Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

Free format text: FORMER NAME: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee after: Huawei Symantec Technologies Co., Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee before: Chengdu Huawei Symantec Technologies Co., Ltd.

ASS Succession or assignment of patent right

Owner name: HUAWEI TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

Effective date: 20150609

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 611731 CHENGDU, SICHUAN PROVINCE TO: 518129 SHENZHEN, GUANGDONG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20150609

Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee after: Huawei Technologies Co., Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee before: Huawei Symantec Technologies Co., Ltd.