一种区域医疗信息系统及访问权限控制方法
技术领域
本发明涉及信息安全技术领域,尤其是涉及一种区域医疗信息系统,以及该系统的访问权限控制方法。
背景技术
现实中由于患者会到多个机构就诊,在没有构建区域医疗共享中心前各个医疗机构产生的诊疗信息均存在于各个医疗机构;为了构建区域医疗信息系统,需要将多个机构进行互联,在此过程中,机构与区域中心之间产生信息交相访问的要求,患者的健康信息一般包括人们接受医疗服务的记录,还包括免疫接种、接受保健服务、参与健康教育活动的记录等。个人健康信息作为区域医疗的核心数据,具有极强的私密性,其表现在:1.人身专属性,记录、储存的信息与特定的个人不可分割,其记录的是一个人成长过程中所有健康卫生信息;2.敏感性,健康信息中包含既往病史、生理状况等,特别是涉及有传染、艾滋、精神等特殊疾病的,关乎个人私密的东西,极具敏感性;3.安全保密性,健康信息中具有个人标识,隐私性强,一旦泄露将对个人生活发展造成巨大影响。因此,需要对访问进行权限控制管理,以达到对患者的健康信息保护的作用。现有的权限管理方法解决的是按角色授权的机制,更多的是静态意义上的权限分配,而医疗行业的业务行为与数据的调阅权之间的关系是动态变化的,比如多家医院一起开展的会诊时对患者的信息查看是一个临时行为;且传统方法无法将医疗行为中行为本身与医生、患者的关联导致的权限进行动态关联。
发明内容
本发明主要是解决现有技术中医疗机构采用的授权机制都是静态权限分配,不能根据动态发生的行为进行动态权限分配的问题,提供了一种可以根据发生的医疗行为进行动态权限分配的区域医疗信息系统。
本发明还提供了一种区域医疗信息访问权限控制方法。
本发明的上述技术问题主要是通过下述技术方案得以解决的:一种区域医疗信息系统,包括有若干医疗机构端和区域中心端,所述医疗机构端都包括有第一数据模块和前置机,第一数据模块内存储有分类设置的患者信息、用户信息、用户权限信息、患者医疗记录;所述区域中心端包括有区域平台和第二数据模块,所述第二数据模块内存储有各机构端信息、机构端权限信息、各机构端内信息的索引、各机构端内患者医疗记录;所述第一数据模块与前置机相连接,各前置机分别通过网络与区域平台相连接,区域平台与第二数据模块相连接;机构端的用户先在机构端进行注册,注册后提供的信息形成用户信息存储在该机构端的第一数据模块内;第二数据模块内存储各个与区域中心端相连的机构端的信息,制定的各机构端的权限策略,以及各机构端存储的信息的索引,即各机构端的第一数据模块内存储信息时,会将该信息的索引发送给区域中心,区域中心保存有索引,通过索引找到该对应的信息;机构端在中心区域端先进行注册,另外机构端之间的业务信息如临时授权信息在中心区域端进行记录。
所述前置机包括有第一认证模块、第一访问控制模块,第一认证模块连接到第一访问控制模块上,第一认证模块和第一访问控制模块分别与第一数据模块相连,
第一认证模块对用户进行认证并对用户进行通用权限分配,同时生成根据医疗行为而变化的令牌;用户通过机构端认证后获得通用权限,该过程为通用的角色授权机制过程,在此不在赘述,同时发放与该用户对应的令牌。用户每发起一个访问请求时就产生一个令牌,令牌和通用权限相组合构成该次访问该用户的最终权限。
第一访问控制模块根据令牌对用户进行权限判断或将令牌发送给区域平台;第一访问控制模块接收第一认证模块生成的令牌,第一访问控制模块对访问的目标信息所属范围进行判定,若超出所属机构端范围,则将令牌发送到区域中心端。若未超出所属机构端则判断用户是否有权限访问。
所述区域平台包括第二认证模块和第二访问控制模块,第二认证模块连接到第二访问控制模块上,第二认证模块和第二访问控制模块分别与第二数据模块相连,
第二认证模块接收机构端发送的令牌,对用户所属机构端进行认证并对机构端进行权限分配,同时更新令牌;
第二访问控制模块根据更新后的令牌对用户进行权限判断。若判断有权限,则第二访问控制模块根据区域中心端第二数据模块中的信息的索引,从目标机构端提取信息返回给用户。
本发明的系统采用将通用权限与个性化权限要素结合的授权机制来对个人健康数据进行访问控制,用户访问权限根据医疗行为中业务与数据调阅权之间的变化而动态变化,使得患者健康信息得到动态、有效以及全面的保护,另外也使得机构端和区域中心端中动态权限得到了有效的管理。
第一数据模块中患者信息分类成社会学信息和病历信息,其中病历信息分类成健康体检信息、普通疾病信息和隐私疾病信息;第一数据模块内将患者信息进行分类存储,其中社会学信息包括有患者身份 、姓名、年龄、名族等信息。令牌包含有患者身份、用户身份、就诊信息和请求信息,其中就诊信息包含有识别该次就诊行为的就诊标号和表示该次就诊行为是否结诊的标号;访问请求包含有访问时间、访问内容、目标信息所属机构端标号;医疗记录包含有识别该次就诊行为的就诊标号、患者身份、经诊医生身份、该次就诊行为是否结诊的状态信息、以及患者是否授权医生查看隐私疾病信息的授权状态信息。
一种区域医疗信息访问权限控制方法,采用权利要求1中的区域医疗信息系统,包括以下步骤:
a.用户对目标信息发起访问请求,第一认证模块接收访问请求,对用户进行认证并对用户进行通用权限分配,同时生成根据医疗行为动态变化的令牌,第一认证模块将令牌发送给第一访问控制模块;在第一数据模块内存储有用户列表、权限列表、用户与权限映射关系表,在发起访问请求时,第一访问控制模块根据权限映射关系分配给用户相应的通用权限。该通用权限分配即采用现在的角色授权机制。这里用户通用权限分配先要制定权限策略,这个可以根据需要进行指定。在本发明中用户与权限的映射关系为,用户身份分为医生和科研人员,用户身份为医生则分配到的权限为:可以查看其诊治患者的普通疾病信息;用户身份为科研人员,则分配到的权限为:可以查看患者的病历信息,但不能查看患者的社会学信息。
b.第一访问模块先对目标信息所属范围进行判定,若属于本机构端范围,则第一访问模块根据令牌判断用户是否有访问权限,有权限则返回用户目标信息,否则返回拒绝信息;若业务超出机构端范围,则触发机构端与区域中心端连接,第一访问模块将令牌发送给第二认证模块;
c.第二认证模块对用户所属机构端进行认证并对机构端进行机构通用权限分配,同时更新令牌,第二认证模块将令牌发送给第二访问控制模块;在第二数据模块内存储有机构端列表、机构端通权限列表、机构端与权限映射关系表,在区域中心收到令牌后,第二访问控制模块根据权限映射关系分配给用户所在机构端相应的机构端通用权限,该权限比如为有权访问其他全部机构端,或是只能有权访问其中机构机构端。也就是明确了用户所在机构端对其他机构端的访问权限。该机构端通用权限分配也是采用现在的角色授权机制。
d.第二访问模块根据令牌判断用户是否有访问权限,有权限则第二访问控制模块从目标机构端提取目标信息返回给用户,否则返回拒绝信息。
作为一种优选方案,所述第一数据模块中患者信息分类成社会学信息和病历信息,其中病历信息分类成健康体检信息、普通疾病信息和隐私疾病信息;第一数据模块内将患者信息进行分类存储,其中社会学信息包括有患者身份 、姓名、年龄、名族等信息。
所述令牌包含有患者身份、用户身份、就诊信息和请求信息,其中就诊信息包含有识别该次就诊行为的就诊标号和表示该次就诊行为是否结诊的标号;
所述访问请求包含有访问时间、访问内容、目标信息所属机构端标号;
所述医疗记录包含有识别该次就诊行为的就诊标号、患者身份、经诊医生身份、该次就诊行为是否结诊的状态信息、以及患者是否授权医生查看隐私疾病信息的授权状态信息。
作为一种优选方案,步骤b中第一访问模块根据令牌判断用户是否有访问权限的过程为:
1).判断用户请求访问的信息所处的就诊行为是否有效,根据令牌就诊信息中的就诊标号调取相应就诊标号的医疗记录,查看该医疗记录中就诊行为是否结诊的状态信息,若状态信息标示就诊,则进入步骤2),若专题信息标示结诊,则返回拒绝信息;
2).判断用户是否为患者经诊医生,查看医疗记录中该就诊行为中经诊医生身份,若令牌中用户身份与该经诊医生身份一致,则判定用户为经诊医生,进入步骤3),反之则返回拒绝信息;
3).判断用户是否有权限查看目标信息,判断用户请求的活动是否与用户通用权限相匹配,若相匹配则有访问权限,反之则返回拒绝信息;
若目标信息为隐私疾病信息,则查看医疗记录中授权状态信息,若为授权则有访问权限,反之返回拒绝信息。
作为一种优选方案,步骤c更新令牌的过程为在令牌内增加标识所属机构端的机构标号,并查看第二数据模块是否存在对目标机构临时授权信息,若有则在令牌内增加临时授权信息,该临时授权信息包含允许访问的时间范围。
作为一种优选方案,步骤d中第二访问模块根据令牌判断用户是否有访问权限的过程为:
a).判断机构端是否合法,将令牌中机构端标号与第二数据模块中各机构端信息比较,若有匹配的机构端标号,则判断机构端为经过认证的是合法的,进入步骤b);
b).判断机构端是否有权限访问目标机构端,判断用户请求的活动是否与机构端通用权限相匹配,若相匹配则有访问权限,进入步骤c),反之则返回拒绝信息;
若有临时授权信息的,则判断访问时间是否在临时授权信息的时间范围内,若是则有访问权限,进入步骤c),反之则返回拒绝信息。
c).判断用户请求访问的信息所处的就诊行为是否有效,根据令牌就诊信息中的就诊标号调取相应就诊标号的医疗记录,查看该医疗记录中就诊行为是否结诊的状态信息,若状态信息标示就诊,则进入步骤d),若专题信息标示结诊,则返回拒绝信息;
d).判断用户是否为患者经诊医生,查看医疗记录中该就诊行为中经诊医生身份,若令牌中用户身份与该经诊医生身份一致,则判定用户为经诊医生,进入步骤3),反之则返回拒绝信息;
e).判断用户是否有权限查看目标信息,判断用户请求的活动是否与用户通用权限相匹配,若相匹配则有访问权限,反之则返回拒绝信息;
若目标信息为隐私疾病信息,则查看医疗记录中授权状态信息,若为授权则有访问权限,反之返回拒绝信息。
因此,本发明优点是:将通用权限与个性化权限要素结合的授权机制来对个人健康数据进行访问控制,用户访问权限根据医疗行为中业务与数据调阅权之间的变化而动态变化,使得患者健康信息得到动态、有效以及全面的保护,另外也使得机构端和区域中心端中动态权限得到了有效的管理。
附图说明
附图1是本发明的一种结构框示图;
附图2是本发明中用户和通用权限的分配关系的举例示意图;
附图3是本发明中机构端和机构端通用权限的分配关系的举例示意图;
附图4是本发明中令牌的一种模板格式示意图;
附图5是本发明中医疗记录的一种模板格式示意图;
附图6是本发明中的方法流程示意图。
1-机构端 2-区域中心端 3-第一数据模块 4-前置机 5-第二数据模块 6-区域平台 7-第一认证模块 8-第一访问控制模块 9-第二认证模块 10-第二访问控制模块。
具体实施方式
下面通过实施例,并结合附图,对本发明的技术方案作进一步具体的说明。
实施例:
本实施例一种区域医疗信息系统,如图1所示,包括有一个区域中心端2和多个机构端1,该机构端为各级医院或体检中心。机构端包括有第一数据模块3和前置机4,该前置机又包括第一认证模块7和第一访问控制模块8,该第一认证模块和第一访问控制模块分别与第一访问控制模块连接,第一数据模块与第一认证模块相连接。该区域中心端包括有第二数据模块10和区域平台6,区域平台包括有第二认证模块9和第二访问控制模块10,第二数据认证模块与第二访问控制模块连接,第二认证模块和第二访问控制模块分别与第二数据模块5与相连接。域平台和前置机之间通过网络相连接。
该第一数据模块中存储有患者信息、用户信息、用户权限信息和患者医疗记录,这些信息在用户进行注册以及患者进行就诊时存储在第一数据库内,同时还根据用户患者信息的增加、以及诊治过程中产生的信息对第一数据模块中的信息进行更新。第二数据模块内存储有各机构端信息、机构端权限信息、个机构端内信息的索引、各机构端被患者医疗记录,机构端要在区域中心端进行注册,将机构端的信息在第二数据模块内进行存储,同时根据机构端信息的变化对第二数据库内存储的信息进行更新。
用户信息包括用户姓名、年龄等普通信息,还包括用户身份标号、用户等级、所在机构端标号等。
这里的患者信息其通过分类形式存储在第一数据模块内,患者信息分类成社会学信息和病历信息,其中病历信息分类成健康体检信息、普通疾病信息和隐私疾病信息,其中社会学信息包括有患者身份标号 、姓名、年龄、名族等信息;病历信息包括患者就诊中就诊中产生的各项数据及资料,如各种项目检测的数据、或是检测产生图片信息等。每类信息都要有相应权限才能访问。
如图6所示,本实施例的区域医疗信息系统的信息访问权限控制方法为,包括以下步骤,
a.用户对目标信息发起访问请求,第一认证模块接收访问请求,对用户进行认证并对用户进行通用权限分配,同时生成根据医疗行为动态变化的令牌,第一认证模块将令牌发送给第一访问控制模块;
认证和通用权限过程为采用现有的角色授权机制过程,先对进行权限策略制定,即对用户进行分级,对通用权限进行分类,相应级别用户获取相应的通用权限。如图2所示,该图例举了本实施例中用户与通用权限的部分分配关系,比如用户A,先根据第一数据模块内用户信息如唯一的识别身份的标号对用户A进行身份认证,认证成功后再识别用户级别,其级别为医生,根据制定的权限策略,分配给用户A可以查看其诊治患者的普通疾病信息和可以查看诊治患者的社会学信息的权限;用户B,先对其进行认证,认证成功后在识别用户级别,其级别为科研人员,根据制定的权限策略,分配给用户B可以查看患者的病历信息,但不能查看患者的社会学信息的权限。权限策略的制定根据不同情况和需求制定,这里用户进行权限分配就是分配到一些基础通用的权限。认证后要对用户生成动态令牌,如图4所示,该令牌包含有患者身份、用户身份、就诊信息和请求信息,其中就诊信息包含有识别该次就诊行为的就诊标号和表示该次就诊行为是否结诊的状态标号。另外,用户在发起访问时产生范围请求,访问请求包含有访问时间、访问内容、目标信息所属机构端标号。
b.第一访问模块先对目标信息所属范围进行判定,其过程读取访问请求中的目标信息的所属机构端标号,与用户所在机构端标号进行比较。若属于本机构端范围,则第一访问模块根据令牌判断用户是否有访问权限,有权限则返回用户目标信息,否则返回拒绝信息;
该判断用户是否有访问权限的过程为:
1).判断用户请求访问的信息所处的就诊行为是否有效,根据令牌就诊信息中的就诊标号调取相应就诊标号的医疗记录,查看该医疗记录中就诊行为是否结诊的状态信息,若状态信息标示就诊,则进入步骤2),若专题信息标示结诊,则返回拒绝信息;
2).判断用户是否为患者经诊医生,查看医疗记录中该就诊行为中经诊医生身份,若令牌中用户身份与该经诊医生身份一致,则判定用户为经诊医生,进入步骤3),反之则返回拒绝信息;
3).判断用户是否有权限查看目标信息,判断用户请求的活动是否与用户通用权限相匹配,若相匹配则有访问权限,反之则返回拒绝信息;以图2中用户A为例,如用户A访问请求中访问内容为患者普通疾病信息,该用户在通用权限分配后具有可以访问其患者的普通疾病信息,用户请求的活动与用户通用权限是相匹配的。
若目标信息为隐私疾病信息,则查看医疗记录中授权状态信息,若为授权则有访问权限,反之返回拒绝信息。
若业务超出机构端范围,则触发机构端与区域中心端连接,第一访问模块将令牌发送给第二认证模块;
c.第二认证模块对用户所属机构端进行认证并对机构端进行机构通用权限分配,同时更新令牌,第二认证模块将令牌发送给第二访问控制模块; 这里机构端认证和机端通用权限分配也是采用现有的角色授权机制过程,先对进行权限策略制定,即对机构端进行分级,对机构端通用权限进行分类,相应级别机构端获取相应的机构端通用权限。如图4所示,该图例举了本实施例中机构端与机构端通用权限的部分分配关系,比如机构端X,先根据第二数据模块内机构端信息如唯一的识别机构端的标号对机构端X进行认证,认证成功后根据制定的权限策略,分配给机构端X可以查看机构端Y和不能查看机构端Z的权限;同理机构端Y,先对其进行认证,认证成功后,根据制定的权限策略,分配给机构端Y可以查看机构端X的权限。令牌在发送给第二认证模块后进行了更新,增加了标识所属机构端的机构标号,并查看第二数据模块是否存在对目标机构临时授权信息,若有则在令牌内增加临时授权信息,该临时授权信息包含允许访问的时间范围。
d.第二访问模块根据令牌判断用户是否有访问权限,有权限则第二访问控制模块根据信息的索引从目标机构端提取目标信息返回给用户,否则返回拒绝信息。
该根据令牌判断用户是否有访问权限的过程为:
a).判断机构端是否合法,将令牌中机构端标号与第二数据模块中各机构端信息比较,若有匹配的机构端标号,则判断机构端为经过认证的是合法的,进入步骤b);
b).判断机构端是否有权限访问目标机构端,判断用户请求的活动是否与机构端通用权限相匹配,若相匹配则有访问权限,进入步骤c),反之则返回拒绝信息;继续以该用户A为例,用户A所属机构端X,用户A要请求访问机构端Y上信息,该访问请求中访问内容包括有机构端X访问机构端Y的信息,而该用户在机构端通用权限分配后具有可以访问机构端Y的权限,用户请求的活动与用户所属机构端通用权限是相匹配的。
若有临时授权信息的,则判断访问时间是否在临时授权信息的时间范围内,若是则有访问权限,进入步骤c),反之则返回拒绝信息。如机构端X与机构端Z之间具有临时授权信息,机构端X可以在某时间段内具有访问机构端Z的权限,该临时授权信息具有表示一时间段标号,若在机构端X请求访问机构端Z的信息时,在此步骤中读取访问请求中请求的时间,判断该时间是否在临时授权信息的时间段范围内。
c).判断用户请求访问的信息所处的就诊行为是否有效,根据令牌就诊信息中的就诊标号调取相应就诊标号的医疗记录,查看该医疗记录中就诊行为是否结诊的状态信息,若状态信息标示就诊,则进入步骤d),若专题信息标示结诊,则返回拒绝信息;
d).判断用户是否为患者经诊医生,查看医疗记录中该就诊行为中经诊医生身份,若令牌中用户身份与该经诊医生身份一致,则判定用户为经诊医生,进入步骤3),反之则返回拒绝信息;
e).判断用户是否有权限查看目标信息,判断用户请求的活动是否与用户通用权限相匹配,若相匹配则有访问权限,反之则返回拒绝信息;
若目标信息为隐私疾病信息,则查看医疗记录中授权状态信息,若为授权则有访问权限,反之返回拒绝信息。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
尽管本文较多地使用了机构端、区域中心端、第一数据模块、第二数据模块等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。