CN101369302A - 一种控制信息安全设备访问权限的方法和系统 - Google Patents

一种控制信息安全设备访问权限的方法和系统 Download PDF

Info

Publication number
CN101369302A
CN101369302A CNA2008102227584A CN200810222758A CN101369302A CN 101369302 A CN101369302 A CN 101369302A CN A2008102227584 A CNA2008102227584 A CN A2008102227584A CN 200810222758 A CN200810222758 A CN 200810222758A CN 101369302 A CN101369302 A CN 101369302A
Authority
CN
China
Prior art keywords
computing machine
information safety
safety devices
automatic running
running program
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.)
Granted
Application number
CNA2008102227584A
Other languages
English (en)
Other versions
CN101369302B (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.)
Feitian Technologies Co Ltd
Original Assignee
Beijing Feitian 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 Beijing Feitian Technologies Co Ltd filed Critical Beijing Feitian Technologies Co Ltd
Priority to CN2008102227584A priority Critical patent/CN101369302B/zh
Publication of CN101369302A publication Critical patent/CN101369302A/zh
Application granted granted Critical
Publication of CN101369302B publication Critical patent/CN101369302B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种控制信息安全设备访问权限的方法和系统,属于控制设备访问权限领域。方法包括:信息安全设备启动自动运行程序;提升自动运行程序的权限,在计算机的注册表中的光盘设备类的Properties键下创建安全Security项;并获取安全描述符的值;把安全描述符号的值设置为Security项的值;计算机根据Security项的值修改计算机的光盘设备类的访问权限;计算机中的应用程序向信息安全设备发送操作指令,完成计算机与信息安全设备的数据通讯。系统包括:信息安全设备与计算机,通过本发明使得信息安全设备能够在Windows操作系统下不受用户权限限制,并且解决了如何修改信息安全设备权限等各种问题。

Description

