CN116090000A - 文件安全管理方法、***、设备、介质和程序产品 - Google Patents
文件安全管理方法、***、设备、介质和程序产品 Download PDFInfo
- Publication number
- CN116090000A CN116090000A CN202211671652.9A CN202211671652A CN116090000A CN 116090000 A CN116090000 A CN 116090000A CN 202211671652 A CN202211671652 A CN 202211671652A CN 116090000 A CN116090000 A CN 116090000A
- Authority
- CN
- China
- Prior art keywords
- user
- file
- key
- cpk
- private key
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2211/00—Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
- G06F2211/007—Encryption, En-/decode, En-/decipher, En-/decypher, Scramble, (De-)compress
- G06F2211/008—Public Key, Asymmetric Key, Asymmetric Encryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Automation & Control Theory (AREA)
- Storage Device Security (AREA)
Abstract
本公开提供了一种文件安全管理方法、***、设备、存储介质和程序产品,可以应用于信息安全技术领域。该方法包括:响应于用户的文件访问请求,基于SM9私钥认证用户的身份,SM9私钥基于用户标识生成,包含于文件访问请求中;用户身份认证通过后,基于预设权限判定规则匹配用户的主体属性、文件的客体属性和用户的工作环境信息,得到用户的文件访问权限;当用户有权访问文件时,基于用户标识获取用户的CPK公钥,基于CPK公钥计算用户的CPK私钥,CPK公钥与用户标识对应预存于管理***中;基于CKP私钥解密文件的SM4对称加密秘钥,使用户基于SM4对称加密秘钥访问文件。
Description
技术领域
本公开涉及信息安全领域,具体地涉及一种文件安全管理方法、***、设备、介质和程序产品。
背景技术
随着计算机技术的飞速发展,数据安全越来越受到重视。对电子文件常见的安全防护措施是采用数据防泄露产品,主要通过在网络边界对传输数据进行过滤和对离线电子文件进行加密,来防止文件的泄露。但是,如果能够获得电子文件的备份,或者获得其加密密钥,即可获得电子文件的所有的权限。相关产品难以满足对离线电子文件进行分类分级管理的要求。
常见的数据加密类的数据防泄漏产品能够对离线电子文件提供安全保护,但难以提供更细则的权限管理,只要能够获得文件的解密密钥,即可获得文件的所有管理权限。无法提供分类、分级安全管理功能。例如,微软公司的RMS属于权限控制类数据防泄漏产品,但该产品需要与微软的AD和Office配合使用,无法在不同AD域、非windows环境中使用,也无法对非office离线电子文件提供保护。再例如,金山公司也推出过权限控制类数据防泄露的WPS产品,该产品在判断用户权限时,未考虑工作环境等安全因素,且不具备对文件操作的审计能力。因此,需要设计一种工具和方法,通过对离线状态下的电子文件持续进行权限控制,避免只要获得文件的备份即可不受控制的随意修改和扩散,而造成数据泄露;并以此为基础实现对数据的分类、分级安全管理。
发明内容
鉴于上述问题,本公开提供了提高数据安全性的文件安全管理方法、***、设备、介质和程序产品。
根据本公开的第一个方面,提供了一种文件安全管理方法,包括:响应于用户的文件访问请求,基于SM9私钥认证用户的身份,所述SM9私钥基于用户标识生成,包含于所述文件访问请求中;当用户身份认证通过时,基于预设权限判定规则匹配用户的主体属性、文件的客体属性和用户的工作环境信息,得到用户的文件访问权限;当用户有权访问文件时,基于用户标识获取用户的CPK公钥,计算CPK私钥所述CPK公钥与用户标识对应预存于管理***中;基于所述CKP私钥解密所述文件的SM4对称加密秘钥,使用户基于所述SM4对称加密秘钥访问所述文件。
根据本公开的实施例,所述基于预设权限判定规则匹配用户的主体属性、所述文件访问请求中文件的客体属性和用户的工作环境信息,得到用户的文件访问权限包括:当用户身份认证通过时,获取预存的用户主体属性和所述文件访问请求中包括的文件的客体属性,并抓取当前用户的工作环境信息;基于预设的权限判定规则,判定所述主体属性是否匹配所述客体属性的授权要求,以及判定用户是否有权在当前工作环境中访问所述文件;当所述用户在所述文件的访问授权范围内且在当前工作环境中有权时,授予所述用户访问所述文件权限。
根据本公开的实施例,当用户创建文件时,所述方法包括:给所述文件添加文件标签,所述文件标签包括标签头和标签体,所述标签头包括文件的客体属性,所述标签体用于记录文件的操作;基于用户的SM9私钥生成所述文件标签和所述文件的数字签名。
根据本公开的实施例,当用户有权访问文件时,在计算所述CKP私钥之前,所述方法还包括:基于所述用户的SM9私钥解密所述文件标签的数字签名,获取所述文件的客体属性;比较所述文件访问请求中的客体属性和解密得到的客体属性;当所述文件访问请求中的客体属性和解密得到的客体属性内容一致时,计算CPK私钥。
根据本公开的实施例,基于所述用户的SM9私钥解密所述文件的数字签名,获取所述文件的客体属性之前,所述方法还包括:生成随机数,使用所述文件访问请求中的SM9私钥加密所述随机数;基于预存的用户身份信息解密验证所述随机数,以确认用户身份。
根据本公开的实施例,在确认所述用户身份且比较所述客体属性之后,在计算所述CKP私钥之前,所述方法还包括:判断所述用户的用户标识是否属于所述客体属性中的加密标志和授权清单;当所述用户的用户标识属于所述客体属性中的加密标志和授权清单时,计算所述CKP私钥。
根据本公开的实施例,所述方法还包括:基于SM4对称加密秘钥加密所述文件,所述客体属性包括的加密标志对应的CPK公钥加密所述SM4对称加密秘钥;其中,所述CPK公钥为所述用户的CPK公钥或所述用户基于所述公钥矩阵提供的其他用户的CPK公钥。
根据本公开的实施例,所述方法还包括:响应于用户对文件的操作,更新所述文件的标签体,所述操作包括对所述文件和所述客体属性的修改;保存所述修改时,使用所述SM4对称密钥重新加密所述文件,使用所述用户的SM9私钥进行更新后的文件标签和所述文件的数字签名,使用所述客体属性包括的加密标志对应的CPK公钥加密所述SM4对称密钥。
根据本公开的实施例,在用户访问文件的过程中,所述方法包括:响应于用户对文件的操作,重新读取所述主体属性、客体属性、工作环境信息,基于预设的权限判定规则判断用户是否具备执行所述操作的权限;当用户具备执行所述操作的权限时,执行所述操作;当用户不具备执行所述操作的权限时,终止所述操作。
本公开的第二个方面提供了一种文件安全管理***,包括:终端文件管理软件模块,用于响应于用户的文件访问请求,基于SM9私钥认证用户的身份,所述SM9私钥基于用户标识生成;用户管理与策略中心模块,用于当用户身份认证通过后,基于预设权限判定规则匹配用户的主体属性、文件的客体属性和用户的工作环境信息识别用户的文件访问权限;CPK组合公钥管理中心模块,当用户有权访问文件时,获取用户的CPK公钥,计算CPK私钥,所述CPK公钥与用户标识对应预存于管理***中;终端文件管理软件模块,还用于基于所述CKP私钥解密所述文件的SM4对称加密秘钥,使用户基于所述SM4对称加密秘钥访问所述文件。
本公开的第三方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述文件安全管理方法。
本公开的第四方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述文件安全管理方法。
本公开的第五方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述文件安全管理方法。
附图说明
通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:
图1示意性示出了根据本公开实施例的文件安全管理方法、装置、设备、介质和程序产品的应用场景图;
图2示意性示出了根据本公开实施例的文件安全管理方法的流程图;
图3示意性示出了根据本公开实施例的文件安全管理***的示意图;
图4示意性示出了根据本公开实施例的用户权限决策的示意图;
图5示意性示出了根据本公开实施例的第一种解密响应模式示意图;
图6示意性示出了根据本公开实施例的第二种解密响应模式示意图;
图7示意性示出了根据本公开实施例的第三解密响应模式示意图;
图8示意性示出了根据本公开实施例的文件安全管理***的结构框图;以及
图9示意性示出了根据本公开实施例的适于实现文件安全管理方法的电子设备的方框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有A、B和C中至少一个的***”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和C、和/或具有A、B、C的***等)。
需要说明的是,本公开提供的文件安全管理方法和***可用于金融领域在信息安全领域的应用,也可用于除金融领域之外的任意领域,本公开文件安全管理方法和***的应用领域不做限定。
在本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供、公开和应用等处理,均符合相关法律法规的规定,采取了必要保密措施,且不违背公序良俗。
在本公开的技术方案中,在获取或采集用户个人信息之前,均获取了用户的授权或同意。
下面将对本公开实施例涉及到的专业术语解释进行解释说明。
UCON使用控制模型是Sandhu在2002年首次提出了使用控制(UCON,UsageContro1)概念。UCON对传统的访问控制进行了扩展,定义了授权(Authorization)、义务(Obligation)和条件(Condition)三个决定性因素,同时提出了存取控制的连续性(continuity)和可变性(mutability)属性,在主体访问客体前及访问期间,通过定期轮询或特定动作的触发,不断检测主体是否存在对应的权限,以确定是否允许授权访问。与传统访问控制模型相比,UCON在灵活性和授权策略安全性方面更加优越,是一种新型的访问控制模型,也被称为下一代访问控制模型。
UCON主要包括一下六个概念:主体和主体属性,主体是可以对客体拥有某种使用权限的主动实体。可以是用户所在的组织(用户组)、用户本身、设备终端、服务程序、进程或线程等;主体属性标识了主体能力的特征,是权限决策过程中的重要参数。常见的主体属性有:用户名(主体的唯一标识)、用户组、角色和安全级别等;客体和客体属性,按照权限集合的规定接受主体访问的被动实体。客体可以是信息、文件、记录等,也可以是硬件设备和通信终端,客体属性标识了客体的重要信息,包括客体的安全标签、所属关系、类别和防问控制列表等;权限,权限是主体可以对客体访问的动作集,定义了主体对客体的动作行为和客体对主体的条件约束。权限可以多种分类,对文件的操作权限除了阅读、修改、保存和删除等传统权限外,还可以进行更细则的定义,如:打印、再授权、修改密级、打开次数、使用时长以及操作条件的设置等;授权规则A(authorization),授权规则是允许主体使用客体特定权限必须满足的规则集,是判定主体是否能够访问客体的决定因素;义务B(obligation),义务是主体必须在访问客体之前或访问过程中必须完成的操作。主体应履行的业务不是由管理员预先静态设置,而是根据主客体的属性动态确定。义务的履行可能改变主体的可变属性,并影响现在或将来的决策;条件C(condition),条件是主体获得或行使对客体的访问权利前必须满足的***或执行环境的强制约束条件。如用户必须使用特定的终端设备,只能在规定的时间段内阅读或编辑文件等。
SM9算法是经国家密码局审定发布的IBC标识密码算法IBE(Identity BasedEncryption),与传统公钥密码一样,每个用户有一对相关联的公钥和私钥。可将用户的身份标识如姓名、IP地址、电子邮箱地址、手机号码等作为公钥,通过数学方式生成与之对应的用户私钥。用户标识就是该用户的公钥,不需要额外生成和存储,只需通过某种方式公开发布,私钥则由用户秘密保存。在标识密码***中,用户之间的认证不再依靠第三方认证,极大的简化了认证流程和***维护成本。
CPK(combined public key)组合公钥体系是2003年由我国的南湘浩教授提出的,利用基于身份标识的密码技术,可以在本地一次性查找用户公钥,满足了验证的简便性和管理的有效性,其安全性基于离散对数的难解性,可信度高,且不需要第三方的证明,不需要在线数据库的支持,只要很少的参数就能管理大量的密钥。
在CPK***中,密钥的生产、分发和使用流程如下:构造密钥矩阵,首先生产一定数量的ECC公私钥对,然后用其作为密钥因子构造两个维数相同的密钥矩阵(私钥矩阵和公钥矩阵),私钥矩阵和公钥矩阵中相同位置的私钥和公钥一对应;密钥生产,在基于CPK的密钥***中,根据实体标识进行密钥生产,各实体的密钥都根据密钥矩阵产生。当需要产生实体密钥时,通过特定的映射算法(可采用杂凑算法)对实体标识做运算,然后再对运算结果做置换操作,根据置换结果选取密钥矩阵中不同位置的多个密钥进行组合(相加),即可得到对应于该实体标识的密钥;密钥分发和存储,在实际的密钥管理***中,出于安全考虑,密钥矩阵通常离线产生,当申请密钥时,提交实体标识给密钥管理***,密钥管理***根据实体标识计算实体的私钥,然后将该实体的私钥以及全网相同的公钥矩阵分发给该实体,每个实体都只存储自己的私钥,及全网统一的公钥矩阵;密钥使用,当一个实体需要跟其它实体进行通信时,只需根据对方的实体标识在本地的公钥矩阵中计算出对方的公钥,即可使用该公钥进行后续操作。
文件标签是对文件的说明性标志,通过给电子件添加不可分离的文件标签,并在标签中规定文件的敏感性级别,实现对文件的分类分级管理。
本公开的实施例提供了一种文件安全管理方法,以UCON使用控制模型为基础,充分利用UCON模型在授权管理方面的灵活性,结合CPK组合公钥技术可大量生成公私秘钥对的优势,设计了一种基于标签的文件安全管理***。该***由部署在用户终端上的终端文件管理软件实现对离线电子文件的权限管理。
图1示意性示出了根据本公开实施例的文件安全管理方法和***的应用场景图。
如图1所示,根据该实施例的应用场景100可以包括金融领域的数据安全保护项目。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所浏览的网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的用户请求等数据进行分析等处理,并将处理结果(例如根据用户请求获取或生成的网页、信息、或数据等)反馈给终端设备。
需要说明的是,本公开实施例所提供的文件安全管理方法一般可以由服务器105执行。相应地,本公开实施例所提供的文件安全管理***一般可以设置于服务器105中。本公开实施例所提供的文件安全管理方法也可以由不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群执行。相应地,本公开实施例所提供的文件安全管理***也可以设置于不同于服务器105且能够与终端设备101、102、103和/或服务器105通信的服务器或服务器集群中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
以下将基于图1描述的场景,通过图2~图7对公开实施例的文件安全管理方法进行详细描述。
图2示意性示出了根据本公开实施例的文件安全管理方法的流程图。
如图2,该实施例的文件安全管理方法包括操作S210~操作S240,该文件安全管理方法可以顺序执行。参考图3,将执行操作S210~S240各步骤的对象模块化,形成了文件安全管理***。
在操作S210,响应于用户的文件访问请求,基于SM9私钥认证用户的身份,SM9私钥基于用户标识生成,包含于所述文件访问请求中。
在本实施例中,用户的SM9公钥可预存于SM9密钥管理中心,用于与SM9私钥匹配以验证用户身份。
在操作S220,用户身份认证通过后,基于预设权限判定规则匹配用户的主体属性、文件的客体属性和用户的工作环境信息识别用户的文件访问权限,主体属性可以包括用户名、用户组、角色和安全级别,客体属性可以包括加密标识、密级标识、授权清单、类别标识、作者信息、版本信息、操作时间及加密算法,工作环境信息可以包括设备、操作时间、操作地点。
当用户身份认证通过时,则可获取授权规则,来判断用户是否具有访问文件的权限。具体包括操作S221~S223。
在操作S221,获取预存的用户主体属性和文件访问请求中包括的文件的客体属性,并抓取当前用户的工作环境信息。
在操作S222,基于预设的权限判定规则,判定所述主体属性是否匹配所述客体属性的授权要求,以及判定用户是否有权在当前工作环境中访问文件。
在操作S223,当用户在文件的访问授权范围内且有权在当前工作环境中访问文件时,授予用户访问文件权限。
在本实施例中,从用户的文件访问请求中获取用户请求访问的文件的客体属性,其中,客体属性至少包括了该文件的加密标识、授权清单等内容,加密标识可以是用户自身的标识也可以是授权用户(组)的标识,与CPK公钥有对应关系,基于CPK公钥可以计算用于解密SM4对称密钥的CPK私钥,授权清单可用于确认用户是否在访问授权的范围内。结合用户的主体属性和该客体属性,可初步判断用户是否可以访问文件。进一步的,在本实施例中,将工作环境信息也作为了当前用户是否有权访问文件的条件,工作环境信息可以包括时间、设备、离线状态等,例如,在预设时间段之外的时间,用户不被允许访问该文件,再例如,在某一未授权的设备上,用户不允许访问该文件,或者,若设备离线,则用户不被允许访问该文件。结合上述条件,基于预设的授权规则,可以细粒度的划分用户的访问权限,可以提升管理***对文件防问的控制能力。
在操作S230,当用户有权访问文件时,基于用户标识获取用户的CPK公钥,基于所述CPK公钥计算用户的CPK私钥,所述CPK公钥与用户标识对应预存于管理***中。
在操作S240,基于CKP私钥解密文件的SM4对称加密秘钥,使用户基于SM4对称加密秘钥访问文件。
在该方法中,离线电子文件的加密密钥被加密保存,加密秘钥被CPK公钥加密,只有在用户获得授权时,才由***计算CPK私钥对文件的加密秘钥给予解密,CPK私钥并不由用户保管,避免了用户获得文件加密密钥后,即获得文件的所有管理权限,使***丧失对文件的控制。该方法基于UCON访问控制模型,通过制定授权规则,可将主体对客体的权限进行细粒度的划分,同时还可利用“义务“和”条件“等概念,将工作环境等影响安全的外部因素(如:时间、地点等)纳入到授权判定的条件当中,为支持复杂条件下的权限管理提供了基础。
图3示意性示出了根据本公开实施例的文件安全管理***的示意图。
如图3所示,其示意性示出了执行图2所示的各操作步骤的***模块,在以下的说明中,将结合***模块对本公开实施例提供的文件管理方法进行详细说明。
在本实施例中,可以由SM9密钥管理中心从用户管理与策略中心获取最新的权威用户标识(如:用户EMAIL地址或手机号);生成用户的SM9私钥,并通过安全方式(如:Ukey)将用户的SM9私钥分发给用户。作为对离线电子文件进行操作的主体,用户通过终端文件管理软件获取文件前,需要通过SM9私钥证明自己的身份。
可选地,用户的唯一标识可以采用用户的邮箱地址或手机号码。
在本实施例中,该文件管理方法基于UCON使用控制模型设计,参考图3,终端文件管理软件控制这用户对离线电子文件进行授权管理的核心,其承担用户认证、操作授权、调用文件格式对应的编辑工具(如:word、execl、PowerPoint、wps、写字板等)对文件进行操作等功能。终端文件管理软件具体承担的功能包括用户认证与操作授权。
具体的,参考图3,对用户的权限管理过程可以包括:通过识别用户SM9私钥实现对用户身份的认证;通过访问用户管理与策略中心,获得用户的主体属性信息和授权规则(机构对文件访问的管理规则);通过访问离线电子文件的文件标签,获得文件的客体属性信息;访问终端机本地信息,收集当前的工作环境信息;基于机构制定的授权规则,根据用户主体属性、文件的客体属性和用户当前的工作环境,判断用户主体是否具有对离线电子文件的阅读权限。
在本实施例中,用户管理与策略中心是管理体系的核心,需要维护所有的用户标识、用户的主体属性和授权规则(文件安全管理规则)。用户的主体属性需与单位的组织机构与管理模式相适宜,以下内容可以作为用户主体属性的示例:员工编号、姓名、邮箱、手机号码、部门、行政级别、负责业务范围、职责、商密涉密级别(禁止涉密、普通商密级、核心商密级)等。
用户管理与策略中心的安全策略可以包括:文件的授权规则(文件安全管理规则)应以用户的主体属性为基础,按照单位的日常管理要求进行设计和制订,明确离线电子文件分类分级管理的基本规则。
对具体类别的电子文件的授权规则进行定义,授权规则可以包括:对于密级为“公开”的文件,不同部门的人员都可以阅读和使用;高涉密级别人员可以阅读、修改与自身密级相符或较低密级的所有文件;文件的创建者可以指定文件的密级;涉及商密的文件只允许在办公时间、在办公地点打开和修改文件;对文件的密级和保密期限进行修改时,普通人员只可以将密级调高,将保密期限延长。降低文件的保密级别、减少保密期限或脱密操作需由专人负责。
在本实施例中,用户不需要保存CPK的公钥和私钥,统一都由CPK组合公钥管理中心管理。在用户需要时,CPK公钥可由通过终端管理软件基于CPK组合公钥矩阵和用户标识计算生产,用于加密文件的加密密钥;CPK私钥用于解密文件的加密密钥,在最终确定用户具备对文件有阅读权限的基础上,终端管理软件访问CPK组合公钥管理中心,获得解密的文件加密密钥,解密文件并调用相应的文件编辑工具供用户阅读;只在用户登录时由CPK组合公钥管理中心临时分发给用户。
CPK组合公钥管理中心的主要功能包括:其一,负责生成密钥因子矩阵和椭圆曲线的相关参数,并将私钥矩阵、映射算法、映射算法密钥和置换表等秘密参数妥善保存,禁止对外泄露;其二,将公钥矩阵对外公开,并提供下载服务,用户可以使用公钥矩阵,基于用户标识导出所有用户的公钥,并对所有公钥的认证;其三,从用户管理与策略中心获取最新的权威用户标识(如:用户EMAIL地址或手机号),利用用户标识产生的映射值和私钥矩阵及相关秘密参数产生相应的用户CPK私钥,并以安全的方式临时分发给用户,将文件的加密密钥解密,并将解密后的文件加密密钥返回给终端管理软件。
需要说明的是,当用户具备对文件的操作权限,但自己的CPK私钥无法解密文件的加密密钥时,例如,用户并非文件的创建者,且文件的加密秘钥使用的是创建者的CPK公钥加密时,需要委托CPK组合公钥管理中心进行解密。在该情况下,CPK组合公钥管理中心接收终端管理软件上传的被CPK公钥(这时生产CPK公钥的标识可以是多个用户标识,也可以是一个用户组标识)加密的文件加密密钥,根据预先设定的需要,查询授权规则、用户的主体属性、文件的客体属性和用户的工作环境信息,判断用户是否有权解密相关文件,如用户有权限解密相关文件,则计算CPK公钥对应的私钥,将文件的加密密钥解密,并将解密后的文件加密密钥返回给终端管理软件。
在本实施例中,离线电子文件指受***管理的文件,主要由文件标签、电子文件和数字签名三部分构成,如果电子文件被加密,还应包括加密后的文件加密密钥。
离线电子文件结构示例:
表1离线电子文件结构
文件标签包括标签头和标签体两个部分。标签头的主要内容是文件的密级标识、类别标识、作者信息、版本信息及加密算法等,是对文件进行分类分级的主要依据。标签体则为文件的操作记录。
用户每次完成对文件的操作后,都使用SM3算法对文件标签和电子文件进行哈希,并用自身的SM9私钥对哈希值进行加密,生成文件标签和文件的数字签名,并附在文件之后。
对文件加密使用SM4对称加密密钥,对SM4对称密钥的加密可以使用用户自身的CPK公钥,也可以使用文件授权对象的CPK公钥(授权对象的CPK公钥,可以基于授权对象的标识通过CPK组合公钥矩阵导出)。
表2授权清单格式
授权者 | 授权对象 | 授权权限 | 授权期限 |
提供授权的用户标识 | 授权对象的用户标识 | 读/写/打印/再授权 | 起止时间/持续时间 |
用户通过终端文件管理软件创建文件时,首先要在文件标签中明确文件的敏感性级别。
可选地,用户可以在标签头中将密级定为公开,标签头中保密期限、授权清单、加密标识、加密算法和标签体的内容为“空”;所属部门、业务类型由用户填写,否则由终端文件管理软件根据从用户管理与策略中心获得的用户主体属性自动填写;其他标签信息由终端文件管理软件自动生成;最后附上用自身的SM9私钥对文件标签和文件进行数字签名。该密级的文件敏感性、安全性较低。
可选地,用户可以在标签头中将密级定为敏感,标签头中保密期限、加密标识、加密算法的内容为“空”,在授权清单中填写对文件的授权对象;所属部门、业务类型由用户填写,否则由终端文件管理软件根据从用户管理与策略中心获得的用户信息自动填写;其他标签信息由终端文件管理软件自动生成;在标签体中记录文件创建信息;最后附上用自身的SM9私钥对文件标签和文件进行数字签名。该密级的文件具有一定的授权范围,敏感性、安全性相对提高。
可选的,用户可以在标签头中将密级定为商业秘密,在标签头中同时填写保密期限、所属部门和业务类型,并在授权清单中填写对文件的授权对象;加密标识、加密算法由终端文件管理软件根据从用户管理与策略中心获得的用户信息自动填写;其他标签信息由终端文件管理软件自动生成,其中签名标识为用户标识,加密标识可以是用户自身的标识也可以是授权用户(组)的标识(如:用户邮箱地址、用户组邮箱地址或一组邮箱地址);在标签体中记录文件创建信息;附上用自身的SM9私钥对文件标签和文件进行数字签名;使用随机产生的SM4对称密钥将文件加密,并使用加密标识对应的CPK公钥加密SM4对称密钥和文件标签的标签头(见表1)。该密级的文件可适用本公开实施例提供的文件安全管理方法,用户自身不必保存CPK私钥,基于标签头丰富了授权判断的决策因素,通过制定授权规则,可将主体对客体的权限进行细粒度的划分,提升了文件的安全保护性能。
图4示意性示出了根据本公开实施例的用户权限决策的示意图。
如图4所示,在本实施例中,基于使用控制模型(UCON),根据获取的用户主体属性、文件客体属性、授权规则(文件安全管理策略)和工作环境信息(如:是否在工作时间、是否在可信网络环境等),对用户的文件操作权限进行决策。终端文件管理软件作为决策点,对用户操作文件的权限进行初步判断,如用户没有对该文件的操作权限,则终止操作。否则,将初步确定的用户权限(如:读取、修改、打印、变更密级或再授权等)带入下一步操作,并最终落实对文件的分类分级管理要求。
在本实施例中,将用户责任定义为用户能够获得解密的SM4加密对称密钥,只有在打开加密文件时,才需要对用户权限进行再确认。如用户无法获得解密的SM4加密对称密钥,用户则无法打开加密文件。
基于上述文件管理方法,当用户创建文件时,方法还包括S250~S260。
在操作S250,给文件添加文件标签,文件标签包括标签头和标签体,标签头包括文件的客体属性,标签体用于记录文件的操作。
在操作S260,基于用户的SM9私钥生成文件标签和文件的数字签名,并基于SM4对称加密秘钥加密文件,客体属性包括的加密标志对应的CPK公钥加密SM4对称加密秘钥。
其中,在对文件的SM4对称密钥进行加密时,用户可以使用用户自身的CPK组合公钥加密SM4对称密钥,或者,使用授权对象标识对应的CPK组合公钥加密SM4对称密钥。
当用户需要保留自身对文件绝对的管理权限时,可直接使用自身CPK组合公钥加密SM4对称密钥。这样用户就可以在离线情况下,随时打开和管理自己的文件。
当用户向高涉密等级的用户提供文件,且不保留对文件的控制权时,应使用授权对象标识所导出的CPK组合公钥加密SM4对称密钥。
当授权对象是某个具体用户时,该用户收到加密文件后,就可以使用自己的CPK组合私钥打开文件,并方便的对文件进行管理。
当授权对象为几个用户、一组用户时或具备某种特种的用户时,相关用户需要向CPK组合公钥管理中心申请解密,由CPK组合公钥管理中心使用授权对象标识导出对应的CPK组合私钥解密加密后的SM4对称密钥,并反馈给相关用户。
当用户请求访问文件时,在打开文件前,至少包括以下7个步骤。
第一步,终端文件管理软件利用用户声称的用户标识(如:邮箱地址、手机号),通过鉴别用户所持的SM9私钥,完成对用户身份的认证。
第二步,终端文件管理软件读取离线电子文件的文件标签,获取离线文件的客体属性信息(如:敏感性等级、保密期限、作者、所属部门、业务类型、授权清单、加密标识、签名标识及签名算法等)。
第三步,终端文件管理软件访问用户管理与策略中心,根据鉴别得到的用户身份,向用户管理与策略中心查询用户的主体属性信息(如:所属部门、行政级别、负责业务范围、职责、涉密级别等)和最新的授权规则(文件安全管理策略)。
第四步,终端文件管理软件基于使用控制模型(UCON),根据获取的用户主体属性、文件客体属性、授权规则(文件安全管理策略)和工作环境信息(如:是否在工作时间、是否在可信网络环境等),对用户的文件操作权限进行决策。
第五步,终端文件管理软件作为决策点,对用户操作文件的权限进行初步判断,如用户没有对该文件的操作权限,则终止操作。否则,将初步确定的用户权限(如:读取、修改、打印、变更密级或再授权等)带入下一步操作,并最终落实对文件的分类分级管理要求。
第六步,检查用户责任,对用户权限再确认。在本方案中,将用户责任定义为用户能够获得解密的SM4加密对称密钥,只有在打开加密文件时,才需要对用户权限进行再确认。如用户无法获得解密的SM4加密对称密钥,用户则无法打开加密文件。
第七步,打开文件。在打开加密后的商密文件时,工作流程基于文件使用的CPK密钥为用户自已的CPK组合公钥还是其它用户的CPL组合公钥分为两种。
当用户请求打开使用用户自己CPK组合公钥加密的文件时,由于加密标识与自身标识一致,直接用自身的CPK组合私钥解密SM4对称密钥,并解密文件。
当用户请求打开使用其他CPK组合公钥加密的文件时,终端文件管理软件在用户权限预处理过程中,增加对用户标识与加密标识和授权标识的审核过程,如用户标识同时属于加密标识和授权标识所显示的授权范围,则向CPK公钥管理中心发送文件标签头和加密的SM4对称密钥与文件标签头,申请解密SM4对称密钥。
CPK公钥管理中心可根据加密文件的重要程度和机构管理要求的不同,分别采用不同安全级别的三种响应模式,响应终端文件管理软件提交的文件加密密钥(SM4对称密钥)的解密请求。
图5示意性示出了根据本公开实施例的第一种解密响应模式示意图。
如图5所示,该解密模式对应S210~S240,CPK组合公钥管理中心根据加密标识导出对应的CPK组合私钥,解密SM4对称密钥,并将解密后的SM4对称密钥反馈给终端文件管理软件,用户即可使用返回的SM4对称密钥解密文件。
图6示意性示出了根据本公开实施例的第二种解密响应模式示意图。
如图6所示,当用户有权访问文件时,在计算CKP私钥之前,还可以包括S601~S603。
在操作S601,基于用户的SM9私钥解密文件标签的数字签名,获取文件的客体属性。
在操作S602,比较文件访问请求中的客体属性和解密得到的客体属性。
在操作S603,当文件访问请求中的客体属性和解密得到的客体属性内容一致时,计算CPK私钥。
在该解密响应模式中,增加文件标签一致性的审核,验证用户访问请求中的文件客体属性与文件的标签头中的客体属性是否一致,实际为对用户的权限和身份的再次验证,保证文件权限管理的安全性。
图7示意性示出了根据本公开实施例的第三解密响应模式示意图。
如图7所示,在图6所示的解密响应模式的基础上,基于用户的SM9私钥解密文件的数字签名,获取文件的客体属性之前,还可以包括S701~S702。
在操作S701,生成随机数,使用文件访问请求中的SM9私钥加密随机数。
在操作S702,基于预存的用户身份信息解密验证随机数,以确认用户身份。
在该解密响应模式中,CPK组合公钥管理中心在收到解密请求后,向终端文件管理软件发送指令,要求用户向CPK组合公钥管理中心进行身份认证,用户使用自己的SM9私钥在CPK组合公钥管理中心进行身份鉴别。CPK组合公钥管理中心根据解密后的文件标签头,确认请求解密的SM4对称密钥与离线电子文件一致。该解密响应模式相比前两种解密响应模式安全级别最高。
在确认用户身份且比较客体属性之后,在计算CKP私钥之前,还可以包括S703~S704。
在操作S703,判断用户的用户标识是否属于客体属性中的加密标志和授权清单。
在操作S704,当用户的用户标识属于客体属性中的加密标志和授权清单时,计算CKP私钥。
基于加密标志和授权清单再次确认用户身份,才执行CKP私钥的计算,保证CKP私钥的安全。
在文件创建之后,用户可以对文件进行修改,该文件可以是用户本人创建的文件,也可以是他人创建且授权用户修改权限的文件。在修改文件时,本公开实施例提供的文件管理方法还可以包括S270~S280。
在操作S270,响应于用户对文件的操作,更新文件的标签体,操作包括对文件和客体属性的修改。
在操作S280,保存修改时,使用SM4对称密钥重新加密文件,使用用户的SM9私钥进行更新后的文件标签和文件的数字签名,使用客体属性包括的加密标志对应的CPK公钥加密SM4对称密钥。
在本公开实施例中,对于不涉及商业秘密的文件,用户修改完成进行保存时,终端文件管理软件允许将本次修改的内容进行保存,同时文件标签的标签体中添加一条日志记录,并使用自己的SM9私钥进行签名。如果用户认为本次修改属于一次阶段性的修改,还可更新标签头中的版本信息。对于对涉及商业秘密的文件,用户修改完成进行保存时,终端文件管理软件还需要对文件再次进行加密,可使用文件标签原有的加密标识对应的CPK组合公钥加密SM4对称密钥。
在本公开实施例中,对文件标签的修改,指涉及文件的涉密级别、涉密期限、文件授权清单、文件所属的部门及业务类型等敏感信息的变更。进行上述操作的用户,必须具有对此文件进行再授权的权限。操作过程中,终端文件管理软件需要向用户管理与策略中心发送相关的变更记录,以便日后审计。
在用户对修改内容进行保存时,终端文件管理软件重新读取用户的主体属性信息、授权规则和当前工作环境的最新信息,对用户是否具备执行修改的权限进行再确认,防止临时发生的授权规则变化、主体属性变化或工作环境变化带来的非授权操作。
本公开实施例提供的文件管理方法以UCON使用控制模型为基础,允许***的管理者通过调整授权规则和用户的主体属性,随时改变用户主体对文件客体的访问权限。可以根据政策调整和外部条件的变化,实时的、细致的对用户操作离线电子文件的权限进行管理。为了保证对文件权限的有效管理,该文件管理方法还可以包括S290。
在操作S290,响应于用户对文件的操作,重新读取主体属性、客体属性、工作环境信息,基于预设的权限判定规则判断用户是否具备执行操作的权限。当用户具备执行操作的权限时,执行操作;当用户不具备执行操作的权限时,终止操作。
本公开实施例提供的文件安全管理方法,打破了传统数据防泄露产品必须在特定环境下工作的的限制,解决了传统数据防泄露产品难以为离线电子文件提供分类分级管理的不足。该方法利用UCON使用控制模型引入了“义务“和”条件“的概念,并将其作为最终权限判断的考量因素,丰富了授权判定的机制。允许实时的对离线电力文件进行细粒度的权限控制,灵活性强。使***能够在复杂环境下对离线电子文件进行细粒度的权限管理。此外,利用标签体,将文件的所有操作记录与文件绑定,实现了强大的审计能力。该方法采用一次认证,多次授权的工作模式。用户对离线电子文件每一步实质性的操作(指需要保存修改内容或标签内容的操作,和复制、打印等输出文件内容的操作),都需要对相关权限进行重新判定。在保证机构的文档权限管理要求得到及时落实的同时,避免只要获得文件的备份即可不受控制的随意修改和扩散文件情况的发生。
图8示意性示出了根据本公开实施例的文件安全管理***的结构框图。
如图8所示,将如图3所示的***模块化,得到该实施例的文件安全管理***800包括终端文件管理软件模块810、用户管理与策略中心模块820、CPK组合公钥管理中心模块830和终端文件管理软件模块840。
终端文件管理软件模块810用于响应于用户的文件访问请求,基于SM9私钥认证用户的身份,SM9私钥基于用户标识生成,包含于所述文件访问请求中。在一实施例中,终端文件管理软件模块810可以用于执行前文描述的操作S210,在此不再赘述。
用户管理与策略中心模块820用于用户身份认证通过后,基于预设权限判定规则匹配用户的主体属性、文件的客体属性和用户的工作环境信息,得到用户的文件访问权限。在一实施例中,用户管理与策略中心模块模块820可以用于执行前文描述的操作S220,在此不再赘述。
CPK组合公钥管理中心模块830当用户有权访问文件时,获取用户的CPK公钥,基于所述CPK公钥计算CPK私钥,所述CPK公钥与用户标识对应预存于管理***中。在一实施例中,CPK组合公钥管理中心模块830可以用于执行前文描述的操作S230,在此不再赘述。
终端文件管理软件模块840还用于基于CKP私钥解密文件的SM4对称加密秘钥,使用户基于SM4对称加密秘钥访问文件。在一实施例中,终端文件管理软件模块840可以用于执行前文描述的操作S240,在此不再赘述。
根据本公开的实施例,终端文件管理软件模块810、用户管理与策略中心模块820、CPK组合公钥管理中心模块830和终端文件管理软件模块840中的任意多个模块可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,终端文件管理软件模块810、用户管理与策略中心模块820、CPK组合公钥管理中心模块830和终端文件管理软件模块840中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上***、基板上的***、封装上的***、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,终端文件管理软件模块810、用户管理与策略中心模块820、CPK组合公钥管理中心模块830和终端文件管理软件模块840中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图9示意性示出了根据本公开实施例的适于实现文件管理方法的电子设备的方框图。
如图9所示,根据本公开实施例的电子设备900包括处理器901,其可以根据存储在只读存储器(ROM)902中的程序或者从存储部分908加载到随机访问存储器(RAM)903中的程序而执行各种适当的动作和处理。处理器901例如可以包括通用微处理器(例如CPU)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC))等等。处理器901还可以包括用于缓存用途的板载存储器。处理器901可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
在RAM 903中,存储有电子设备900操作所需的各种程序和数据。处理器901、ROM902以及RAM 903通过总线904彼此相连。处理器901通过执行ROM 902和/或RAM 903中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除ROM 902和RAM 903以外的一个或多个存储器中。处理器901也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。
根据本公开的实施例,电子设备900还可以包括输入/输出(I/O)接口905,输入/输出(I/O)接口905也连接至总线904。电子设备900还可以包括连接至I/O接口905的以下部件中的一项或多项:包括键盘、鼠标等的输入部分906;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分907;包括硬盘等的存储部分908;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分909。通信部分909经由诸如因特网的网络执行通信处理。驱动器910也根据需要连接至I/O接口905。可拆卸介质911,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器910上,以便于从其上读出的计算机程序根据需要被安装入存储部分908。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/***中所包含的;也可以是单独存在,而未装配入该设备/装置/***中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质,例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的ROM 902和/或RAM 903和/或ROM 902和RAM 903以外的一个或多个存储器。
本公开的实施例还包括一种计算机程序产品,其包括计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。当计算机程序产品在计算机***中运行时,该程序代码用于使计算机***实现本公开实施例所提供的文件管理方法。
在该计算机程序被处理器901执行时执行本公开实施例的***/装置中限定的上述功能。根据本公开的实施例,上文描述的***、装置、模块、单元等可以通过计算机程序模块来实现。
在一种实施例中,该计算机程序可以依托于光存储器件、磁存储器件等有形存储介质。在另一种实施例中,该计算机程序也可以在网络介质上以信号的形式进行传输、分发,并通过通信部分909被下载和安装,和/或从可拆卸介质911被安装。该计算机程序包含的程序代码可以用任何适当的网络介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
在这样的实施例中,该计算机程序可以通过通信部分909从网络上被下载和安装,和/或从可拆卸介质911被安装。在该计算机程序被处理器901执行时,执行本公开实施例的***中限定的上述功能。根据本公开的实施例,上文描述的***、设备、装置、模块、单元等可以通过计算机程序模块来实现。
根据本公开的实施例,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例提供的计算机程序的程序代码,具体地,可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。程序设计语言包括但不限于诸如Java,C++,python,“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合或/或结合,即使这样的组合或结合没有明确记载于本公开中。特别地,在不脱离本公开精神和教导的情况下,本公开的各个实施例和/或权利要求中记载的特征可以进行多种组合和/或结合。所有这些组合和/或结合均落入本公开的范围。
以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。
Claims (13)
1.一种文件安全管理方法,其特征在于,包括:
响应于用户的文件访问请求,基于SM9私钥认证用户的身份,所述SM9私钥基于用户标识生成,包含于所述文件访问请求中;
用户身份认证通过后,基于预设权限判定规则匹配用户的主体属性、文件的客体属性和用户的工作环境信息,得到用户的文件访问权限;
当用户有权访问文件时,基于用户标识获取用户的CPK公钥,基于所述CPK公钥计算用户的CPK私钥,所述CPK公钥与用户标识对应预存于管理***中;
基于所述CKP私钥解密所述文件的SM4对称加密秘钥,使用户基于所述SM4对称加密秘钥访问所述文件。
2.根据权利要求1所述的方法,其特征在于,所述基于预设权限判定规则匹配用户的主体属性、所述文件访问请求中文件的客体属性和用户的工作环境信息,得到用户的文件访问权限包括:
获取预存的用户主体属性和所述文件访问请求中包括的文件的客体属性,并抓取当前用户的工作环境信息;
基于预设的权限判定规则,判定所述主体属性是否匹配所述客体属性的授权要求,以及,判定用户是否有权在当前工作环境中访问所述文件;
当所述用户在所述文件的访问授权范围内且在当前工作环境中有权时,授予所述用户访问权限。
3.根据权利要求1所述的方法,其特征在于,当用户创建文件时,所述方法包括:
给所述文件添加文件标签,所述文件标签包括标签头和标签体,所述标签头包括文件的客体属性,所述标签体用于记录文件的操作;
基于用户的SM9私钥生成所述文件标签和所述文件的数字签名。
4.根据权利要求3所述的方法,其特征在于,当用户有权访问文件时,在计算所述CKP私钥之前,所述方法还包括:
基于所述用户的SM9私钥解密所述文件标签的数字签名,获取所述文件的客体属性;
比较所述文件访问请求中的客体属性和解密得到的客体属性;
当所述文件访问请求中的客体属性和解密得到的客体属性内容一致时,计算CPK私钥。
5.根据权利要求4所述的方法,其特征在于,基于所述用户的SM9私钥解密所述文件的数字签名,获取所述文件的客体属性之前,所述方法还包括:
生成随机数,使用所述文件访问请求中的SM9私钥加密所述随机数;
基于预存的用户身份信息解密验证所述随机数,以确认用户身份。
6.根据权利要求5所述的方法,其特征在于,在确认所述用户身份且比较所述客体属性之后,在计算所述CKP私钥之前,所述方法还包括:
判断所述用户的用户标识是否属于所述客体属性中的加密标志和授权清单;
当所述用户的用户标识属于所述客体属性中的加密标志和授权清单时,计算所述CKP私钥。
7.根据权利要求3所述的方法,其特征在于,所述方法还包括:
基于SM4对称加密秘钥加密所述文件,所述客体属性包括的加密标志对应的CPK公钥加密所述SM4对称加密秘钥;
其中,所述CPK公钥为所述用户的CPK公钥或所述用户基于所述公钥矩阵提供的其他用户的CPK公钥。
8.根据权利要求3所述的方法,其特征在于,所述方法还包括:
响应于用户对文件的操作,更新所述文件的标签体,所述操作包括对所述文件和所述客体属性的修改;
保存所述修改时,使用所述SM4对称密钥重新加密所述文件,使用所述用户的SM9私钥进行更新后的文件标签和所述文件的数字签名,使用所述客体属性包括的加密标志对应的CPK公钥加密所述SM4对称密钥。
9.根据权利要求8所述的方法,其特征在于,在用户访问文件的过程中,所述方法包括:
响应于用户对文件的操作,重新读取所述主体属性、客体属性、工作环境信息,基于预设的权限判定规则判断用户是否具备执行所述操作的权限;
当用户具备执行所述操作的权限时,执行所述操作;
当用户不具备执行所述操作的权限时,终止所述操作。
10.一种文件安全管理***,应用于如权利要求1至9任意一项所述的方法,其特征在于,包括:
终端文件管理软件模块,用于响应于用户的文件访问请求,基于SM9私钥认证用户的身份,所述SM9私钥基于用户标识生成,包含于所述文件访问请求中;
用户管理与策略中心模块,用于用户身份认证通过后,基于预设权限判定规则匹配用户的主体属性、文件的客体属性和用户的工作环境信息,得到用户的文件访问权限;
CPK组合公钥管理中心模块,当用户有权访问文件时,获取用户的CPK公钥,基于所述CPK公钥计算CPK私钥,所述CPK公钥与用户标识对应预存于管理***中;
终端文件管理软件模块,还用于基于所述CKP私钥解密所述文件的SM4对称加密秘钥,使用户基于所述SM4对称加密秘钥访问所述文件。
11.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行根据权利要求1~9中任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,其上存储有可执行指令,该指令被处理器执行时使处理器执行根据权利要求1~9中任一项所述的方法。
13.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现根据权利要求1~9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211671652.9A CN116090000A (zh) | 2022-12-23 | 2022-12-23 | 文件安全管理方法、***、设备、介质和程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211671652.9A CN116090000A (zh) | 2022-12-23 | 2022-12-23 | 文件安全管理方法、***、设备、介质和程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116090000A true CN116090000A (zh) | 2023-05-09 |
Family
ID=86207454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211671652.9A Pending CN116090000A (zh) | 2022-12-23 | 2022-12-23 | 文件安全管理方法、***、设备、介质和程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116090000A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117113326A (zh) * | 2023-08-31 | 2023-11-24 | 金锐软件技术(杭州)有限公司 | 一种基于abac模型的授权访问*** |
CN117574184A (zh) * | 2024-01-16 | 2024-02-20 | 支付宝(杭州)信息技术有限公司 | 证据合并处理方法及装置 |
-
2022
- 2022-12-23 CN CN202211671652.9A patent/CN116090000A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117113326A (zh) * | 2023-08-31 | 2023-11-24 | 金锐软件技术(杭州)有限公司 | 一种基于abac模型的授权访问*** |
CN117113326B (zh) * | 2023-08-31 | 2024-03-12 | 金锐软件技术(杭州)有限公司 | 一种基于abac模型的授权访问*** |
CN117574184A (zh) * | 2024-01-16 | 2024-02-20 | 支付宝(杭州)信息技术有限公司 | 证据合并处理方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8850593B2 (en) | Data management using a virtual machine-data image | |
US7913309B2 (en) | Information rights management | |
US11290446B2 (en) | Access to data stored in a cloud | |
US11870882B2 (en) | Data processing permits system with keys | |
CN115701301A (zh) | 在企业环境中区块链,管理组权限和访问的集成 | |
EP1698991B1 (en) | Method and computer-readable medium for generating usage rights for an item based upon access rights | |
US8990896B2 (en) | Extensible mechanism for securing objects using claims | |
US20030081784A1 (en) | System for optimized key management with file groups | |
TW201132097A (en) | Trustworthy extensible markup language for trustworthy computing and data services | |
CN116090000A (zh) | 文件安全管理方法、***、设备、介质和程序产品 | |
CN112215609B (zh) | 基于超级账本的房产用户身份认证方法、装置和电子设备 | |
US20200202468A1 (en) | Protocol-based system and method for establishing a multi-party contract | |
CN115622792A (zh) | 一种基于零信任的数据安全综合防护***及方法 | |
US20220092193A1 (en) | Encrypted file control | |
CN116438778A (zh) | 承担的替代身份的持久源值 | |
US10853898B1 (en) | Method and apparatus for controlled messages | |
CN115514523A (zh) | 一种基于零信任体系的数据安全访问***、方法、装置及介质 | |
Liu et al. | A fusion data security protection scheme for sensitive E-documents in the open network environment | |
CN115470525B (zh) | 一种文件保护方法、***、计算设备及存储介质 | |
US20240048380A1 (en) | Cryptography-as-a-Service | |
US20240048532A1 (en) | Data exchange protection and governance system | |
US20230142949A1 (en) | Encryption key management method in data subscription system | |
US20210349968A1 (en) | Method and system for electronic content delivery to a user device through a wireless captive audience device | |
Fu et al. | A Design of Sharing Algorithm Based on Attribute–Based Encryption in Cloud Storage Environment | |
WO2023052077A1 (en) | Data access control |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |