一种基于SDN的物联网访问控制方法技术

技术编号:21484911 阅读:36 留言:0更新日期:2019-06-29 06:34
本发明专利技术涉及一种基于SDN的物联网访问控制方法,属于物联网领域。S1:首先,提出一个基于SDN网络的IoT设备访问控制架构;S2:访问控制流程,分为以下几个环节:S21令牌构造;S22访问请求;S23细粒度访问控制决策;S24访问控制策略执行;本发明专利技术在SDN网络架构中,降低了访问控制执行和策略管理复杂性,通过引入基于SDN的概念,利用访问控制可以实现更精细的粒度。

【技术实现步骤摘要】
一种基于SDN的物联网访问控制方法
本专利技术属于物联网领域,涉及一种基于SDN的物联网访问控制方法。
技术介绍
访问控制是物联网安全需要解决的重要问题。目前物联网的访问控制主要采用自主访问控制和强制访问控制等方案。传统网络中的访问控制策略存在以下几个问题:缺乏授权、缺少访问控制模型的分布式特性(授权需要集中控制)、规则和策略不一致、静态规则和策略管理复杂性以及策略执行点主要存在性能瓶颈和单点故障的问题。此外,当今网络中的访问控制大多数仅限于应用于网络设备中的防火墙和访问控制列表。防火墙遭受单点故障和静态配置问题,ACL管理复杂且容易出错。当依赖手动配置(例如ACL、VLAN、过滤器规则)时,这种方式很容易出错,并且很容易出现配置错误等问题。近些年,软件定义网络被引入物联网,软件定义网络(SDN)将物联网的控制平面和转发平面分开,以实现底层基础设施的抽象。如何在引入软件定义网络后,处理好物联网的访问控制问题,一直是研究热点。因此,引入SDN网络架构作为降低访问控制执行和策略管理复杂性的关键。
技术实现思路
有鉴于此,本专利技术的目的在于提供一种基于SDN的物联网访问控制方法。为达到上述目的,本专利技术提供如下技术方案:一种基于SDN的物联网访问控制方法,该方法包括以下步骤:S1:首先,提出一个基于SDN网络的IoT设备访问控制架构;包括:a、应用层该层由在虚拟化核心网络上部署的一组应用程序组成;b、控制层该层负责管理网络层设备;该控制层具有最高级别的安全性,并作为访问控制管理的核心;能够获取所有网络设备配置、实现身份验证和访问规则,SDN控制器能够检测恶意行为或其他危险信号出现的情况下生成并修改新转发规则;c、网络层该层包括两种交换机,分别为:SDN交换机与SDN接入交换机;该层中的两种交换机都由控制层管理,且访问规则均由控制层定义;SDN交换机作为基本的网络设备,用于转发数据;SDN控制器使用流表来配置SDN交换机设备并将它们与能够通信的设备连接;SDN接入交换机包含SDN交换机的功能,当物联网设备间存在非法权限数据流时,SDN接入交换机对非法权限数据流进行过滤,从而实现SDN接入交换机对数据流进行控制;d、设备层该层由一组具有不同数据以及支持不同的访问服务的异构设备组成;设备能够运行多个应用程序,每个应用程序将具有不同的权限以访问不同类别的数据;其中包含如下设备:(1)网关;包括两种网关,分别为:安全管理者网关与PDP网关;其中,安全管理者网关用于构造并生成令牌,PDP网关用于实现访问控制中策略决策点PDP的功能,对访问请求生成访问控制决策;(2)主体;发起访问请求的物联网节点;(3)客体;被访问的物联网节点;S2:访问控制流程,分为以下几个环节:S21令牌构造当主体需要访问客体时,主体将请求访问报文发送至安全管理者网关,安全管理者网关通过获取访问请求报文中所包含的主客体ID、请求动作信息和令牌上下文信息生成令牌并下发给主体;S22访问请求主体向客体发起访问请求,访问客体中所存储的数据或资源;主体生成访问请求,其中附加令牌,用于客体对主体的认证并建立访问控制关系,且该请求不被任何中间实体读取;SDN交换机将访问请求转发至客体,当客体IoT设备接收到访问请求后,便开始执行令牌验证步骤;S23细粒度访问控制决策当PDP网关在接收到主体的访问请求报文时会将主体IP、ID与允许授权的请求动作的关联表中主体IP地址所对应的主体ID以及允许授权的请求动作与访问请求报文一同转发给客体,客体IoT设备接收到访问请求后,便开始执行令牌认证;令牌验证步骤如下:1客体检查是否包含令牌;②客体检查数字签名有效性;③客体验证空间上下文信息;如果令牌认证失败,则访问控制决策为拒绝,客体将访问控制决策、主客体ID以及主体的访问时间<TC1:TC2>发送至PDP网关,PDP网关会将该访问决策信息发给SDN控制器。如果令牌验证成功,则客体将主客体ID、请求动作RA及上下文信息和客体允许访问时间段发送至PDP网关,以进一步生成具体的细粒度访问控制决策。PDP网关对主体角色R、主/客体设备安全等级DS、设备普遍等级UR、数据敏感等级PU等信息进行判断,生成访问控制决策发给SDN控制器。S24访问控制策略执行SDN控制层在获取访问控制决策、主客体ID以及主体的访问时间<TC1:TC2>后便将这些信息转换成flow_mod流表并在TC1时刻下发给SDN接入交换机,在TC1时刻,主体开始向客体发送合法权限的数据流,其中可能包含有非法权限的数据流,当数据流进入SDN接入交换机时,SDN接入交换机根据获得的flow_mod流表规则对数据流中合法权限数据流与非法权限数据流进行划分,并过滤非法权限数据流,对合法权限的数据流执行“转发”操作;随后,当PDP网关在接收到主体IP的数据包时会将主体IP、ID与允许授权的请求动作的关联表中主体IP地址所对应的主体ID以及允许授权的请求动作与数据包一同转发给客体,客体根据允许授权的请求动作与数据报文中请求动作进行匹配,如果匹配失败,则当前访问终止,并将终止状态以及主客体ID发送至SDN控制器,SDN控制器根据接收到的这些信息向SDN接入交换机下发更新或删除指定流表中的流表项指令,随后需要主体重新执行步骤S21~S24;如果匹配成功,则客体生成响应并执行请求动作,将请求响应返回至主体。在TC2时刻,SDN控制器会自动向SDN接入交换机下发更新或删除指定流表中的流表项指令。若主体需要访问客体,需要重新发送带令牌的访问控制请求,执行上述S21-S24过程。进一步,所述S21具体为:功能令牌的结构如下:ICAP={S,O,RA,CC}其中参数含义如下:S:表示主体,在令牌构造过程中使用主体ID作为S,用于明确标识功能令牌;O:表示客体,在令牌构造过程中使用客体ID作为O;RA:表示一组请求动作,包括GET、POST、PUT和DELETE;RA是<GET>,<POST>,<POST>或者<NULL>;若RA=<NULL>,则不允许授权主体请求动作;CC:表示一组令牌上下文信息,包括时间上下文、设备安全等级、设备普遍等级、数字签名和公钥;上下文信息包括:时间上下文、空间上下文、设备安全等级、设备普遍等级、数据敏感等级;①时间上下文TC:主体的访问时间作为时间上下文,即TC=<TC1:TC2>,其中TC1为访问起始时间:TC2为访问终止时间;②空间上下文:客体允许访问的IP地址及IP地址范围,即SC=<IP1:IP2:IP3:···:IPi>,由客体对空间上下文进行管理;③设备安全等级DS:主体设备中受信任个数在所在同一空间范围中设备个数中所占比例;如果比例较低,则主体的设备安全等级为0,即DSs=0;如果比例较高,则主体的设备安全等级为1,即DSs=1;其中,主体的设备安全等级保存在安全管理者网关,客体所允许的设备安全等级由客体决定并保存在客体中;④设备普遍等级UR:客体设备个数在所在同一空间范围中所有设备总个数中所占比例;如果比例较低,则客体的设备普遍等级为0,即URo=0;如果比例较高,则客体的设备普遍等级为1,本文档来自技高网...