一种控制信息安全设备访问权限的方法和系统
技术领域
本发明涉及控制设备访问权限领域,特别涉及一种控制信息安全设备访问权限的方法和系统。
背景技术
由于目前被广泛应用的Windows操作系统是一个支持多用户、多任务的操作系统,因此,用户使用时的安全问题成为了非常关键的问题,因此Window操作系统需要对用户进行权限设置,所谓权限是指用户对系统资源的访问权利。权限的设置是基于用户和进程而言的,不同的用户访问计算机具有不同的权限。Windows的用户被分成许多组,常见的用户组有以下几种:
Administrator:管理员组;System:拥有和Administrator一样的,甚至比其还高的权限;Power User:高级用户组,在权限设置中,这个组的权限是仅次于Administrator的;User:普通用户组,这个组的用户无法对计算机系统进行改动;Guest:来宾组,来宾帐户的限制要比普通User帐号更多。并且,通常习惯称Admini strator、System和Power User为超级用户,User和Guest为非超级用户。
计算机中的注册表是一个庞大的数据库,用来存储计算机软硬件的各种配置数据,它包含Windows在运行期间不断引用的信息,例如,每个用户的配置文件、计算机上安装的应用程序以及每个应用程序可以创建的文档类型、文件夹和应用程序图标的属性表设置、系统上存在哪些硬件以及正在使用哪些端口,并且注册表取代了Windows3.x和MS-DOS配置文件(例如,Autoexec.bat和Config.sys)中使用的绝大多数基于文本的.ini文件。虽然几个Windows操作系统都有注册表,但这些操作系统的注册表有一些区别。
由于,注册表中记录了用户安装在计算机上的软件和每个程序的相关信息,用户可以通过注册表调整软件的运行性能,检测和恢复系统错误,定制桌面等。用户修改配置,只需要通过注册表编辑器,单击鼠标,即可轻松完成。系统管理员还可以通过注册表来完成系统远程管理。因而用户掌握了注册表,即掌握了对计算机配置的控制权,用户只需要通过注册表即可将自己计算机的工作状态调整到最佳。
信息安全设备(简称设备,如USB(Universal Serial BUS,通用串行总线)key等)是一种带有处理器和存储器的小型硬件装置,它通过计算机的数据通讯接口与计算机连接。现有信息安全设备的通讯可以通过SCSI(Small Computer System Interface-小型计算机系统接口)命令的方式来实现,SCSI是计算机连接外接设备的一种接口标准,能够提供更快的数据传输率。SCSI为方便开发者使用预留了扩展命令,为完成信息安全设备的SCSI通讯,开发者将SCSI扩展命令设计成信息安全设备的命令,以完成信息安全设备的功能,但是在Windows 2000及以上操作系统下,普通用户没有权限使用SCSI扩展命令,这就给SCSI设备的使用带来了很多的不便。按照SCSI协议标准,符合USB-SCSI接口标准的设备其描述符的特征是:在接口描述符中,字节0是描述符的字节长度,值为09h;字节1是描述符类型,值为04h;字节4是支持的终端号;字节5是类代码,值为08h;字节6为子类代码,值为00h;字节7是协议代码,值为50h。在类型描述符中,字节0是描述符的字节长度,字节2是SCSI规范的版本号。符合SCSI接口标准的设备的其它描述符中的字节,如设备描述符、配置描述符中的字节以及上述接口描述符和类型描述符中的其它字节仍按照USB协议中的规定设置。
其中,自动运行功能(Autorun)是USB-SCSI类设备所自带的一个功能,它使得对光盘、硬盘和海量存储等设备进行的操作变得更容易,一般习惯称此种能够自动运行起来的程序为自动运行程序。由于自动运行程序中包含了需要自动运行的命令,如改变驱动器图标、运行程序文件、可选快捷菜单等内容,所以当带有自动运行程序的光盘或海量存储等设备连接到计算机上时,自动运行程序会装载相应文件,例如GIF、JPEG、HTML文件、PDF文件,实现自动运行功能,自动运行程序还可以显示启动界面等。
发明人在实现本发明时,经过分析后发现:由于在Windows 2000及以上操作系统下,普通用户没有权限使用SCSI扩展命令,这就给SCSI设备的使用带来了很多的不便,因此信息安全设备在Windows操作系统下受用户权限限制。
发明内容
为了使信息安全设备能够在Windows操作系统下不受用户权限限制,并且解决如何修改信息安全设备权限等各种问题,本发明提供了一种控制信息安全设备访问权限的方法和系统。
一方面,提供了一种控制信息安全设备访问权限的方法,所述方法包括:
信息安全设备与计算机建立连接后,所述信息安全设备启动自动运行程序;
所述自动运行程序提升自身的权限;
所述自动运行程序在所述计算机的注册表中的光盘设备类的Properties键下,创建安全Security项;并获取安全描述符的值;
所述自动运行程序将所述Security项的值设置为所述安全描述符号的值;
所述计算机根据所述Security项的值修改所述计算机的光盘设备类的访问权限;
所述计算机中的应用程序向所述信息安全设备发送操作指令,所述信息安全设备执行所述操作指令,完成所述计算机与所述信息安全设备的数据通讯。
其中,所述自动运行程序提升所述信息安全设备的访问权限的步骤,之前还包括:
所述自动运行程序判断所述计算机的注册表的状态,如果所述注册表未被修改,则执行后续步骤;
相应地,如果所述注册表被修改为期望状态,则执行所述计算机中的应用程序向所述信息安全设备发送操作指令;
其中,所述期望状态具体为所述计算机中的应用程序向所述信息安全设备发送操作指令之前,所述注册表的相应状态。。
其中,所述自动运行程序提升所述信息安全设备的访问权限的步骤,具体包括:
所述自动运行程序启动自定义的Windows服务;
在所述Windows服务入口函数中打开所述注册表中的光盘设备类的Properties键;
或,
所述自动运行程序获取系统服务进程的安全令牌;
获取所述安全令牌的安全描述符;
获取所述安全令牌的安全描述符的自由访问控制列表;
在所述自由访问控制列表中添加当前登录用户的完全控制访问权限;
所述安全令牌具有所述当前登录用户的所有权限后,获取当前进程的安全令牌;
所述自动运行程序调用ImpersonateLoggedOnUser函数,使所述当前进程具有系统服务进程的权限;
或,
所述自动运行程序通过调用函数GetNamedSecurityInfo,获取注册表中光盘设备类的Properties键的自由访问控制列表;
调用函数BuildExplicitAccessWithName创建一个任何用户都可控制的访问控制实体;
将所述访问控制实体添加到所述自由访问控制列表中后,调用SetNamedSecurityInfo函数更新所述光盘设备类的Properties键的自由访问列表。
其中,所述自动运行程序启动自定义的Windows服务的步骤还包括:
所述自动运行程序判断所述自定义的Windows服务是否存在,若存在,则所述自动运行程序打开所述服务,若不存在,则所述自动运行程序创建一个自定义的Windows服务;
启动所述服务。
其中,所述自动运行程序获取安全描述符的值的步骤,具体包括:
所述自动运行程序使用预先定义的安全描述符值,或,所述自动运行程序使用计算得出的安全描述符的值。
其中,所述计算获取的安全描述符的值的步骤,具体包括:
所述自动运行程序构造一个安全描述符;
设置所述安全描述符中的访问对象的标识、权限,所述访问对象具体为用户和组;
获取所述安全描述符的二进制值。
其中,所述自动运行程序构造安全描述符的方法如下:
所述自动运行程序创建一个新的安全描述符;
或,
所述自动运行程序获取系统服务进程的安全令牌的安全描述符;
或,
所述自动运行程序获取注册表中的光盘设备类的安全描述符。
其中,所述设置所述安全描述符中的访问对象的标识、权限的步骤,具体包括:
设置所述安全描述符中的允许访问的访问对象的标识、权限,或,设置所述安全描述符中的拒绝访问的访问对象的标识、权限。
进一步地,所述获取所述安全描述符的二进制值的步骤之前,还包括:
判断所述安全描述符的格式,如果所述安全描述符是绝对格式,则执行后续步骤;如果所述安全描述符是相对格式,则将所述相对格式转换为所述绝对格式后,执行后续步骤。
当所述计算机的操作系统的版本是Vista及Vista以上的操作系统,则所述设置所述安全描述符中的访问对象的标识、权限的步骤之后,还包括:
设置所述安全描述符的强制性标签mandatory label。
进一步地,所述信息安全设备与计算机建立连接的步骤之后,还包括:
所述信息安全设备通过向所述计算机报告设备描述符为小型计算机系统接口光盘设备描述符,向所述计算机声明所述信息安全设备自身为光盘设备类型;
相应地,所述计算机中的应用程序向所述信息安全设备发送操作指令的步骤,具体包括:
所述计算机中的应用程序向所述信息安全设备发送光盘设备类型操作指令。
进一步地,所述计算机中的应用程序向所述信息安全设备发送操作指令的步骤,之前还包括:
计算机提示用户输入身份认证信息;
所述信息安全设备验证用户输入的身份认证信息是否合法,如果是,则所述信息安全设备允许所述用户使用所述信息安全设备,否则,信息安全设备拒绝所述用户使用所述信息安全设备。
其中,所述应用程序具体为:
预先在所述计算机保存的应用程序,或,通过所述信息安全设备的自动运行程序安装而获取的应用程序。
另一方面,提供了一种控制信息安全设备访问权限的系统,所述系统包括:信息安全设备与计算机,所述信息安全设备包括接口模块、自动运行模块和通信模块;
所述接口模块,用于与所述计算机建立连接;
所述自动运行模块,用于当所述信息安全设备和计算机的连接后,将所述自动运行程序发送给所述计算机,所述自动运行程序运行在所述计算机上;
所述通信模块,用于接收所述计算机发送的操作指令,执行所述操作指令,完成所述计算机与所述信息安全设备的数据通讯;
所述计算机包括接口模块、修改模块和通信模块;
所述接口模块,用于与所述信息安全设备建立连接;
所述修改模块,用于当所述计算机与所述信息安全设备建立连接后,根据所述自动运行程序设置的Security项的值,修改所述计算机的光盘设备类的访问权限;
所述通信模块,用于实现计算机中的应用程序向所述信息安全设备发送操作指令。
所述自动运行程序提升自身的权限,并在所述计算机的注册表中的光盘设备类的Properties键下创建安全Security项,再获取安全描述符的值,所述自动运行程序将所述Security项的值设置为所述安全描述符的值;
所述计算机根据所述Security项的值,修改所述计算机的光盘设备类的访问权限;
所述计算机中的应用程序向所述信息安全设备发送操作指令,所述信息安全设备执行所述操作指令,完成所述计算机与所述信息安全设备的数据通讯。
与现有技术相比,本发明的有益效果在于:一方面,本发明提供的一种通过修改注册表来控制信息安全设备访问权限的系统与方法,可以使所述信息安全设备的使用不会受到用户权限的限制,解决了信息安全设备无法在普通用户下使用的问题,另一方面,本发明提供的方法与系统解决了如何修改信息安全设备权限等各种问题,并且所述信息安全设备为无需安装驱动程序和应用程序的设备,使产品更有竞争力,应用更广泛。
附图说明
图1是本发明实施例1提供的控制信息安全设备访问权限的方法流程图;
图2是本发明实施例2提供的控制信息安全设备访问权限的方法流程图;
图3是本发明实施例3提供的控制信息安全设备访问权限的方法流程图;
图4是本发明实施例4提供的控制信息安全设备访问权限的系统示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
为了使信息安全设备能够在Windows操作系统下不受用户权限限制,并提高信息安全设备权限和指定用户权限,本发明提供了一种控制信息安全设备访问权限的方法,该方法内容如下:信息安全设备与计算机建立连接后,信息安全设备启动自动运行程序;自动运行程序提升自身的访问权限;自动运行程序在计算机的注册表中的光盘设备类的Properties键下,创建安全Security项,并获取安全描述符的值;自动运行程序将Security项的值设置为安全描述符号的值;计算机根据Security项的安全描述符号的值,修改计算机的光盘设备类的访问权限;计算机中的应用程序向信息安全设备发送操作指令,信息安全设备执行操作指令,完成计算机与信息安全设备的数据通讯。
其中,在自动运行程序提升信息安全设备的访问权限的步骤之前,本发明实施例提供的方法还包括:
自动运行程序判断计算机的注册表的状态,如果注册表未被修改,则执行后续步骤;
相应地,如果注册表被修改为期望状态,则执行计算机中的应用程序向信息安全设备发送操作指令。其中,该期望状态即为上述计算机中的应用程序向信息安全设备发送操作指令之前,注册表的相应状态。
参见如下各实施例,对上述控制信息安全设备访问权限的方法进行详细说明,具体内容详见如下:
实施例1
参见图1,本发明实施例提供了一种控制信息安全设备访问权限的方法,本发明实施例提供的方法适用于Windows 2000及以上的操作系统平台,为了便于说明本发明实施例以所述的信息安全设备具体为USB Key为例,具体内容参见如下:
步骤101、USB Key与计算机建立连接;
其中,通过将USB Key通过USB接口插入计算机的形式,建立起该USB Key与该计算机的连接关系。
步骤102、计算机向USB Key发送获取设备类型的请求;
步骤103、USB Key接收计算机的请求,并声明自身为光盘设备类型;
其中,在本实施例步骤103中,信息安全设备USB Key通过向计算机报告设备描述符为光盘设备描述符,从而实现声明该USB Key自身为光盘设备类型。
步骤104、USB Key启动自动运行程序;
其中,在本实施例步骤104中,自动运行程序由USB Key生产商预先编写,并存储在该USB Key中;
步骤105、自动运行程序判断计算机中的注册表状态,如果计算机中的注册表未被按照期望状态进行修改,则执行步骤106;如果计算机中的注册表已经被按期望状态进行了修改,则执行步骤114;
步骤106、自动运行程序判断自定义的Windows服务是否存在,若不存在,则执行步骤107;存在,则执行步骤108;
步骤107、自动运行程序创建一个自定义的Windows服务;
步骤108、启动上述自定义的Windows服务;
步骤109、在该Windows服务的入口函数中打开计算机的光盘设备类的“Properties”键;
步骤110、自动运行程序在打开的“Properties”键下面创建一个“Security”项;
步骤111、自动运行程序获取安全描述符的值;
其中,在本实施例步骤111中,上述安全描述符是用于指定安全对象所有者,以及用于指定安全对象允许(或拒绝)哪些用户和组进行访问及其访问权限;
在本实施例步骤111中,获取所述安全描述符的值的方法包括如下两种:直接使用预先定义的安全描述符的值和计算所述安全描述符的值,下面分别进行说明:
1、直接使用预先定义的安全描述符的值
其中,在本实施中,预先定义的安全描述符的值可以有很多种,如:
当static const BYTE everyone_sd[]=
     ″\x01\x00\x04\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00″
     ″\x14\x00\x00\x00\x02\x00\x1C\x00\x01\x00\x00\x00\x00\x00\x14\x00″
     ″\xFF\x01\x1F\x10\x01\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00″;
