李 亚 平
(1.合肥工业大学 管理学院,合肥 230009;2.安徽经济管理学院,合肥 230059)
随着互联网应用的不断深入,个人信息在各个网络平台不断累积。个人信息作为重要的网络资源,面临着越来越严峻的安全形势。2013年2月1日,我国首个个人信息保护国家标准《信息安全技术公共及商用服务信息系统个人信息保护指南》[1]正式实施,“指南”将个人信息划分为个人敏感信息和个人一般信息两大类。其中个人敏感信息是指“一旦遭到泄露或修改,会对标识的个人信息主体造成不良影响的个人信息”,例如身份证号码、手机号码、种族、政治观点、宗教信仰、基因、指纹等。从技术角度看,针对个人隐私信息保护主要是从匿名方案设计和访问控制两个方面展开[2]。针对个人信息的使用控制,众多学者进行了广泛而深入的研究。传统访问控制模型主要包括自主访问控制模型(DAC)、强制访问控制模型(MAC)、基于角色的访问控制模型(RBAC)、基于任务的访问控制模型(TBAC)和基于任务-角色的访问控制模型(T-RBAC)[3]。这些访问控制模型能够为个人隐私信息提供相应的保护方案。但随着网络环境的不断变化,个人信息保护的动态性特征和需求,使得个人信息保护面临新的困难。文献[4]设计了一种基于可信第三方的隐私保护模型,该模型主要通过构建网络平台,存储、管理用户个人信息,向网站和网民提供应用服务。文献[5]通过设计个人非敏感属性上的约束条件,研究构建了一种基于个人隐私约束的k-匿名模型。文献[6]从博弈理论角度构建了一个隐私保护模型,该模型从收益的角度研究了阻止访问者个人隐私信息获取行为的策略。文献[7]基于任务-角色,设计了一种面向个人网络联盟环境的改进型访问控制模型。
UCON( Usage Control) 使用控制的思想最早由Park[8]于2002年提出。UCONABC模型是UCON的核心模型,该模型引入了“动态性”和“可变性”两个特征,能够为网络信息资源的动态使用控制提供更好的支持。鉴于传统的访问控制方式越来越难以适应动态的网络环境,本文基于具有动态性特征的UCONABC模型,研究多主体协同条件下的个人信息使用控制方案。
在访问控制领域,主体主要指提出请求的实体,客体主要是指被操作的对象。在《关于加强网络信息保护的决定》中,网络个人信息保护主体主要包括网络服务提供者、企事业单位、监管部门等[9]。但从使用控制的角度看,个人信息同样涉及网民个人和其他访问者。从委托授权的角度看,个人信息保护涉及的主体则更为复杂,不仅涉及权利主体,也涉及获得授权的受托主体[10]。
从客体资源的角度看,个人信息既包括敏感信息,也包括一般信息,既包括静态的属性信息,也包括动态的个人行为信息。因此,个人信息有广义狭义之分,狭义的个人信息更多强调的是与特定自然人相关的属性信息,广义的个人信息则是与自然人相关并能够被识别的所有信息,不仅包含相关自然人的属性信息,还包括其行为信息以及社会关系信息等。
从主体权利角度看,个人信息的权利相关方涉及多个主体类型,这使得个人信息各主体的权利边界表现出较为明显的模糊性。从财产权利归属角度看,个人信息同时具有财产权利的基本特征,但个人信息财产权利的归属仍然是模糊的。例如,通过数据挖掘技术获得的个人相关信息或统计类信息,其权力属于相关自然人还是相关的互联网企业,仍然存在不确定性。从内容、形式角度看,个人信息在内容、形式及权利方面的模糊性也导致了有关个人信息的保护在立法方面的模糊性。虽然国内目前已经制定了一些互联网方面涉及个人信息保护的法律法规,然而,这些法律法规十分分散,还没有形成完备的体系,客观上导致互联网个人信息监管工作呈现多头管理、交叉管理的情形。
传统使用控制的核心思想是通过访问矩阵,将权利明确地授予特定的主体。在主体被授予权利后,无论其是否发生实际的使用控制操作,都不影响主体享有已经被授予的权利。因此,传统访问控制中的权利是静态存在直至撤销。随着互联网的发展,信息系统更为开放,分布式、动态化、实时控制的特征更加明显。因此,临时授权、基于任务的授权受到更多的重视,这些可消耗的授权体现了权利授予、回收的动态性特征。
使用控制的动态性,不仅体现在授权的动态性,同样也体现在用户访问需求的动态性以及条件的动态性。不同主体的访问控制需求是不同的,同一主体在不同时间条件下的需求同样存在差异,因此,还需要对授予的权利细粒度化并进行动态的组合,从而适应动态的使用控制需求。
基于上文分析,网络个人信息保护的主体主要包括网络服务提供者、企事业单位、监管部门、个人、其他访问主体等。基于动态访问控制的基本思想,本文将网络个人信息主体划分为权利主体和使用主体两个类别。其中权利主体主要包括网络服务提供者、政府职能部门、第三方监管机构、网民个人等4种类型,使用主体则是指申请个人信息资源访问权限的其他主体。使用主体申请权利时,由相关的权利主体进行协同使用控制决策。因此,在一次授权过程中,只有一个特定的使用主体,但可以有多个权利主体。
将个人信息资源作为UCONABC模型的客体,并从隐私保护的角度,将客体划分为不可访问、限制访问、有条件共享及公开4个层次。其中限制访问与条件共享的差异在于协同控制策略的不同,限制访问的个人信息是指多主体协同控制中需要完全满足各个主体控制要求才可以获得授权访问的个人信息资源,条件共享则是指部分满足主体控制要求可以获得授权访问的个人信息资源。
主客体属性主要是用以描述主客体基本信息并能够应用于授权决策判断的性质。例如,主体属性主要有名称、角色、所属机构、权限列表等;客体属性主要有标题、类型、所有人、安全标签、访问控制列表等。从访问控制的角度,可以将个人信息权利主客体属性划分为权利属性和非权利属性两大类,并将权利属性细分为可变属性和不可变属性两种。
使用控制的核心模型UCONABC由主体、客体、权利、授权、义务、条件以及主体属性、客体属性8个核心元素组成[2]。基于UCONABC模型构建面向网络个人信息多主体协同使用控制结构如图1所示。
图1 多主体协同使用控制模型Fig.1 The use and control model of multi Agent collaboration
在图1所示的模型中,责任主要指使用主体申请权利时需要满足的操作行为要求。责任可以是设置在获取授权前完成的行为要求,也可以是设置在使用过程中的操作行为要求。条件主要指系统环境因素,例如系统时间、负荷、安全状态等。
2.3.1 参量及函数说明
(1)S={S1,S2,S3,S4}:Si表示第i个权利主体。4个权利主体分别为网络服务提供者、政府职能部门、第三方监管机构、网民个人。
(2)s,o,r:s表示申请权利的使用主体,o表示个人信息资源,r表示申请的权利。
(3)check_UC(o):个人信息资源o是否属于限制访问类资源的判断函数。
(4)check_SH(o):个人信息资源o是否属于条件共享类资源的判断函数。
(3)ATT():属性获取函数,ATT(s),ATT(o)分别表示获取s和o的属性。
(4)preAi(ATT(s),ATT(o),r):依据主客体属性及主体申请的权利进行的预先授权仲裁函数,即主客体属性是否符合权利主体Si的授权要求。
(5)preBi(s,o,r):主体s申请对个人信息资源o的权利r所进行的预先责任仲裁函数,即责任的履行是否符合权利主体Si的授权要求。
(6)preCi(s,o,r):主体s申请对个人信息资源o的权利r所进行的预先条件仲裁函数,即系统环境因素是否符合权利主体Si的授权要求。
(7)onAi(ATT(s),ATT(o),r) :依据主客体属性及主体申请权利进行的过程授权仲裁函数,即使用过程中主客体相关属性是否符合权利主体Si的授权要求。
(8)onBi(s,o,r):主体s申请对个人信息资源o的权利r所进行的过程责任仲裁函数,即使用过程中相关责任的履行是否符合权利主体Si的授权要求。
(9)onCi(s,o,r):主体s申请对个人信息资源o的权利r所进行的过程条件仲裁函数,即系统环境因素在使用过程中是否符合权利主体Si的授权要求。
(10)allowed(s,o,r):允许主体s申请对个人信息资源o的权利r。
(12)stop(s,o,r):在使用过程中停止主体s对个人信息资源o所享有的权利r。
(14)postupdate():事后属性更新,即在主体s对个人信息资源o使用权利r后,更新主客体的相关属性。
2.3.2 协同授权分析
基于对个人信息资源的层次划分,本文对其中的限制访问和条件共享两类个人信息资源进行使用控制模型的构建。
限制访问类个人信息资源的授权规则描述如下:
allowed(s,o,r)⟹∀preAi(ATT(s),ATT(o),r):表示任意权利主体的预先授权仲裁函数为true是允许授权的必要条件。
条件共享类个人信息资源的预先授权规则描述如下:
allowed(s,o,r)⟸∃preAi(ATT(s),ATT(o),r):存在授权主体的授权仲裁函数为true是允许授权的充分条件。
因此,从协同决策的角度看,预先授权决策可以是基于主客体属性、使用主体责任、使用条件3个方面进行授权判断,即表示任意权利主体设定的属性仲裁函数为true是允许授权的必要条件。
allowed(s,o,r)⟹∀preAi(ATT(s),ATT(o),r)表示任意权利主体设定的属性仲裁函数为true是允许授权的必要条件。
allowed(s,o,r)⟹∀preBi(s,o,r) :表示任意权利主体设定的责任仲裁函数为true是允许授权的必要条件。
allowed(s,o,r)⟹∀preCi(s,o,r) :表示任意权利主体设定的条件仲裁函数为true是允许授权的必要条件。
2.3.3 预先协同决策方案
算法1:
//“⟹”表示必要条件;“⟸”表示充分条件,“∃”表示包含,“×”表示并。
apply(s,o,r) //主体s提出对个人信息资源o的使用权利r的申请。
preAi(ATT(s),ATT(o),r)⟹ATT(s)∃setAi(s)×
ATT(o)∃setAi(o)//任意权利主体Si设置的使用主体及客体属性是当前主客体属性的子集。
preBi(s,o,r)⟹getP(s)∃setBi(s,o,r)//任意权利主体Si设置的使用主体的预先责任是当前使用主体操作行为的子集。
preCi(s,o,r)⟹getC(s)∃setCi(s,o,r) //任意权利主体Si设置的系统条件是当前系统环境状态的子集。
ifcheck_UC(o)=true
allowed(s,o,r)⟹∀preAi(ATT(s),ATT(o),r) //任意权利主体的预先授权仲裁函数为true是授予使用主体s对个人信息资源o权利r的必要条件。
allowed(s,o,r)⟹∀preBi(s,o,r) //任意权利主体的预先责任仲裁函数为true是授予使用主体s对个人信息资源o权利r的必要条件。
allowed(s,o,r)⟹∀preCi(s,o,r) //任意权利主体的预先条件仲裁函数为true是授予使用主体s对个人信息资源o权利r的必要条件。
end if
ifcheck_SH(o)=true
allowed(s,o,r)⟸∃preAi(ATT(s),ATT(o),r)×preBi(s,o,r)×preCi(s,o,r) //存在权利主体的预先授权仲裁函数、预先责任仲裁函数、预先条件仲裁函数为true是授予使用主体s对个人信息资源o权利r的充分条件。
end if
ifallowed(s,o,r)=true //主体s获得个人信息资源o权利r的授权。
postupdate(s)
postupdate(o)
end if
2.3.4 过程协同决策方案
针对过程授权需求,构建过程协同决策方案,基本流程如算法2所示。
算法2:
//“⟹”表示必要条件,“⟸” 表示充分条件,“∃”表示包含,“×”表示并,表示取反。
ifallowed(s,o,r)=true
onAi(ATT(s),ATT(o),r)⟹ATT(s)∃setAi(s)×ATT(s)∃setAi(o)
onBi(s,o,r)⟹getP(s)∃setBi(s,o,r)
onCi(s,o,r)⟹getC(s)∃setCi(s,o,r)
ifcheck_UC(o)=true
stop(s,o,r)⟸∀onAi(s,o,r)//任意权利主体的过程授权仲裁函数为false是停止授予使用主体s对个人信息资源o权利r的充分条件。
stop(s,o,r)⟸∀onBi(s,o,r)//任意权利主体的过程责任仲裁函数为false是停止授予使用主体s对个人信息资源o权利r的充分条件。
stop(s,o,r)⟸∀onCi(s,o,r)//任意权利主体的过程条件仲裁函数为false是停止授予使用主体s对个人信息资源o权利r的充分条件。
end if
ifcheck_SH(o)=true
stop(s,o,r)⟹∀onAi(ATT(s),ATT(o),r)×onBi(s,o,r)×onCi(s,o,r) //存在任意原权利主体的过程授权仲裁函数、过程责任仲裁函数、过程条件仲裁函数为false是停止授予使用主体s对个人信息资源o权利r的必要条件。
end if
postupdate(s)
postupdate(o)
end if
此外,UCONABC模型包含16个子模型[3],针对属性变化可分为使用前更新、使用后更新等情形,在使用决策的过程中,可单独、综合使用基于属性、责任和条件授权决策的不同组合,这可以为个人信息使用控制提供更为灵活的方案。
从使用决策依据的角度看,基于UCONABC的个人信息多主体协同使用控制方案可以综合使用基于属性的授权仲裁、责任仲裁、条件仲裁等。从使用决策过程的角度看,可以使用预先使用决策和过程使用决策等不同方式。本文针对多主体协同使用控制问题,构建了基于UCONABC模型的多主体协同使用控制模型,对协同使用控制策略进行分析,给出预先协同决策和过程协同决策两种方案,以期为多主体协同的个人信息使用控制提供了更为灵活和具有动态性特征的使用控制策略。