【技术保护点】
1.一种基于SDN的物联网访问控制方法,其特征在于:该方法包括以下步骤:S1:首先,提出一个基于SDN网络的IoT设备访问控制架构;包括:a、应用层该层由在虚拟化核心网络上部署的一组应用程序组成;b、控制层该层负责管理网络层设备;该控制层具有最高级别的安全性,并作为访问控制管理的核心;能够获取所有网络设备配置、实现身份验证和访问规则,SDN控制器能够检测恶意行为或其他危险信号出现的情况下生成并修改新转发规则;c、网络层该层包括两种交换机,分别为:SDN交换机与SDN接入交换机;该层中的两种交换机都由控制层管理,且访问规则均由控制层定义;SDN交换机作为基本的网络设备,用于转发数据;SDN控制器使用流表来配置SDN交换机设备并将它们与能够通信的设备连接;SDN接入交换机包含SDN交换机的功能,当物联网设备间存在非法权限数据流时,SDN接入交换机对非法权限数据流进行过滤,从而实现SDN接入交换机对不同数据流进行控制;d、设备层该层由一组具有不同数据以及支持不同的访问服务的异构设备组成;设备能够运行多个应用程序,每个应用程序将具有不同的权限以访问不同类别的数据;其中包含如下设备:(1)网关;包括两种网关,分别为:安全管理者网关与PDP网关;其中,安全管理者网关用于构造并生成令牌,PDP网关用于实现访问控制中策略决策点PDP的功能,对访问请求生成访问控制决策;(2)主体;发起访问请求的物联网节点;(3)客体;被访问的物联网节点;S2:访问控制流程,分为以下几个环节:S21 令牌构造当主体需要访问客体时,主体将请求访问报文发送至安全管理者网关,安全管理者网关通过获取访问请求报文中所包含的主客体ID、请求动作信息和令牌上下文信息生成令牌并下发给主体;S22 访问请求主体向客体发起访问请求,访问客体中所存储的数据或资源;主体生成访问请求,其中附加令牌,用于客体对主体的认证并建立访问控制关系,且该请求不被任何中间实体读取;SDN交换机将访问请求转发至客体,当客体IoT设备接收到访问请求后,便开始执行令牌验证步骤;S23 细粒度访问控制决策当PDP网关在接收到主体的访问请求报文时会将主体IP、ID与允许授权的请求动作的关联表中主体IP地址所对应的主体ID以及允许授权的请求动作与访问请求报文一同转发给客体,客体IoT设备接收到访问请求后,便开始执行令牌认证;令牌验证步骤如下:①客体检查请求中是否包含令牌;②客体检查数字签名有效性;③客体验证空间上下文信息;如果令牌认证失败,则访问控制决策为拒绝,客体将访问控制决策、主客体ID以及主体的访问时间<TC1:TC2>发送至PDP网关;PDP网关将认证请求失败返回主体;如果令牌验证成功,则客体将主客体ID、请求动作RA及上下文信息和客体允许访问时间段发送至PDP网关,以进一步生成具体的细粒度访问控制决策;PDP网关对主体角色R、主/客体设备安全等级DS、设备普遍等级UR、数据敏感等级PU等信息进行判断,生成访问控制决策发给SDN控制器;S24 访问控制策略执行SDN控制层在获取访问控制决策、主客体ID以及主体的访问时间<TC1:TC2>后便将这些信息转换成flow_mod流表并在TC1时刻下发给SDN接入交换机,在TC1时刻,主体开始向客体发送合法权限的数据流,其中可能包含有非法权限的数据流,当数据流进入SDN接入交换机时,SDN接入交换机根据获得的flow_mod流表规则对数据流中合法权限数据流与非法权限数据流进行划分,并过滤非法权限数据流,对合法权限的数据流执行“转发”操作;随后,当PDP网关在接收到主体IP的数据包时会将主体IP、ID与允许授权的请求动作的关联表中主体IP地址所对应的主体ID以及允许授权的请求动作与数据包一同转发给客体,客体根据允许授权的请求动作与数据报文中请求动作进行匹配,如果匹配失败,则当前访问终止,并将终止状态以及主客体ID发送至SDN控制器,SDN控制器根据接收到的这些信息向SDN接入交换机下发更新或删除指定流表中的流表项指令,随后需要主体重新执行步骤S21~S24;如果匹配成功,则客体生成响应并执行请求动作,将请求响应返回至主体;在TC2时刻,SDN控制器会自动向SDN接入交换机下发更新或删除指定流表中的流表项指令;若主体需要访问客体,需要重新发送带令牌的访问控制请求,执行上述S21‑S24过程。...