代表任何人都有完全控制的权限,不包括guest用户及针对vista系统下的IE7保护模式;
当static const BYTE everyone_sd[]=
   ″\x01\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00″
   ″\x00\x00\x00\x00″;
代表任何人都有完全控制的权限,包括guest和针对vi sta系统下的IE7保护模式。
2、计算所述安全描述符的值;
在本实施例中,还可以计算安全描述符的值,具体步骤如下:
首先、自动运行程序构造一个安全描述符;
然后、设置安全描述符中允许(或拒绝)访问的用户和组的标识和权限;
其中,进一步地,若计算机所运行操作的系统是Vista及之上的系统,则设置安全描述符的mandatory label,否则,则不用设置安全描述符的mandatory label;其中,当需要设置安全描述符的mandatory label时,在本实施例所述的mandatory label可以设置为″S:(ML;;NW;;;LW)″,该″S:(ML;;NW;;;LW)″代表一个表示“对完整性级别为低low的对象设置为NO_WRITE_UP机制的系统访问控制列表”的强制性标签mandatory label。
其次,判断安全描述符是相对格式(self-relative)还是绝对格式(absolute),若是相对格式,则将相对格式转化为绝对格式;
再次,获取安全描述符的二进制值,则该获取的二进制值即为安全描述符的值;
其中,在本实施例中的计算安全描述符的值的步骤中,自动运行程序构造安全描述符的方法如下:
自动运行程序创建一个新的安全描述符;
或,
自动运行程序获取系统服务进程的安全令牌的安全描述符;
或,
自动运行程序获取注册表中的光盘设备类的安全描述符。
步骤112、自动运行程序将“Security”项的值设置为指定权限对应的安全描述符的值;
其中,根据上述步骤111获取的安全描述符的值,将上述步骤110创建的“Security”项的值设置为该安全描述符的值。
步骤113、计算机根据设置后的注册表的“Security”项的值,改变光盘设备类的所有权限;
其中,该步骤中计算机根据设置后的注册表的“Security”项的值,改变光盘设备类的所有权限,所谓光盘设备类是指系统中的所有光盘设备,系统在驱动安装时,每一种设备都进行归类,每一类设备由相同的驱动安装,并由相同的GUID(Globally Unique Ientifier,全局唯一标识符)来标识。例如该计算机存在多个光盘设备,如USB Key、软盘、硬盘、光盘等等。
步骤114、计算机提示用户输入身份认证信息;
步骤115、信息安全设备内部验证用户输入的身份认证信息是否合法,若身份认证信息不合法,则执行步骤116;若身份认证信息合法,则执行步骤117;
步骤116、信息安全设备通过计算机提示出错信息或者要求用户重新输入身份认证信息;
步骤117、信息安全设备允许用户使用信息安全设备;
步骤118、计算机中的应用程序向信息安全设备发送光盘设备类型操作指令,与信息安全设备进行数据通信,信息安全设备执行该操作指令;
其中,在本实施例步骤118中,计算机中的应用程序可以是计算机中预先存在的,也可以是通过信息安全设备中的自动运行程序安装上的。
综上所述,本发明实施例提供了一种控制信息安全设备访问权限的方法,本发明实施例提供的方法适用于Windows 2000及以上的操作系统平台,通过本发明实施例提供的方法实现了信息安全设备能够在Windows操作系统下不受用户权限限制,以及如何提高信息安全设备权限和指定用户权限等各种问题。
在实现本发明实施例提供的控制信息安全设备访问权限的方法时,本发明实施例1是通过创建Windows服务的方式实现提升访问权限的,其中,还可以通过安全令牌的方式实现提升访问权限,详见下述实施例2。
实施例2
参见图2,本发明实施例提供了一种控制信息安全设备访问权限的方法,本发明实施例在提升访问权限时,是通过安全令牌的方式实现,本发明实施例提供的方法适用于Windows 2000/XP/2003操作系统,仍以信息安全设备具体为USB Key为例进行说明,具体内容如下:
步骤201、USB Key与计算机建立连接;
步骤202、计算机向USB Key发送获取设备类型的请求;
步骤203、USB Key接收计算机的请求,并声明自身为光盘设备类型;
在本实施例步骤203中,信息安全设备USB Key通过向计算机报告设备描述符为光盘设备描述符,实现声明自身为光盘设备类型。
步骤204、USB Key启动自动运行程序;
在本实施例步骤204中,自动运行程序由USB Key生产商预先编写,并存储在USB Key中;
步骤205、自动运行程序判断计算机中的注册表状态,如果计算机中的注册表未被按照期望状态进行修改,则执行步骤206;如果计算机中的注册表已经被按期望状态进行了修改,则执行步骤216;
步骤206、自动运行程序获取系统服务进程的安全令牌;
其中,本步骤206中自动运行程序在获取系统服务进程的安全令牌时,可以通过指定某个系统服务进程的安全令牌方式实现,还可以通过选择任意一个系统服务进程的安全令牌方式实现,本发明实施例不限制该步骤自动运行程序获取系统服务进程的安全令牌的具体实现方式和方法。
步骤207、自动运行程序获取上述安全令牌的安全描述符;
其中,在本实施例步骤207中,安全描述符是用于指定安全对象所有者,以及用于指定安全对象允许或拒绝哪些用户和组进行访问及其访问权限。
步骤208、自动运行程序获取上述安全描述符的自由访问控制列表;
步骤209、自动运行程序在该自由访问控制列表中添加当前登录用户的完全控制访问权限,使安全令牌具有当前登录用户的所有权限;
步骤210、自动运行程序获取当前进程的安全令牌;
步骤211、自动运行程序调用ImpersonateLoggedOnUser函数,使当前进程具有系统服务进程的权限;
步骤212、自动运行程序打开计算机的注册表的光盘设备类的“Properties”键,并在“Properties”键下面创建一个“Security”项;
步骤213、自动运行程序获取安全描述符的值;
其中,在本实施例步骤213中,获取所述安全描述符的值的方法包括如下两种:直接使用预先定义的安全描述符的值和计算所述安全描述符的值,具体内容如下:
1、预先定义的安全描述符的值可以有很多种,如:
当static const BYTE everyone_sd[]=
        ″\x01\x00\x04\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00″
        ″\x14\x00\x00\x00\x02\x00\x1C\x00\x01\x00\x00\x00\x00\x00\x14\x00″
        ″\xFF\x01\x1F\x10\x01\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00″;
