1.本发明涉及物联网技术领域,尤其是涉及一种物联网设备分享控制权限的方法。
背景技术:
[0002]“万物互联”的一个重要含义,就是“分享”:每个物联网设备都可以很方便地将自身的信息分享给其他物联网设备或用户,同时也可以很方便地获取其他物联网设备的信息。
[0003]
分享功能的实现,涉及到对物联网设备的权限控制,因为不同级别的用户对同一物联网设备的控制权限是不同的。目前,用户1将一个物联网设备分享给用户2时,主流的解决方案是这样的:
[0004]
第一步,物联网设备与云服务器连接,将所有控制权限都开放给云服务器,由云服务器来决定执行什么操作;
[0005]
第二步,用户1在手机app、windows软件或网页等控制端上设置用户2的权限信息和有效时长,并将这些信息保存在云服务器;
[0006]
第三步,用户2连接到云服务器后,云服务器根据用户1设定的权限信息和有效时长,决定用户2拥有什么权限、可以执行什么操作。
[0007]
这种解决方案主要有三个问题:
[0008]
(1)物联网设备完全由云服务器进行控制,物联网设备自身无从得知用户有哪些控制权限,也不知道这些控制权限可以使用多久,因此存在被非法控制的安全隐患;
[0009]
(2)用户对物联网设备的控制需要通过云服务器进行中转,实时性变差了。如果网络状况不好,用户体验将会非常糟糕;
[0010]
(3)如果物联网设备在使用过程中失去了与云服务器的连接,用户将无法执行任何操作。
[0011]
《物联网装置离线共享的存取权限控制方法》(cn104580478a)中提到了一种可以对物联网设备进行离线控制的方法,其思路是这样的:在物联网设备中储存包括账号名和密码在内的用户信息;离线状态下,用户可以通过蓝牙等手段与物联网设备连接,物联网设备根据内部储存的用户信息就可以判断该用户是不是合法用户。
[0012]
这种方法主要有三个问题:
[0013]
(1)该方法在物联网设备中建了一个共享列表,用于储存用户的账号和密码。很显然,这会增加用户信息泄露的风险;
[0014]
(2)该方法只针对一种权限:存取。如果权限数量增多、并且需要对不同用户分配不同权限的话,这种方法就不好用了,共享表格和控制逻辑都变得非常繁琐。如果用户数量再成倍数增加的话,共享表格将臃肿到难以想象。也许数据库可以很好地解决这个问题,但是在物联网设备中安装数据库是不现实的。因此,这种方法只适用于权限和用户的数量都很少的应用场景。
[0015]
(3)该方法是在物联网设备中变更共享列表并更新到服务器,在物联网设备离线
的情况下,该方法将无法变更非主用户的分享权限。
技术实现要素:
[0016]
针对现有技术存在的上述问题,本发明提供了一种方法,可让物联网设备在无须本地储存大量用户信息的基础上获知某个共享用户的控制权限和有效时长,从而实现无需云服务器中转的直连控制。
[0017]
本发明的技术方案如下:
[0018]
一种物联网设备分享控制权限的方法,物联网设备生成用于对控制权限的分享信息进行加密和解密的加密码,并将该加密码与加密协议版本号一起上报到云服务器;
[0019]
主用户设置非主用户分享权限控制时,云服务器根据加密协议版本号选择相应的加密协议,利用该加密协议和加密码把主用户id、控制权限的分享信息加密生成权限访问密钥;
[0020]
非主用户从云服务器的权限访问密钥后,利用设备用户名、设备密码和权限访问密钥登录物联网设备即可获得控制权限。
[0021]
优选的,具体步骤如下:
[0022]
(1)物联网设备生成用于对控制权限的分享信息进行加密和解密的加密码,并保存在该设备本地;
[0023]
(2)物联网设备将加密码和加密协议版本号一起上报到云服务器,云服务器收到后进行保存;
[0024]
(3)主用户通过控制端向云服务器发送查询请求,目的是查询物联网设备的可分享的控制权限的相关信息;
[0025]
(4)云服务器收到来自主用户控制端的查询请求后,将物联网设备的可分享的控制权限的相关信息反馈给主用户的控制端;
[0026]
(5)主用户在控制端设置好物联网设备非主用户的控制权限的分享信息和分享有效期后,发送给云服务器请求配置非主用户的控制权限信息;
[0027]
(6)云服务器收到来自主用户控制端的配置非主用户的控制权限信息请求后,根据加密协议版本号使用相应的加密协议,利用该加密协议和加密码把主用户id、控制权限的分享信息和分享有效期加密生成权限访问密钥进行保存;
[0028]
(7)非主用户在控制端向服务器请求包括权限访问密钥在内的最新设备列表;
[0029]
(8)非主用户在控制端收到来自云服务器的最新设备列表之后,通过直连方式与物联网设备建立连接;连接成功后,非主用户的控制端向该设备发送登录请求、设备用户名、设备密码和权限访问密钥;
[0030]
(9)物联网设备收到来自非主用户控制端的登陆请求后,验证设备用户名和设备密码是否一致,如果是,就将登陆成功的信息反馈给非主用户的控制端,并且利用加密码解密权限访问密钥,从而得知控制权限的分享信息和分享有效期;
[0031]
(10)非主用户收到来自物联网设备的登陆成功的反馈信息后,通过控制端对该设备发送操作指令;该设备判断非主用户是否具有该操作指令的控制权限以及该控制权限是否在分享有效期内,如果是,就执行该操作。
[0032]
优选的,所述控制端包括手机app、平板电脑app、windows软件、网页。
[0033]
优选的,步骤(8)的所述直连方式包括蓝牙、红外、232串口、485串口、can总线、有线以太网、wifi。
[0034]
优选的,步骤(11)中,物联网设备收到来自非主用户控制端的登陆请求后,验证设备用户名和设备密码是否一致,如果不是,就将“用户名错误”或“密码错误”的信息反馈给非主用户的控制端。
[0035]
优选的,步骤(12)中,该设备判断非主用户是否具有该操作指令的控制权限以及该控制权限是否在分享有效期内,如果不是,就将“不具有该操作指令的控制权限”或“控制权限不在有效期内”的信息反馈给非主用户的控制端。
[0036]
在上述技术方案中,所述的加密和解密方法采用现有技术中通用的对称加密算法。
[0037]
本发明的有益效果是:
[0038]
(1)与主流解决方案相比,本发明仅在执行分享操作时才需要连接云服务器。分享成功之后,用户可通过蓝牙、红外、wifi等方法直接控制物联网设备,无需云服务器中转,不仅速度更快、体验更好,而且降低了被非法控制的风险;
[0039]
(2)与《物联网装置离线共享的存取权限控制方法》(cn104580478a)相比,本发明无需在物联网设备内部建立一个用于储存用户的账号名和密码等信息的共享列表,不仅降低了泄露用户信息的风险、节省了系统资源,而且适应性更好,无需对源程序做任何修改即可很好地应用于权限和用户的数量非常多的应用场景。
[0040]
(3)与《物联网装置离线共享的存取权限控制方法》(cn104580478a)相比,本发明在用户2添加物联网设备后,用户1仍然可以向服务器请求配置用户2的分享权限,用户2从服务器获取最新的分享权限后再发送给物联网设备。这样就实现了设备离线时用户1也能变更用户2的分享权限。
附图说明
[0041]
附图1是本发明的模块功能示意图,用于说明手机app、云服务器、物联网设备这三个模块各自具有什么功能。
[0042]
附图2是本发明的网络结构图,用于说明手机app、云服务器、物联网设备这三个模块之间是通过何种方式进行连接的。
[0043]
附图3是本发明的功能流程图,用于说明手机app、云服务器、物联网设备这三个模块之间的信息交互过程。
具体实施方式
[0044]
下面结合附图1-3,对本发明进行具体描述。
[0045]
如附图1-3所示,各模块的功能如下:
[0046]
手机app:与物联网设备直接建立连接,生成加密码,向物联网设备发送绑定信息、加密码以及控制指令,向服务器请求分享设备,从服务器获取设备列表、权限访问密钥等信息。
[0047]
物联网设备:接收并响应来自手机app的控制指令,向云服务器发送绑定请求、加密码等信息。
[0048]
云服务器:用户信息和设备信息绑定管理,通过加密码将用户权限信息加密生成权限访问密钥发送给手机app。
[0049]
手机app、云服务器、物联网设备三者之间可以相互连接。物联网设备和手机app都可以通过wifi和有线以太网的方式与云服务器进行连接;物联网设备与手机app之间可以通过蓝牙、wifi等方式进行连接。
[0050]
实施例:
[0051]
用户1将物联网摄像机的回放pb、对讲tk这两项功能的控制权限分享给用户2,步骤如下:
[0052]
(1)物联网摄像机生成加密码(3kjfdfj)并保存在本地;
[0053]
(2)如果物联网摄像机能接入网络并与云服务器正常通信,物联网摄像机就自动将该加密码和加密协议版本号(v1.0)上报给云服务器,云服务器收到后进行保存;其中加密协议版本号用来约定设备和服务器直接使用相同加密和解密协议,如v1.0代表aes加密协议
[0054]
(3)用户1通过手机app连接云服务器,查询物联网摄像机的可分享的控制权限的相关信息;
[0055]
(4)云服务器收到用户1的查询请求后,将物联网摄像机的可分享的控制权限的相关信息反馈给用户1的手机app,包括回放pb、对讲tk、云台tpz等诸多功能;
[0056]
(5)用户1在手机app上将用户2的回放pb和对讲tk这两项功能的“不分享”状态设置为“分享”,同时把分享有效期设置为20210723;设置完成后,手机app将这两项功能的分享信息(pb-tk-20210723)与用户1的id(10248773)一起发送到云服务器,并向云服务器请求配置用户2的控制权限信息;
[0057]
(6)云服务器收到用户1的配置用户2的控制权限信息请求后,根据加密协议版本号(v1.0)选择相应的加密协议,如aes加密,利用aes加密使用加密码(3kjfdfj)把用户1的id(10248773)、回放pb和对讲tk的分享信息和分享有效期等信息组合(10248773-pb-tk-20210723)加密生成权限访问密钥(u2fsdgvkx1+cdkqjro0zwr7/hkrckpshqdz8pyoziuorcg+q7xlklshvsjvr7ll/)进行保存;
[0058]
(7)用户2在手机app向服务器请求包括权限访问密钥在内的最新设备列表;
[0059]
(8)用户2的手机app收到来自云服务器的最新设备列表之后,通过蓝牙与物联网摄像机建立连接;连接成功后,用户2的手机app向物联网摄像机发送登录请求、设备用户名、设备密码和权限访问密钥(u2fsdgvkx1+cdkqjro0zwr7/hkrckpshqdz8pyoziuorcg+q7xlklshvsjvr7ll/);
[0060]
(9)物联网摄像机收到来自用户2的手机app的登陆请求后,验证设备用户名和设备密码是否一致,如果是,就将“登陆成功”的信息反馈给用户2的手机app,利用aes加密使用加密码(3kjfdfj)解密权限访问密钥(u2fsdgvkx1+cdkqjro0zwr7/hkrckpshqdz8pyoziuorcg+q7xlklshvsjvr7ll/),从而得知用户2获得的控制权限为回放功能pb和对讲功能tk,权限分享有效期为20210723,并将这些信息保存在当前会话中;如果不是,就将“用户名错误”或“密码错误”的信息反馈给用户2的手机app;
[0061]
(10)用户2的手机app收到来自物联网摄像机的“登陆成功”的反馈信息后,可以通过蓝牙直接对物联网摄像机发送操作指令。物联网摄像机判断用户2是否具有该操作指令
的控制权限以及该控制权限是否在权限分享有效期内,如果是,就执行该操作;如果不是,就将“不具有该操作指令的控制权限”或“控制权限不在有效期内”的信息反馈给用户2的手机app。例如:用户2对物联网摄像机发送云台控制指令时,摄像机根据当前会话中的权限分享信息可以判断出用户2没有云台控制权限,从而不对云台控制指令进行响应;用户2在2021年7月24日对摄像机发送回放请求时,摄像机根据当前会话中的权限分享有效期可以判断出用户2获取的权限已经过期,从而不对回放指令进行响应。
[0062]
尽管本发明的实施方案已公开如上,但其并不仅仅限于说明书和实施方式中所列运用,它完全可以被适用于各种适合本发明的领域,对于熟悉本领域的人员而言,对于本领域的普通技术人员而言,在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,因此在不背离权利要求及等同范围所限定的一般概念下,本发明并不限于特定的细节。
技术特征:
1.一种物联网设备分享控制权限的方法,其特征在于:物联网设备生成用于对控制权限的分享信息进行加密和解密的加密码,并将该加密码与加密协议版本号一起上报到云服务器;主用户设置非主用户分享权限控制时,云服务器根据加密协议版本号选择相应的加密协议,利用该加密协议和加密码把主用户id、控制权限的分享信息加密生成权限访问密钥;非主用户从云服务器的权限访问密钥后,利用设备用户名、设备密码和权限访问密钥登录物联网设备即可获得控制权限。2.根据权利要求1所述的一种物联网设备分享控制权限的方法,其特征在于:具体步骤如下:(1)物联网设备生成用于对控制权限的分享信息进行加密和解密的加密码,并保存在该设备本地;(2)物联网设备将加密码和加密协议版本号一起上报到云服务器,云服务器收到后进行保存;(3)主用户通过控制端向云服务器发送查询请求,目的是查询物联网设备的可分享的控制权限的相关信息;(4)云服务器收到来自主用户控制端的查询请求后,将物联网设备的可分享的控制权限的相关信息反馈给主用户的控制端;(5)主用户在控制端设置好物联网设备非主用户的控制权限的分享信息和分享有效期后,发送给云服务器请求配置非主用户的控制权限信息;(6)云服务器收到来自主用户控制端的配置非主用户的控制权限信息请求后,根据加密协议版本号使用相应的加密协议,利用该加密协议和加密码把主用户id、控制权限的分享信息和分享有效期加密生成权限访问密钥进行保存;(7)非主用户在控制端向服务器请求包括权限访问密钥在内的最新设备列表;(8)非主用户在控制端收到来自云服务器的最新设备列表之后,通过直连方式与物联网设备建立连接;连接成功后,非主用户的控制端向该设备发送登录请求、设备用户名、设备密码和权限访问密钥;(9)物联网设备收到来自非主用户控制端的登陆请求后,验证设备用户名和设备密码是否一致,如果是,就将登陆成功的信息反馈给非主用户的控制端,并且利用加密码解密权限访问密钥,从而得知控制权限的分享信息和分享有效期;(10)非主用户收到来自物联网设备的登陆成功的反馈信息后,通过控制端对该设备发送操作指令;该设备判断非主用户是否具有该操作指令的控制权限以及该控制权限是否在分享有效期内,如果是,就执行该操作。3.根据权利要求2所述的一种物联网设备分享控制权限的方法,其特征在于:所述控制端包括手机app、平板电脑app、windows软件、网页。4.根据权利要求2所述的一种物联网设备分享控制权限的方法,其特征在于:步骤(8)的所述直连方式包括蓝牙、红外、232串口、485串口、can总线、有线以太网、wifi。5.根据权利要求2所述的一种物联网设备分享控制权限的方法,其特征在于:步骤(11)中,物联网设备收到来自非主用户控制端的登陆请求后,验证设备用户名和设备密码是否一致,如果不是,就将“用户名错误”或“密码错误”的信息反馈给非主用户的控制端。
6.根据权利要求2所述的一种物联网设备分享控制权限的方法,其特征在于:步骤(12)中,该设备判断非主用户是否具有该操作指令的控制权限以及该控制权限是否在分享有效期内,如果不是,就将“不具有该操作指令的控制权限”或“控制权限不在有效期内”的信息反馈给非主用户的控制端。
技术总结
本发明涉及一种物联网设备分享控制权限的方法,属于物联网技术领域,功能是主用户将物联网设备的控制权限分享给非主用户,步骤如下:物联网设备生成加密码并上报到云服务器;云服务器利用加密码把主用户ID、控制权限的分享信息加密生成权限访问密钥;非主用户从服务器请求获取权限访问密钥,服务器收到请求后就将权限访问密钥反馈给非主用户;非主用户利用权限访问密钥登录物联网设备即可获得控制权限。该方法可让物联网设备也能感知用户的控制权限,从而实现无需云服务器中转的直连控制,提升了用户体验、降低了被非法控制的风险。降低了被非法控制的风险。降低了被非法控制的风险。
技术研发人员:张威 余毅鹏 梁选勤 张懋林 杨才宝 吴佳成 韦洁钊 刘锐滨 陈家劭
受保护的技术使用者:深圳市天视通视觉有限公司
技术研发日:2021.06.30
技术公布日:2022/3/8