【技术特征摘要】
1.一种基于SDN的物联网访问控制方法,其特征在于:该方法包括以下步骤:S1:首先,提出一个基于SDN网络的IoT设备访问控制架构;包括:a、应用层该层由在虚拟化核心网络上部署的一组应用程序组成;b、控制层该层负责管理网络层设备;该控制层具有最高级别的安全性,并作为访问控制管理的核心;能够获取所有网络设备配置、实现身份验证和访问规则,SDN控制器能够检测恶意行为或其他危险信号出现的情况下生成并修改新转发规则;c、网络层该层包括两种交换机,分别为:SDN交换机与SDN接入交换机;该层中的两种交换机都由控制层管理,且访问规则均由控制层定义;SDN交换机作为基本的网络设备,用于转发数据;SDN控制器使用流表来配置SDN交换机设备并将它们与能够通信的设备连接;SDN接入交换机包含SDN交换机的功能,当物联网设备间存在非法权限数据流时,SDN接入交换机对非法权限数据流进行过滤,从而实现SDN接入交换机对不同数据流进行控制;d、设备层该层由一组具有不同数据以及支持不同的访问服务的异构设备组成;设备能够运行多个应用程序,每个应用程序将具有不同的权限以访问不同类别的数据;其中包含如下设备:(1)网关;包括两种网关,分别为:安全管理者网关与PDP网关;其中,安全管理者网关用于构造并生成令牌,PDP网关用于实现访问控制中策略决策点PDP的功能,对访问请求生成访问控制决策;(2)主体;发起访问请求的物联网节点;(3)客体;被访问的物联网节点;S2:访问控制流程,分为以下几个环节:S21令牌构造当主体需要访问客体时,主体将请求访问报文发送至安全管理者网关,安全管理者网关通过获取访问请求报文中所包含的主客体ID、请求动作信息和令牌上下文信息生成令牌并下发给主体;S22访问请求主体向客体发起访问请求,访问客体中所存储的数据或资源;主体生成访问请求,其中附加令牌,用于客体对主体的认证并建立访问控制关系,且该请求不被任何中间实体读取;SDN交换机将访问请求转发至客体,当客体IoT设备接收到访问请求后,便开始执行令牌验证步骤;S23细粒度访问控制决策当PDP网关在接收到主体的访问请求报文时会将主体IP、ID与允许授权的请求动作的关联表中主体IP地址所对应的主体ID以及允许授权的请求动作与访问请求报文一同转发给客体,客体IoT设备接收到访问请求后,便开始执行令牌认证;令牌验证步骤如下:①客体检查请求中是否包含令牌;②客体检查数字签名有效性;③客体验证空间上下文信息;如果令牌认证失败,则访问控制决策为拒绝,客体将访问控制决策、主客体ID以及主体的访问时间<TC1:TC2>发送至PDP网关;PDP网关将认证请求失败返回主体;如果令牌验证成功,则客体将主客体ID、请求动作RA及上下文信息和客体允许访问时间段发送至PDP网关,以进一步生成具体的细粒度访问控制决策;PDP网关对主体角色R、主/客体设备安全等级DS、设备普遍等级UR、数据敏感等级PU等信息进行判断,生成访问控制决策发给SDN控制器;S24访问控制策略执行SDN控制层在获取访问控制决策、主客体ID以及主体的访问时间<TC1:TC2>后便将这些信息转换成flow_mod流表并在TC1时刻下发给SDN接入交换机,在TC1时刻,主体开始向客体发送合法权限的数据流,其中可能包含有非法权限的数据流,当数据流进入SDN接入交换机时,SDN接入交换机根据获得的flow_mod流表规则对数据流中合法权限数据流与非法权限数据流进行划分,并过滤非法权限数据流,对合法权限的数据流执行“转发”操作;随后,当PDP网关在接收到主体IP的数据包时会将主体IP、ID与允许授权的请求动作的关联表中主体IP地址所对应的主体ID以及允许授权的请求动作与数据包一同转发给客体,客体根据允许授权的请求动作与数据报文中请求动作进行匹配,如果匹配失败,则当前访问终止,并将终止状态以及主客体ID发送至SDN控制器,SDN控制器根据接收到的这些信息向SDN接入交换机下发更新或删除指定流表中的流表项指令,随后需要主体重新执行步骤S21~S24;如果匹配成功,则客体生成响应并执行请求动作,将请求响应返回至主体;在TC2时刻,SDN控制器会自动向SDN接入交换机下发更新或删除指定流表中的流表项指令;若主体需要访问客体,需要重新发送带令牌的访问控制请求,执行上述S21-S24过程。2.根据权利要求1所述的一种基于SDN的物联网访问控制方法,其特征在于:所述S21具体为:功能令牌的结构如下:ICAP={S,O,RA,CC}其中参数含义如下:S:表示主体,在令牌构造过程中使用主体ID作为S,用于明确标识功能令牌;O:表示客体,在令牌构造过程中使用客体ID作为O;RA:表示一组请求动作,包括GET、POST、PUT和DELETE;RA是<GET>,<POST>,<POST>或者<NULL>;若RA=<NULL>,则不允许授权主体请求动作;CC:表示一组令牌上下文信息,包括时间上下文、设备安全等级、设备普遍等级、数字签名和公钥;上下文信息包括:时间上下文、空间上下文、设备安全等级、设备普遍等级、数据敏感等级;①时间上下文TC:主体的访问时间作为时间上下文,即TC=<TC1:TC2>,其中TC1为访问起始时间:TC2为访问终止时间;②空间上下文:客体允许访问的IP地址及IP地址范围,即SC=<IP1:IP2:IP3:···:IPi>,由客体对空间上下文进行管理;③设备安全等级DS:主体设备中受信任个数在所在同一空间范围中设备个数中所占比例;如果比例较低,则主体的设备安全等级为0,即DSs=0;如果比例较高,则主体的设备安全等级为1,即DSs=1;其中,主体的设备安全等级保存在安全管理者网关,客体所允许的设备安全等级由客体决定并保存在客体中;④设备普遍等级UR:客体设备个数在所在同一空间范围中所有设备总个数中所占比例;如果比例较低,则客体的设备普遍等级为0,即URo=0;如果比例较高,则客体的设备普遍等级为1,即URo=0;其中,主体所请求的设备普遍等级由主体决定并保存在主体中,客体的设备普遍等级保存在PDP网关中;⑤数据敏感等级PU:将数据敏感等级分为一般和严重两个等级,数据受访问后所可能带来后果的严重性较低的数据为一般,则PU=1,否则,数据受访问后所可能带来后果的严重性较高的数据为严重,则PU=2;其中,数据敏感等级由客体自己定义并保存在客体中。3.根据权利要求1所述的一种基于SDN的物联网访问控制方法,其特征在于:所述S23具体为:当客体IoT设备接收到访问请求后便开始执行令牌验证过程;首先,客体检查是否包含令牌、签名有效...

【专利技术属性】
技术研发人员:魏旻聂自闯
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:重庆,50

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1