代表任何人都有完全控制的权限,不包括guest用户;
当static const BYTE everyone_sd[]=
        ″\x01\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00″
        ″\x00\x00\x00\x00″;
代表任何人都有完全控制的权限,包括guest用户;
2、计算安全描述符的值,具体步骤如下:
首先、自动运行程序构造一个安全描述符;
然后、设置安全描述符中允许或拒绝访问的用户和组的标识和权限;
其次、判断安全描述符是相对格式(self-relative)还是绝对格式(absolute),若是相对格式,则将相对格式转化为绝对格式;
最后、获取安全描述符的二进制值,则该二进制值即为安全描述符的值;
其中,在本实施例中的计算安全描述符的值的步骤中,自动运行程序构造安全描述符的方法如下:
自动运行程序创建一个新的安全描述符;
或,
自动运行程序获取系统服务进程的安全令牌的安全描述符;
或,
自动运行程序获取注册表中的光盘设备类的安全描述符。
步骤214、自动运行程序将“Security”项的值设置为指定权限对应的安全描述符的值;
步骤215、计算机根据设置后的注册表的“Security”项的值,改变光盘设备类的所有权限;
步骤216、计算机提示用户输入身份认证信息;
步骤217、信息安全设备内部验证用户输入的身份认证信息是否合法,若身份认证信息不合法,则执行步骤218,若身份认证信息合法,则执行步骤219;
步骤218、信息安全设备通过计算机提示出错信息或者要求用户重新输入身份认证信息;
步骤219、信息安全设备允许用户使用信息安全设备;
步骤220、计算机中的应用程序向信息安全设备发送光盘设备类型操作指令,与信息安全设备进行数据通信,信息安全设备执行该操作指令;
其中,在本实施例步骤220中,计算机中的应用程序可以是计算机中预先存在的,也可以是通过信息安全设备中的自动运行程序安装上的。
综上所述,本发明实施例提供了一种控制信息安全设备访问权限的方法,本发明实施例提供的方法适用于Windows 2000/XP/2003操作系统平台,通过本发明实施例提供的方法实现了信息安全设备能够在Windows操作系统下不受用户权限限制,以及如何提高信息安全设备权限和指定用户权限等各种问题。
在实现本发明实施例提供的控制信息安全设备访问权限的方法时,针对Windows 2000/XP/2003操作系统平台而言,本发明实施例2是通过安全令牌的方式实现提升访问权限,其中,还可以通过使用函数获取光盘设备类的“Properties”键的自由访问列表的方式实现,详见下述实施例3。
实施例3
参见图3,本发明实施例提供了一种控制信息安全设备访问权限的方法,本发明实施例在提升访问权限时,是通过使用函数获取光盘设备类的“Properties”键的自由访问列表的方式实现,本发明实施例提供的方法适用于Windows 2000/XP/2003操作系统,仍以信息安全设备具体为USB Key为例进行说明,具体内容如下:
步骤301、USB Key与计算机建立连接;
步骤302、计算机向USB Key发送获取设备类型的请求;
步骤303、USB Key接收计算机的请求并声明自身为光盘设备类型;
在本实施例步骤303中,信息安全设备通过向计算机报告设备描述符为光盘设备描述符,实现声明自身为光盘设备类型。
步骤304、USB Key启动自动运行程序;
在本实施例步骤304中,自动运行程序由USB Key生产商预先编写,并存储在USB Key中;
步骤305、自动运行程序判断计算机中的注册表状态,如果计算机中的注册表未被按照期望状态进行修改,则执行步骤306;如果计算机中的注册表已经被按期望状态进行了修改,则执行步骤314;
步骤306、自动运行程序使用函数GetNamedSecurityInfo获取光盘设备类的“Properties”键的自由访问列表;
步骤307、自动运行程序使用函数BuildExplicitAccessWithName创建一个任何人都可以控制的访问控制实体;
步骤308、自动运行程序将该访问控制实体加入到访问控制列表中;
步骤309、自动运行程序使用SetNamedSecurityInfo函数,更新光盘设备类的“Properties”键的自由访问列表;
步骤310、自动运行程序打开光盘设备类的“Properties”键,并在“Properties”子键下面创建一个“Security”项;
步骤311、自动运行程序获取安全描述符的值;
其中,在本实施例步骤310中,安全描述符是用于指定安全对象所有者,以及用于指定安全对象允许或拒绝哪些用户和组进行访问及其访问权限;
在本实施例步骤311中,获取所述安全描述符的值的方法包括如下两种:直接使用预先定义的安全描述符的值和计算所述安全描述符的值;具体内容如下:
1、直接使用预先定义的安全描述符的值
在本实施中,预先定义的安全描述符的值可以有很多种,如:
当static const BYTE everyone_sd[]=
        ″\x01\x00\x04\x90\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00″
        ″\x14\x00\x00\x00\x02\x00\x1C\x00\x01\x00\x00\x00\x00\x00\x14\x00″
        ″\xFF\x01\x1F\x10\x01\x01\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00″;
代表任何人都有完全控制的权限,不包括guest用户;
当static const BYTE everyone_sd[]=
        ″\x01\x00\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00″
        ″\x00\x00\x00\x00″;
代表任何人都有完全控制的权限,包括guest用户;
2、计算安全描述符的值,具体步骤如下:
首先、自动运行程序构造一个安全描述符;
然后、设置安全描述符中允许或拒绝访问的用户和组的标识和权限;
其次、判断安全描述符是相对格式(self-relative)还是绝对格式(absolute),若是相对格式,则将相对格式转化为绝对格式;
最后、获取安全描述符的二进制值,则该二进制值即为安全描述符的值;
其中,在本实施例中的计算安全描述符的值的步骤中,自动运行程序构造安全描述符的方法如下:
自动运行程序创建一个新的安全描述符;
或,
自动运行程序获取系统服务进程的安全令牌的安全描述符;
或,
自动运行程序获取注册表中的光盘设备类的安全描述符。
步骤312、自动运行程序将“Security”项的值设置为指定权限对应的安全描述符的值;
步骤313、计算机根据设置后的注册表的“Security”项的值来改变光盘设备类的所有权限;
步骤314、计算机提示用户输入身份认证信息;
步骤315、信息安全设备内部验证用户输入的身份认证信息是否合法,若身份认证信息不合法,则执行步骤316;若身份认证信息合法,则执行步骤317;
步骤316、信息安全设备通过计算机提示出错信息或者要求用户重新输入身份认证信息;
步骤317、信息安全设备允许用户使用信息安全设备;
步骤318、计算机中的应用程序向信息安全设备发送光盘设备类型操作指令,与信息安全设备进行数据通信,信息安全设备执行这个操作指令;
在本实施例步骤318中,计算机中的应用程序可以是计算机中预先存在的,也可以是通过信息安全设备中的自动运行程序安装上的。
综上所述,本发明实施例提供了一种控制信息安全设备访问权限的方法,本发明实施例提供的方法适用于Windows 2000/XP/2003操作系统平台,通过本发明实施例提供的方法实现了信息安全设备能够在Windows操作系统下不受用户权限限制,以及如何提高信息安全设备权限和指定用户权限等各种问题。
实施例4
参见图4,本发明实施例提供了一种控制信息安全设备访问权限的系统,系统包括:信息安全设备400与计算机500,其中,信息安全设备400包括接口模块401、自动运行模块402和通信模块403;
接口模块401,用于与计算机500建立连接;
自动运行模块402,用于当信息安全设备400和计算机500建立连接后,将自动运行程序发送给计算机500,自动运行程序运行在计算机500上;
通信模块403,用于接收计算机500发送的操作指令,执行该操作指令,完成计算机500与信息安全设备400的数据通讯;
其中计算机500包括接口模块501、修改模块502和通信模块503;
接口模块501,用于与信息安全设备400建立连接;
修改模块502,用于当计算机500与信息安全设备400建立连接后,根据自动运行程序设置的Security项的值,修改计算机500的光盘设备类的访问权限;
通信模块503,用于实现计算机500中的应用程序向信息安全设备400发送操作指令。
自动运行程序提升自身的权限,并在计算机500的注册表中的光盘设备类的Properties键下创建安全Security项,再获取安全描述符的值,自动运行程序将Security项的值设置为安全描述符的值;
计算机500根据Security项的值,修改计算机500的光盘设备类的访问权限;
计算机500中的应用程序向信息安全设备400发送操作指令,信息安全设备400执行操作指令,完成计算机500与信息安全设备400的数据通讯。
综上所述,本发明实施例提供了一种控制信息安全设备访问权限的系统,通过本发明实施例提供的系统实现了信息安全设备能够在Windows操作系统下不受用户权限限制,以及如何修改信息安全设备权限等各种问题。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (15)

1、一种控制信息安全设备访问权限的方法,其特征在于,所述方法包括:
信息安全设备与计算机建立连接后,所述信息安全设备启动自动运行程序;
所述自动运行程序提升自身的权限;
所述自动运行程序在所述计算机的注册表中的光盘设备类的Properties键下,创建安全Security项;并获取安全描述符的值;
所述自动运行程序将所述Security项的值设置为所述安全描述符号的值;
所述计算机根据所述Security项的值,修改所述计算机的光盘设备类的访问权限;
所述计算机中的应用程序向所述信息安全设备发送操作指令,所述信息安全设备执行所述操作指令,完成所述计算机与所述信息安全设备的数据通讯。
2、如权利要求1所述的方法,其特征在于,所述自动运行程序提升所述信息安全设备的访问权限的步骤,之前还包括:
所述自动运行程序判断所述计算机的注册表的状态,如果所述注册表未被修改,则执行后续步骤;
相应地,如果所述注册表被修改为期望状态,则执行所述计算机中的应用程序向所述信息安全设备发送操作指令。
3、如权利要求2所述的方法,其特征在于,所述期望状态具体为所述计算机中的应用程序向所述信息安全设备发送操作指令之前,所述注册表的相应状态。
4、如权利要求1所述的方法,其特征在于,所述自动运行程序提升所述信息安全设备的访问权限的步骤,具体包括:
所述自动运行程序启动自定义的Windows服务;
在所述Windows服务入口函数中打开所述注册表中的光盘设备类的Properties键;
或,
所述自动运行程序获取系统服务进程的安全令牌;
获取所述安全令牌的安全描述符;
获取所述安全令牌的安全描述符的自由访问控制列表;
在所述自由访问控制列表中添加当前登录用户的完全控制访问权限;
所述安全令牌具有所述当前登录用户的所有权限后,获取当前进程的安全令牌;
所述自动运行程序调用ImpersonateLoggedOnUser函数,使所述当前进程具有系统服务进程的权限;
或,
所述自动运行程序通过调用函数GetNamedSecurityInfo,获取注册表中光盘设备类的Properties键的自由访问控制列表;
调用函数BuildExplicitAccessWithName创建一个任何用户都可控制的访问控制实体;
将所述访问控制实体添加到所述自由访问控制列表中后,调用SetNamedSecurityInfo函数更新所述光盘设备类的Properties键的自由访问列表。
5、如权利要求4所述的方法,其特征在于,所述自动运行程序启动自定义的Windows服务的步骤还包括:
所述自动运行程序判断所述自定义的Windows服务是否存在,若存在,则所述自动运行程序打开所述服务,若不存在,则所述自动运行程序创建一个自定义的Windows服务;
启动所述服务。
6、如权利要求1所述的方法,其特征在于,所述自动运行程序获取安全描述符的值的步骤,具体包括:
所述自动运行程序使用预先定义的安全描述符值,或,所述自动运行程序使用计算出的安全描述符的值。
7、如权利要求6所述的方法,其特征在于,所述计算安全描述符的值的步骤,具体包括:
所述自动运行程序构造一个安全描述符;
设置所述安全描述符中的访问对象的标识、权限,所述访问对象具体为用户和组;
获取所述安全描述符的二进制值。
8、如权利要求7所述的方法,其特征在于,所述构造安全描述符的方法如下:
所述自动运行程序创建一个新的安全描述符;
或,
所述自动运行程序获取系统服务进程的安全令牌的安全描述符;
或,
所述自动运行程序获取注册表中的光盘设备类的安全描述符。
9、如权利要求7所述的方法,其特征在于,所述设置所述安全描述符中的访问对象的标识、权限的步骤,具体包括:
设置所述安全描述符中的允许访问的访问对象的标识、权限,或,设置所述安全描述符中的拒绝访问的访问对象的标识、权限。
10、如权利要求7所述的方法,其特征在于,所述获取所述安全描述符的二进制值的步骤之前,还包括:
判断所述安全描述符的格式,如果所述安全描述符是绝对格式,则执行后续步骤;如果所述安全描述符是相对格式,则将所述相对格式转换为所述绝对格式后,执行后续步骤。
11、如权利要求7所述的方法,其特征在于,当所述计算机的操作系统的版本是Vista及Vista以上的操作系统,则设置所述安全描述符中的访问对象的标识、权限的步骤之后,还包括:
设置所述安全描述符的强制性标签mandatory label。
12、如权利要求1所述的方法,其特征在于,所述信息安全设备与计算机建立连接的步骤之后,还包括:
所述信息安全设备通过向所述计算机报告设备描述符为小型计算机系统接口光盘设备描述符,向所述计算机声明所述信息安全设备自身为光盘设备类型;
相应地,所述计算机中的应用程序向所述信息安全设备发送操作指令的步骤,具体包括:
所述计算机中的应用程序向所述信息安全设备发送光盘设备类型操作指令。
13、如权利要求1所述的方法,其特征在于,所述计算机中的应用程序向所述信息安全设备发送操作指令的步骤,之前还包括:
所述计算机提示用户输入身份认证信息;
所述信息安全设备验证用户输入的身份认证信息是否合法,如果是,则所述信息安全设备允许所述用户使用所述信息安全设备,否则,所述信息安全设备拒绝所述用户使用所述信息安全设备。
14、如权利要求1所述的方法,其特征在于,所述应用程序具体为:
预先在所述计算机中保存的应用程序,或,通过所述信息安全设备的自动运行程序安装到所述计算机中的应用程序。
15、一种控制信息安全设备访问权限的系统,其特征在于,所述系统包括:信息安全设备与计算机,所述信息安全设备包括接口模块、自动运行模块和通信模块;
所述接口模块,用于与所述计算机建立连接;
所述自动运行模块,用于当所述信息安全设备与所述计算机建立连接后,将所述自动运行程序发送给所述计算机,所述自动运行程序运行在所述计算机中;
所述通信模块,用于接收所述计算机发送的操作指令,执行所述操作指令,完成所述计算机与所述信息安全设备的数据通讯;
所述计算机包括接口模块、修改模块和通信模块;
所述接口模块,用于与所述信息安全设备建立连接;
所述修改模块,用于当所述计算机与所述信息安全设备建立连接后,根据所述自动运行程序设置的Security项的值,修改所述计算机的光盘设备类的访问权限;
所述通信模块,用于实现所述计算机中的应用程序向所述信息安全设备发送操作指令;
所述自动运行程序提升自身的权限,并在所述计算机的注册表中的光盘设备类的Properties键下创建安全Security项,再获取安全描述符的值,所述自动运行程序把所述Security项的值设置为所述安全描述符的值;
所述计算机根据所述Security项的值,修改所述计算机的光盘设备类的访问权限;
所述计算机中的应用程序向所述信息安全设备发送操作指令,所述信息安全设备执行所述操作指令,完成所述计算机与所述信息安全设备的数据通讯。
CN2008102227584A 2008-09-24 2008-09-24 一种控制信息安全设备访问权限的方法和系统 Active CN101369302B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008102227584A CN101369302B (zh) 2008-09-24 2008-09-24 一种控制信息安全设备访问权限的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008102227584A CN101369302B (zh) 2008-09-24 2008-09-24 一种控制信息安全设备访问权限的方法和系统

Publications (2)

Publication Number Publication Date
CN101369302A true CN101369302A (zh) 2009-02-18
CN101369302B CN101369302B (zh) 2011-04-27

Family

ID=40413113

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008102227584A Active CN101369302B (zh) 2008-09-24 2008-09-24 一种控制信息安全设备访问权限的方法和系统

Country Status (1)

Country Link
CN (1) CN101369302B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103020500A (zh) * 2011-09-28 2013-04-03 联想(北京)有限公司 登录认证方法和电子设备
CN103246833A (zh) * 2012-02-01 2013-08-14 精品科技股份有限公司 低权限模式下执行高权限软件的方法
WO2014190788A1 (en) * 2013-05-28 2014-12-04 Tencent Technology (Shenzhen) Company Limited Method, apparatus and system for acquiring input events
CN107018140A (zh) * 2017-04-24 2017-08-04 深信服科技股份有限公司 一种权限控制方法和系统
CN109800561A (zh) * 2018-12-29 2019-05-24 360企业安全技术(珠海)有限公司 驱动权限控制方法、客户端、系统及存储介质
CN110740102A (zh) * 2019-09-29 2020-01-31 苏州浪潮智能科技有限公司 一种通信方法、系统、设备及计算机可读存储介质
CN112565209A (zh) * 2020-11-24 2021-03-26 浪潮思科网络科技有限公司 一种网元设备访问控制方法及设备
CN114217588A (zh) * 2014-07-25 2022-03-22 费希尔-罗斯蒙特系统公司 基于最小特权的过程控制软件安全架构

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2713377B1 (fr) * 1993-12-03 1995-12-29 Thomson Csf Dispositif de sécurisation de systèmes d'informations, notamment d'un système d'informations utilisé en micro-informatique.
CN100437618C (zh) * 2006-12-29 2008-11-26 北京飞天诚信科技有限公司 一种便携式信息安全设备
CN100462949C (zh) * 2007-02-12 2009-02-18 北京飞天诚信科技有限公司 一种可自动安装的信息安全设备及其控制方法
CN101018131B (zh) * 2007-02-16 2010-11-03 北京飞天诚信科技有限公司 一种具有功能选择装置的信息安全设备及其控制方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103020500A (zh) * 2011-09-28 2013-04-03 联想(北京)有限公司 登录认证方法和电子设备
CN103246833A (zh) * 2012-02-01 2013-08-14 精品科技股份有限公司 低权限模式下执行高权限软件的方法
WO2014190788A1 (en) * 2013-05-28 2014-12-04 Tencent Technology (Shenzhen) Company Limited Method, apparatus and system for acquiring input events
CN114217588A (zh) * 2014-07-25 2022-03-22 费希尔-罗斯蒙特系统公司 基于最小特权的过程控制软件安全架构
CN107018140A (zh) * 2017-04-24 2017-08-04 深信服科技股份有限公司 一种权限控制方法和系统
CN109800561A (zh) * 2018-12-29 2019-05-24 360企业安全技术(珠海)有限公司 驱动权限控制方法、客户端、系统及存储介质
CN110740102A (zh) * 2019-09-29 2020-01-31 苏州浪潮智能科技有限公司 一种通信方法、系统、设备及计算机可读存储介质
CN110740102B (zh) * 2019-09-29 2021-10-15 苏州浪潮智能科技有限公司 一种通信方法、系统、设备及计算机可读存储介质
US11792195B2 (en) 2019-09-29 2023-10-17 Inspur Suzhou Intelligent Technology Co., Ltd. Communication method, system and device and computer-readable storage medium
CN112565209A (zh) * 2020-11-24 2021-03-26 浪潮思科网络科技有限公司 一种网元设备访问控制方法及设备

Also Published As

Publication number Publication date
CN101369302B (zh) 2011-04-27

Similar Documents

Publication Publication Date Title
CN101369302B (zh) 一种控制信息安全设备访问权限的方法和系统
US10445258B1 (en) Method for creation of device drivers and device objects for peripheral devices
CN102938039B (zh) 针对应用的选择性文件访问
US8909940B2 (en) Extensible pre-boot authentication
CN102004655B (zh) 自动安装驱动程序的装置及方法
CN102314373B (zh) 一种基于虚拟化技术实现安全工作环境的方法
EP2705422B1 (en) Dynamically redirecting boot to another operating system
US9413746B2 (en) Extension point application and configuration of a login module
US20090319806A1 (en) Extensible pre-boot authentication
US20140298324A1 (en) System and method for automated configuration of software installation package
US20080104705A1 (en) Setting group policy by device ownership
CN102682014A (zh) 在浏览器上实现的开放式插件管理平台及插件管理方法
CN102495750A (zh) 虚拟桌面配置和操作技术
US20090089881A1 (en) Methods of licensing software programs and protecting them from unauthorized use
US8370957B2 (en) Method and apparatus for transmitting contents with limited system permissions
JP2008524686A (ja) コンピュータ装置においてアプリケーションを保守する方法
JP2009507270A (ja) パーソナルインターネットコミュニケータのための検証されたコンピューティング環境
CN101548284A (zh) 软件许可证中的条件策略
US7203697B2 (en) Fine-grained authorization using mbeans
CN103997502A (zh) 一种基于云计算数据中心安全增强模型的设计方法
US6418484B1 (en) Method of remotely executing computer processes
US7849055B2 (en) Method and system for limiting instances of a client-server program within a restricted distributed network
US20130073729A1 (en) User terminal, and method and apparatus for controlling the software management thereof
CN110889126A (zh) 一种优化的Web应用的权限控制方法
KR20110005991A (ko) 임베디드 시스템 및 그 동작 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: FEITIAN TECHNOLOGIES CO., LTD.

Free format text: FORMER NAME: BEIJING FEITIAN CHENGXIN SCIENCE + TECHNOLOGY CO. LTD.

CP03 Change of name, title or address

Address after: 100085 Beijing city Haidian District Xueqing Road No. 9 Ebizal building B block 17 layer

Patentee after: Feitian Technologies Co., Ltd.

Address before: 100083, Haidian District, Xueyuan Road, No. 40 research, 7 floor, 5 floor, Beijing

Patentee before: Beijing Feitian Chengxin Science & Technology Co., Ltd.