CN113169970B - 一种访问控制方法、装置及存储介质 - Google Patents

一种访问控制方法、装置及存储介质 Download PDF

Info

Publication number
CN113169970B
CN113169970B CN201980079278.3A CN201980079278A CN113169970B CN 113169970 B CN113169970 B CN 113169970B CN 201980079278 A CN201980079278 A CN 201980079278A CN 113169970 B CN113169970 B CN 113169970B
Authority
CN
China
Prior art keywords
user
group
user group
access
identifier
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.)
Active
Application number
CN201980079278.3A
Other languages
English (en)
Other versions
CN113169970A (zh
Inventor
张军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202311284666.XA priority Critical patent/CN117336053A/zh
Publication of CN113169970A publication Critical patent/CN113169970A/zh
Application granted granted Critical
Publication of CN113169970B publication Critical patent/CN113169970B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

一种访问控制方法,包括:服务器(304)接收第一访问设备(301)基于第一用户标识发送的访问目标设备的访问请求;所述服务器根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限(S404);所述服务器根据所述访问权限对所述访问请求进行处理(S405)。

Description

一种访问控制方法、装置及存储介质
技术领域
本发明涉及物联网(Internet of Things,IoT)技术,尤其涉及一种方访问控制方法、装置及存储介质。
背景技术
开放连接基金会(Open Connectivity Foundation,OCF)采用RESTful架构,通过资源来表述物联网实体设备,以及设备所提供的功能服务和设备的状态等信息。提供资源的是服务端,访问资源的是客户端。OCF中定义的客户端和服务端是逻辑功能实体,每个设备可以是客户端、服务端、或既是客户端又是服务端。例如,实现某项最基本功能的设备(例如灯泡)可以只做服务端,提供给客户端进行查询和控制,本身无控制或者查询其他设备的需求。
客户端和服务端的业务交互是通过对资源进行RESTful操作,也就是创建(Create)、读取(Retrieve)、更新(Update)、删除(Delete)和通知(Notify)这些CRUDN操作方法而实现。客户端是RESTful操作的发起方,服务端是RESTful操作的响应方,客户端向服务端发送资源操作请求,请求对服务端上的资源进行操作,服务端执行资源操作,并向客户端返回响应,响应中携带资源的内容及描述信息。
不在同一个本地网络中的设备可以通过云端互相通信。云端将属于同一个用户的设备分组到同一个云端创建的用户ID下。注册到云端并且属于同一用户ID的所有设备可以按设备授权云的权限策略(例如:ACE2策略)进行通信。因此,设备只能由一个用户通过云平台远程访问,无法满足多用户的应用场景。
发明内容
为解决上述技术问题,本发明实施例提供一种访问控制方法、装置及存储介质,能够将设备的远端访问权限分享给其他用户,实现多用户的访问。
本发明实施例的技术方案是这样实现的:
第一方面,本发明实施例提供一种访问控制方法,包括:
服务器接收第一访问设备基于第一用户标识发送的访问目标设备的访问请求;
所述服务器根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限;
所述服务器根据所述访问权限对所述访问请求进行处理。
第二方面,本发明实施例提供一种访问控制方法,包括:
第一访问设备确定接收的选择操作所选取的目标设备;
所述第一访问设备基于所述目标设备对应的设备标识生成访问请求,将所述访问请求发送至服务器,使得所述服务器根据至少一个用户组确定所述第一访问设备所使用的第一用户标识对所述目标设备的访问权限。
第三方面,本发明实施例提供一种访问控制方法,包括:
第二访问设备基于第二用户标识向服务器发送更新请求,所述更新请求用于使所述服务器生成用户组,生成的用户组用于判断使用第一用户标识的第一访问设备对目标设备的访问权限,所述第二用户标识与所述目标设备具有绑定关系。
第四方面,本发明实施例提供一种服务器,包括:
接收单元,配置为接收第一访问设备基于第一用户标识发送的访问目标设备的访问请求;
权限单元,配置为根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限;
处理单元,配置为根据所述访问权限对所述访问请求进行处理。
第五方面,本发明实施例提供一种访问设备,包括:
选择单元,被配置为确定接收的选择操作所选取的目标设备;
第一发送单元,被配置为基于所述目标设备对应的设备标识生成访问请求,将所述访问请求发送至服务器,使得所述服务器根据至少一个用户组确定所述访问设备所使用的第一用户标识对所述目标设备的访问权限。
第六方面,本发明实施例提供一种访问设备,包括:组建立单元,被配置为基于第二用户标识向服务器发送更新请求,所述更新请求用于使所述服务器生成用户组,生成的用户组用于判断使用第一用户标识的第一访问设备对目标设备的访问权限,所述第二用户标识与所述目标设备具有绑定关系。
第七方面,本发明实施例提供一种服务器,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行上述服务器执行的访问控制方法的步骤。
第八方面,本发明实施例提供一种访问设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行上述第一访问设备执行的访问控制方法的步骤。
第九方面,本发明实施例提供一种访问设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行上述第二访问设备执行的访问控制方法的步骤。
第十方面,本发明实施例提供一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现上述服务器执行的访问控制方法。
第十一方面,本发明实施例提供一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现上述第一访问设备执行的访问控制方法。
第十二方面,本发明实施例提供一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现上述第二访问设备执行的访问控制方法。
本发明实施例提供的访问控制方法,包括:服务器接收第一访问设备基于第一用户标识发送的访问目标设备的访问请求;所述服务器根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限;所述服务器根据所述访问权限对所述访问请求进行处理。由于在服务器中设置了用户组,当第一用户标识访问目标设备时,可基于设置的用户组判断第一用户标识是否对目标设备具有访问权限,从而基于用户组实现不同用户标识的访问权限的控制,能够将不受目标设备仅受具有绑定关系的用户标识的访问的限制,实现多用户的访问。
附图说明
图1是本发明实施例提供物联网系统的一个可选的结构示意图;
图2是本发明实施例提供的访问控制方法的一个可选的流程示意图;
图3是本发明实施例提供的物联网系统的一个可选的结构示意图;
图4是本发明实施例提供的访问控制方法的一个可选的流程示意图;
图5是本发明实施例提供的访问控制方法的一个可选的流程示意图;
图6是本发明实施例提供的访问控制方法的一个可选的流程示意图;
图7是本发明实施例提供的访问控制方法的一个可选的流程示意图;
图8是本发明实施例提供的访问控制方法的一个可选的流程示意图;
图9是本发明实施例提供的服务器的一个可选的结构示意图;
图10A是本发明实施例提供的访问设备的一个可选的结构示意图;
图10B是本发明实施例提供的访问设备的一个可选的结构示意图
图11是本发明实施例提供的电子设备的一个可选的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在对本发明实施例提供的访问控制方法进行详细说明之前,先对物联网系统的访问控制进行简要说明。
物联网系统的结构如图1所示,包括:客户端101、服务端102和云端103。客户端101访问服务端102的资源,服务端102提供客户端101访问的资源。且客户端101和服务端102通过云端103相互通信。
当客户端101向云端103承载的资源Links引用的资源请求执行CRUDN操作时,客户端101向云端103发送CRUDN请求,云端103将客户端101的CRUDN请求转发给实际承载资源的服务端102,服务端102对云端103的CRUDN请求进行响应,云端103再将服务端102的响应转发给客户端101,即通信路径是客户端101->云端103->服务端102->云端103->客户端101。
示例性地,云端103可包括三个功能实体:
云端接口1031:云上锚点,负责服务端的接入管理,客户端和服务端远程通信的消息路由,云端接口对外提供一个统一的地址和端口号,如coaps+tcp://example.com:443。
授权服务器1032:负责服务端注册、对客户端和服务端的鉴权。
资源目录1033:服务端资源的索引,客户端通过检索资源目录可以获取目标设备的资源。
其中,授权服务器1032可与云端为同一物理实体,也可为不同的物理实体。
其中,每个设备可以是客户端、服务端、或既是客户端又是服务端。
设备在云端的注册流程如图2所示,包括:
步骤S201、配置器从授权服务器获取用户的访问令牌(Access Token)。
用户APP中提供配置器(Mediator)功能,用于配置设备连接云端。配置器中配置了云端接入统一资源定位符(Uniform Resource Locator,URL),用户已注册用户名和密码,使得授权服务器可以对用户进行授权,向配置器返回访问令牌。其中,用户APP可位于作为客户端的设备上。
步骤S202、配置器在云端注册。
配置器向云端提供访问令牌进行配置器注册,云端验证配置器提供的AccessToken并分配一个用户标识User ID。同一个用户用不同的配置器,授权服务器会提供不同的Access Token,但同一个用户用任何配置器都与同一个User ID关联。
步骤S203、配置器连接至设备,对设备进行配置。
配置器通过正常的设备发现流程连接到设备,然后从云端为所配置的设备请求Access Token。配置器使用从云端授权的Access Token、云端接入统一资源标识(UniformResource Identifier,URI)和云端通用唯一识别码(Universally Unique Identifier,UUID)更新设备上的进行云端信息配置的云配置资源如:“oic.r.coapcloudconf”资源。云端提供的该Access Token用于设备向云端进行初始注册时使用。
步骤S204、设备与云端建立传输层安全协议(Transport Layer Security,TLS)连接。
配置器配置了设备的配置资源后,设备使用预置的数字证书和云端建立TLS连接。预置的数字证书包括:设备的制造商证书、信任锚证书(trust anchor certificate)。
步骤S205、设备在云端注册。
设备要在云端注册,需要向云端上账号资源发送更新(UPDATE)操作请求,资源更新请求中包括了云配置资源中所配置的Access Token以及User ID。云端为每个设备维护账号资源的唯一实例。其中,账号资源可为“/oic/sec/account”资源。
步骤S206至步骤S207、云端验证设备提供的Access Token。
云端将设备提供的User ID和Access Token发送至授权服务器,当授权服务器成功验证该更新操作请求后,云端进行更新操作的响应,该响应会为设备提供一个更新的Access Token以及Access Token的有效期。另外,云端还记录了与此设备关联即具有绑定关系的User ID。
需要说明的是,当云端集成有授权服务器,在云端与配置器之间完成步骤S201,且不需要步骤S207。
设备需要在云端登录才能在设备和云端之间传输数据,设备向云端的会话资源发送更新(UPDATE)操作请求。云端成功验证更新操作请求后,设备和云端建立了TLS连接,可以开始交换数据。其中,会话资源可为“/oic/sec/session”资源。
图2中的设备可为客户端,也可为服务端。如果设备作为服务端,设备和云端建立TLS连接后,设备在云端的资源目录中公开其承载的资源,以便于对客户端这些资源进行远程访问。
不在同一个本地网络中的设备可以通过云端,使用基于传输控制协议(Transmission Control Protocol,TCP)的受限应用(CoAP over TCP)协议互相通信。云端将属于同一个User ID的设备分组到同一个User ID下。注册到云端并且属于同一User ID的所有设备可以按设备授权云的ACE2策略进行通信。在本发明实施例中,将一User ID下的设备称为与该User ID具有绑定关系的设备。
但是,这种方案中,只有关联相同的UserID的设备之间才能够互相访问,则设备只能由一个User ID通过云平台远程访问。在一个多成员的家庭中,这种方案限制了只能有一个User ID控制家庭中的设备,其他家庭成员也只能用同一User ID登录。若多个家庭成员分别在云平台注册了User ID,则只能各自控制自身User ID所管理的设备,无法通过云平台控制家庭中其他User ID下所关联的设备,无法满足多用户的应用场景。
基于上述问题,本发明提供一种访问控制方法,本发明实施例的访问控制入方法可以应用于图3所示的物联网系统300,包括:第一访问设备301、第二访问设备302、目标设备303和服务器304;其中,第一访问设备301和第二访问设备为客户端,目标设备为服务端,服务器304为云端。客户端基于云端访问服务端的资源。
第一访问设备301以第一用户标识登陆服务器304,第二访问设备302以第二用户标识登陆服务器304。第一用户标识与目标设备未关联,第二用户标识与目标设备关联,也就是说,第一访问设备和目标设备不是同一用户标识下的设备,第二访问设备和目标设备为同一用户标识下的设备。
物联网系统300中的客户端、服务端和云端可基于各种通信系统进行通信,例如:全球移动通讯(Global System of Mobile communication,GSM)系统、码分多址(CodeDivision Multiple Access,CDMA)系统、宽带码分多址(Wideband Code DivisionMultiple Access,WCDMA)系统、通用分组无线业务(General Packet Radio Service,GPRS)、长期演进(Long Term Evolution,LTE)系统、LTE频分双工(Frequency DivisionDuplex,FDD)系统、LTE时分双工(Time Division Duplex,TDD)、通用移动通信系统(Universal Mobile Telecommunication System,UMTS)、全球互联微波接入(WorldwideInteroperability for Microwave Access,WiMAX)通信系统或5G系统等。
第一访问设备301和第二访问设备可为终端设备,终端设备可以指接入终端、用户设备(User Equipment,UE)、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。接入终端可以是蜂窝电话、无绳电话、会话启动协议(Session Initiation Protocol,SIP)电话、无线本地环路(WirelessLocal Loop,WLL)站、个人数字处理(Personal Digital Assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备、5G网络中的终端设备或者未来演进的PLMN中的终端设备等。
目标设备可以为传感器、激光扫描系统和智能家电等物联网设备。
图3示例性地示出了一个服务端和两个客户端,可选地,该物联网系统300可以包括多个服务端以及与服务端具有绑定关系的客户端或与服务端不具有绑定关系的客户端,本发明实施例对此不做限定。
本发明实施例提供的访问控制方法的一种可选的处理流程,如图4所示,包括以下步骤:
步骤S401、第一访问设备确定接收的选择操作所选取的目标设备;
当使用第一访问设备的用户对物联网系统中的目标设备进行控制时,第一访问设备接收到用户的选择操作,选择操作的操作对象为目标设备的设备标识。
在本发明实施例中,第一访问设备以第一用户标识登陆服务器,与服务器建立会话,在第一访问设备中展示有与第一用户标识具有绑定关系的设备的设备标识,以及与第一用户标识不具有绑定关系的设备的设备标识。与第一用户标识具有绑定关系的设备与第一访问设备为关联相同的用户ID的设备;与第一用户标识不具有绑定关系的设备与第一访问设备为未关联相同的用户ID的设备。第一用户标识可为注册用户名,也可为服务器为注册用户名分配的User ID,且注册用户名与User ID具有一一对应的关系。当第一用户标识为User ID,第一访问设备以第一用户标识登陆服务器可以理解为:第一访问设备以注册用户名为登陆账号登陆到服务器,服务器识别第一访问设备使用注册用户名对应的User ID登陆至服务器。
步骤S402、第一访问设备基于所述目标设备对应的设备标识生成访问请求,将所述访问请求发送至服务器。
第一访问设备根据目标设备的设备标识生成访问请求。其中,访问请求中携带目标设备的设备标识,使得服务器确定第一访问设备所使用的第一用户标识对所述目标设备的访问权限。
访问请求中可携带第一用户标识,也可不携带第一用户标识。当访问请求中未携带第一用户标识时,服务器基于与第一访问设备所建立的会话连接确定第一访问设备所使用的第一用户标识。
在目标设备与第一用户标识具有绑定关系的情况下,访问请求中还可包括与第一用户标识关联的访问令牌。
可选的,访问请求以更新(Update)请求的形式发送。
步骤S403、服务器接收第一访问设备基于第一用户标识发送的访问目标设备的访问请求。
当访问请求中携带第一用户标识,服务器通过对访问请求的解析得到第一用户标识。当访问请求中未携带第一用户标识,服务器通过第一访问设备与服务器所建立的会话得到第一用户标识。
步骤S404、所述服务器根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限。
服务器中设置有对应不同用户标识的用户组,一个用户组标识可对一个或多个用户组。同一用户标识对应的多个用户组中,不同的用户组以不同的用户组名称进行区分。
用户组的组信息包括:组名称、组成员的标识和共享设备的设备标识。组名称是一个字符串,由用户进行设置。组成员是一个列表,包含每个组成员的用户标识(用户ID),其中,一个用户组至少包括有一个组成员。共享设备也是一个列表,包含组内共享设备的设备标识(device ID)。一个用户组至少包括一个共享设备。
可选地,组成员中包括第二用户标识,第二用户标识与目标设备具有绑定关系。比如:第二用户标识为U2,一个用户组的组信息如下:组名称:family,组成员包括:U2、U1,共享设备的设备标识:D1,则表征基于用户组family将与U2具有绑定关系的设备D1共享给与设备D1不具有绑定关系的U1。
当组成员中包括第二用户标识时,服务器可仅根据用户组确定第一用户标识对目标设备的访问权限。
可选地,组成员中不包括第二用户标识。又比如:第二用户标识为U2对应的一个用户组的组信息如下:组名称:family,组成员包括:U1,共享设备的设备标识:D1,则表征基于用户组family将与U2具有绑定关系的设备D1共享给与设备D1不具有绑定关系的U1。
当组成员中不包括第二用户标识时,服务器根据用户组和第二用户标识确定第一用户标识对目标设备的访问权限。
可选地,用户组的组信息还可包括:有效期。有效期是用户组的存活时间,可以秒为单位计数,值为-1时表示永久有效。当一用户组的创建时间达到有效期时,服务器将该用户组删除。
在一示例中,一个用户组的表示形式为:
上述示例中,组名称gn是family,包含两个组成员,组成员的用户标识gmids分别为U001和U002。共享设备的设备标识dids为0685B960-736F-46F7-BEC0-9E6CBD61ADC1。用户组的有效期expiresin为10000秒,云平台从创建用户组的时刻起开始计时,10000秒后自动删除该用户组。
在本发明实施例中,服务器基于用户标识为不同的用户标识分配不同的用户组资源即用户空间,将每一用户标识对应的用户组管理在为该用户标识分配的用户空间中。每一用户空间中包括一个或多个用户组。服务器根据用户标识查找该用户标识对应的用户空间,得到该用户标识对应的用户组。
示例性地,包括两个用户组的用户空间可如下所示:
其中,该用户的用户标识uid为U001,访问令牌accesstoken为XXXXXXXXXX,groups为该用户对应的用户组的列表。
在上例中,用户U001创建了两个用户组:family和guest。用户组family的组成员包括:U001和U002,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1,有效期为永久有效。用户组guest的组成员包括:U001和U002,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效期为1000秒。
基于上述例子,表征用户U001在云平台创建了一个家庭组,将设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1分享给了U002。该家庭组永久有效。此外,用户U001又为访客U003创建了一个访客组,临时分享了设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效期为10000秒。
这里,U002可为用户U001所在的家庭的家庭成员,U004可为访客。
服务器所设置的至少一个用户组中,是否包括目标用户组,以确定第一用户标识对目标设备的访问权限,其中,将所查找的用户组中,组成员包括第一用户标识且共享设备包括目标设备的用户组称为目标用户组。
当所述至少一个用户组中包括的目标用户组,的组成员包括所述第一用户标识且共享设备的设备标识包括所述目标设备的设备标识,也就是说,至少一个用户组中包括目标用户组,服务器确定所述第一用户标识对目标设备的访问权限为允许访问。
当所述至少一个用户组中每一用户组的组成员不包括第一用户标识,或每一用户组的组成员共享设备的设备标识不包括目标设备的设备标识,或当所述至少一个用户组中,组成员不包括所述第一用户标识的用户组与共享设备的设备标识不包括所述目标设备的设备标识的用户组不是同一用户组,也就是说,至少一个用户组中不包括目标用户组,服务器确定第一用户标识对目标设备的访问权限为禁止访问,即认为第一用户标识无法访问目标设备的资源。
在实际应用中,服务器可以第二用户标识为关键字或以目标设备的设备标识为关键字从至少一个用户组中查找候选用户组,根据候选用户组确定第一用户标识对目标设备的访问权限,从而缩小目标用户组的查找范围,提高访问控制的处理速度。
当所述用户组的组成员的用户标识不包括与所述目标设备之间具有绑定关系的用户标识,且所述第一用户标识与所述设备不具有绑定关系,根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限。
这里,当用户组的组成员的用户标识中不包括第二用户标识,判断第一用户标识是否与目标设备具有绑定关系,当第一用户标识与目标设备具有绑定关系,确定所述访问权限为允许访问。当第一用户标识与目标设备不具有绑定关系,根据至少一个用户组确定第一用户标识对目标设备的访问权限。
在实际应用中,可基于绑定关系和用户组并列判断第一用户标识的访问权限,当所述第一用户标识与目标设备具有绑定关系,或当至少一个用户组中包括目标用户组时,确定所述访问权限为允许访问,当所述第一用户标识与目标设备不具有绑定关系,且所述至少一个用户组中不包括目标用户组时,确定访问权限为禁止访问。
步骤S405、所述服务器根据所述访问权限对所述访问请求进行处理。
当所述访问权限为允许访问,服务器将所述访问请求转发至所述目标设备;当所述访问权限为禁止访问,服务器拒绝所述访问请求。
在本发明实施例中,第二访问设备第二访问设备基于第二用户标识向服务器发送更新请求,所述更新请求用于使所述服务器生成用户组,生成的用户组用于判断使用第一用户标识的第一访问设备对目标设备的访问权限,所述第二用户标识与所述目标设备具有绑定关系。以新用户组的创建和更新为例,服务器接收第二访问设备基于所述第二用户标识发送的更新请求;所述服务器根据所述更新请求,得到对应所述第二用户标识的新用户组。
第二访问设备以第二用户标识登陆服务器,并配置新用户组的组信息,基于新用户组的组信息生成更新请求,将生成的更新请求发送至服务器。其中,新用户组的组信息至少包括:用户组名称、组成员的标识和共享设备的设备标识。
可选地,组成员的标识包括:第一用户标识,共享设备包括:目标设备。此时,服务创建的新用户组为目标用户组。
可选地,组成员的标识还包括:第二用户标识。
第二访问设备以第二用户标识登陆服务器的登陆方式同第一访问设备以第一用户标识登陆服务器,这里不再赘述。
在一些实施例中,第二访问设备配置新用户组的组信息可以执行为:所述第二访问设备获取新用户组的组信息;将所述新用户组的组信息携带在所述更新请求中。
第二访问设备获取待配置到新用户组的组成员的标识,并获取待配置到新用户组的共享设备的设备标识。其中,所述组成员的标识可包括第一用户标识,所获取的共享设备可包括目标设备。第二访问设备可通过局域网传输、二维码扫描等方式获取组成员的标识。第二访问设备可通过局域网传输的方式获取共享设备的标识,或从服务器中配置的与第二用户标识具有绑定关系的设备的标识中获取目标设备的标识。
基于更新请求中携带的信息的不同,服务器根据更新请求得到新用户组的方式包括以下两种方式:
方式一
更新请求中仅携带本次待创建的新用户组的组信息,比如:本次待创建的新用户组为用户组family时,则在更新消息中仅携带新用户组family的组信息。
在方式一中,服务器接收到更新请求后,根据所述更新请求,得到对应所述第二用户标识的新用户组,包括:
当不存在对应所述第二用户标识的已有的用户组,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中不包括所述更新请求携带的新用户组的用户组名称,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中包括所述更新请求携带的新用户组的用户组名称,以所述新用户组的用户组名称对应的用户组为参考用户组,根据所述更新请求携带的组成员的标识和共享设备的设备标识,对所述参考用户组的组信息进行更新,得到新用户组。
方式二
更新请求中可携带创建用户组后的用户组groups的组信息。比如:创建的用户组family的已有的用户组guest的组信息。
在方式二中,所述第二访问设备向所述服务器查询对应所述第二用户标识的已有的用户组的组信息,将所获取的已有用户组的组信息携带在所述更新请求中。这里,更新请求中携带的信息新用户组的组信息和从服务器所查询的已有的用户组的组信息。
第二访问设备可向服务器发送查询请求,获取第二用户标识对应的已有的用户组。第二访问设备获取第二用户标识已有的用户组后,对已有的用户组进行更新,得到更新后的用户组。所述更新后的用户组包括新用户组和第二用户标识对应的已有的用户组。
可选地,新用户组为新添加的用户组或对所述已有的用户组中的参考用户组进行更新得到的用户组。
可基于已有的用户组中是否包括与新用户组的组名称相同的用户组,对已有的用户组进行更新,得到更新后的用户组。当已有的用户组中不包括与新用户组的组名称相同的用户组,则创建新用户组,此时新用户组为新添加的用户组。当已有的用户组中包括与新用户组的组名称相同的用户组,将与新用户组的组名称相同的用户组称为参考用户组,对参考用户组的组信息进行更新,更新为新用户组,此时,新用户组为对所述已有的用户组中的参考用户组进行更新得到的用户组。
在方式二中,服务器接收到更新请求后,所述根据所述更新请求,得到对应所述第二用户标识的新用户组,包括:根据所述更新后的至少一个用户组的组信息,对所述第二用户标识对应的已有的用户组的组信息进行覆盖,得到更新后的至少一个用户组。
在本发明实施例中,服务器接收到第二访问设备发送的更新请求之后,根据更新请求携带的第二用户标识检测共享设备与第二用户标识的关系;当与所述共享设备具有绑定关系的用户标识为所述第二用户标识,根据所述更新请求,得到对应所述第二用户标识的新用户组。这里,只有当第二用户设备为与共享设备关联的用户标识,表征第二用户标识为共享设备的管理员账号,能够根据更新请求对第二用户标识对应的用户组进行更新。
本发明实施例中,服务器基于更新请求创建的新用户组除目标用户组之外,还可包括其他用户组,且基于一条更新请求可创建一个或多个新用户组。
在本发明实施例中,在作为云端的服务器中创建用户组,基于用户组将第二用户标识对目标设备的资源的访问权限共享给第一用户标识,其中,第一用户标识与目标设备之间不具有绑定关系,第二用户标识与目标设备之间不具有绑定关系。当第一用户标识访问目标设备的资源时,服务器基于用户组确定第一用户标识对目标设备的访问权限为允许访问时,控制第一用户标识访问目标设备的资源。服务器基于用户组确定第一用户标识对目标设备的访问权限为禁止访问时,拒绝第一用户标识访问目标设备的资源。
在本发明实施例中,服务器还可基于第二访问设备发送的查询请求查询第二用户标识对应的用户组。其中,查询的内容可为全部的用户组,也可基于查询请求中携带的组名称查询对应的用户组。
以查询的内容可为全部的用户组为例,所述服务器接收第二访问设备基于所述第二用户标识发送的查询请求;所述服务器基于所述查询请求获取所述第二用户标识对应的全部的用户组的组信息;所述服务器将所述已有的用户组的组信息发送至所述第二访问设备。
以查询的内容可为查询请求中携带的组名称对应的用户组为例,所述服务器接收第二访问设备基于所述第二用户标识发送的查询请求;所述查询请求中携带待查询的用户组的用户组名称;所述服务器基于所述查询请求获取所述待查询的用户组的组信息;所述服务器将所述待查询的用户组的组信息发送至所述第二访问设备。
在本发明实施例中,服务器还可基于第二访问设备发送的删除请求删除第二用户标识对应的用户组。其中,删除的内容可为全部的用户组,也可基于查询请求中携带的组名称删除对应的用户组。
以删除的内容可为全部的用户组为例,所述服务器接收第二访问设备基于所述第二用户标识发送的删除请求;所述服务器根据所述删除请求删除所述第二用户组对应的全部的用户组。。
以删除的内容可为删除请求中携带的组名称对应的用户组为例,所述服务器接收第二访问设备基于所述第二用户标识发送的删除请求;所述删除请求携带待删除的用户组的用户组名称;所述服务器根据所述删除请求从所述第二用户组对应的至少一个用户组中删除所述待删除的用户组的组信息。
下面再结合具体实施例对本发明进行详细描述。其中,云平台为作为云端的服务器中的控制系统。
实例一
在云平台中增加创建用户组的资源接口,云平台注册用户可以通过创建用户组的资源接口创建共享设备的用户组。例如,云平台提供一个资源接口(也可称为资源链接)/group/gen,云平台注册用户通过资源接口更新对应的用户组的信息,便可在云平台上创建一个用户组。
用户组以一个组名称进行标识,用户组包含:组成员、共享设备以及可选地,还包含有效期。组名称是一个字符串,可由用户进行设置。组成员是一个User ID的列表,包含每个组成员的User ID,其中,一个用户组至少包括有一个组成员。共享设备是一个设备标识(device ID)的列表,包含组内共享设备的设备标识。一个用户组的共享设备至少包括一个设备。有效期是用户组的存活时间,以秒为单位计数,值为-1时表示永久有效。
下例是一个用户组的表示形式:
上述例子中,组名称gn是family,包含两个成员:用户标识gmids分别为U001和U002。该两位用户共享一个设备,设备标识dids为0685B960-736F-46F7-BEC0-9E6CBD61ADC1。用户组的有效期expiresin是10000秒,云平台从创建用户组的时刻起开始计时,10000秒后自动删除该用户组。
一个云平台用户可以创建多个用户组。云平台将这些用户组都管理在为该用户分配的空间中,以该用户的用户ID进行标识。一个创建了两个组的用户的空间如下例所示:
/>
其中,该用户的用户标识uid为U001,访问令牌access token为XXXXXXXXXX,groups为该用户对应的用户组的列表。
在上例中,用户U001创建了两个用户组:family和guest。用户组family的组成员包括:U001和U002,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1,有效期为永久有效。用户组guest的组成员包括:U001和U003,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效期为1000秒。
基于上述例子,表征用户U001在云平台创建了一个家庭组,将设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1分享给了U002。该家庭组永久有效。此外,用户U001又为访客U003创建了一个访客组,临时分享了设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效期为10000秒。
这里,U002可为用户U001所在的家庭的家庭成员,U004可为访客。
下面分别对用户组的创建、查询和删除进行说明。
(1)、创建和更新用户组
假设用户A已经注册了云平台的账号userA_ID,并且将一台设备配置连接云平台,用户A为该设备在云平台上的管理员。此时,有另一在云平台上注册的用户B也想通过云平台控制该设备。用户A创建用户组将该设备分享给用户B。具体操作步骤,如图5所示,包括:
步骤S501、用户A使用客户端A(ClientA)通过局域网传输、扫二维码等方式获取用户B的终端客户端B(ClientB)中存储的User ID(userB_ID)。
其中,客户端A的User ID为userA_ID)。
步骤S502、ClientA通过局域网或者云平台获取待配置到用户组中的目标设备的device ID。由于用户A是目标设备的管理员,也可能ClientA在配置设备后就一直保存有目标设备的device ID,此时,步骤S502可略过。
步骤S503、ClientA向云平台的资源接口发送更新请求,更新请求中携带的参数包括userA_ID、访问令牌access token、组名称group name、组成员的用户ID(包括:userA_ID和userB_ID)、组中的共享设备的device ID、以及有效期expiration。其中,组中的共享设备为目标设备。资源接口的地址可为固定地址,如/group/gen。
步骤S504、云平台收到ClientA的更新请求后,通过存储于云平台的User ID和访问令牌的对应关系校验userA_ID与访问令牌,当验证通过后,确认用户A为合法用户。
步骤S505、云平台根据userA ID与设备的绑定关系检查更新请求中的目标设备与用户A的绑定关系,即检查目标设备是否为用户A所管理的设备。
在实际应用中,当用户组中包括多个共享设备时,云平台根据userA_ID与设备的绑定关系检查更新请求中的每一设备与用户A的绑定关系,即检查每一设备是否为用户A所管理的设备。其中,对于每一设备及其管理员用户,云平台存储用户ID与设备的绑定关系。
步骤S506、云平台根据userA_ID查找用户A对应的用户组。
云平台根据userA_ID在用户组列表中查找用户A所对应的条目,并在条目中根据更新请求中携带的组名称查找用户组。其中,用户A对应的条目中包括用户A对应的全部的已有的用户组。
步骤S507、若在用户A对应的条目中未找到该组名称对应的用户组,则云平台在用户A对应的条目下创建一个新的用户组,为目标用户组。其中,目标用户组以更新请求携带的组名称进行命名,组中的成员ID即为更新请求携带的userA_ID和userB_ID,组中的设备ID即为目标设备的设备ID。
若用户A对应条目下已有该组名称的用户组,在用户A对应的条目中找到该组名称对应的用户组,以该用户组为参考用户组,若参考用户组的组成员中已包含userA_ID,则组成员的User ID增加userB_ID,组中共享的设备增加传入的目标设备的设备ID。
步骤S508、云平台成功建立用户组后,返回响应OK给ClientA。
步骤S509、ClientB通过云平台访问目标设备。
步骤S5010、云平台判断用户B与被访问的目标设备是否在同一用户组中,若是,则云平台允许该访问请求,将该访问请求转发至目标设备;若否,则拒绝该访问请求。
步骤S5011、若目标设备基于用户组已分享给用户B,则目标设备执行访问请求,执行步骤S5012向ClientB返回响应。
(2)、查看用户组
云平台创建用户组后,组管理员可以查看用户组。
用户A对云平台的资源接口发送查询请求RETRIEVE请求,并以uid=userA_ID为查询条件,例如:资源接口的地址为/group/gen,查询请求可为retrieve/group/gen?uid=U001。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时查询请求中可不带uid=userA_ID的查询条件。
云平台收到查询请求后,首先校验用户A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups的内容作为响应返回给用户A。
若用户A想查询某一用户组,则发送的RETRIEVE请求以uid=userA_ID和gn=groupname为查询条件,例如:资源接口的地址为/group/gen时,查询请求可为retrieve/group/gen?uid=U001&gn=guest。
这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时查询请求中可不带uid=userA_ID的查询条件)
云平台收到查询请求后,校验用户A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups中组名称为guest的用户组作为响应返回给用户A。
(3)、删除用户组
用户也可以删除所创建的用户组。
用户A对云平台的资源接口发送删除请求DELETE请求,以uid=userA_ID为查询条件,例如:资源接口的地址为/group/gen时,删除请求可为delete/group/gen?uid=U001。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时可不带uid=userA_ID的查询条件。
云平台收到删除请求后,首先校验用A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups的内容清空,并返回给用户A操作成功的响应。
若用户A想删除某一用户组,则发送的DELETE请求以uid=userA_ID和gn=groupname为查询条件,例如:资源接口的地址为/group/gen时,删除请求可为delete/group/gen?uid=U001&gn=guest。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时可不带uid=userA_ID的查询条件。
云平台收到删除请求后,首先校验用户A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups中组名称为guest的用户组删除,并返回给用户A操作成功的响应。
实例二
在云平台中增加创建用户组的资源接口,云平台注册用户可以通过创建用户组的资源接口创建共享设备的用户组。例如,云平台提供一个资源接口/group/gen,云平台注册用户通过资源接口更新对应的用户组的信息,便可在云平台上创建一个用户组。
用户组以一个组名称进行标识,用户组包含:组成员、共享设备以及可选地,还包含有效期。组名称是一个字符串,可由用户进行设置。组成员是一个User ID的列表,包含每个组成员的User ID,其中,一个用户组至少包括有一个组成员。共享设备也是一个设备标识(device ID)列表,包含组内共享设备的设备标识,其中,一个用户组的共享设备至少包括一个设备。有效期是用户组的存活时间,以秒为单位计数,值为-1时表示永久有效。
下例是一个用户组的表示形式:
上述例子中,组名称gn是family,包含的组成员的用户标识gmids为U002。该用户与设备的管理员共享一个设备,设备标识dids为0685B960-736F-46F7-BEC0-9E6CBD61ADC1。用户组的有效期expiresin是10000秒,云平台从创建用户组的时刻起开始计时,10000秒后自动删除该用户组。
一个云平台用户可以创建多个用户组。云平台将这些用户组都管理在为该用户分配的空间中,以该用户的用户ID进行标识。一个创建了两个组的用户的空间如下例所示:
其中,该用户的用户标识uid为U001,访问令牌access token为XXXXXXXXXX,groups为该用户对应的用户组的列表。
在上例中,用户U001创建了两个用户组:family和guest,其中,用户组family的组成员包括:U002和U003,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1,有效期为永久有效。用户组guest的组成员包括:U004,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效期为1000秒。
基于上述例子,表征用户U001在云平台创建了一个家庭组,将设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1分享给了U002和U003。该家庭组永久有效。此外,用户U001又为访客U004创建了一个访客组,临时分享了设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效时间为10000秒。
这里,U002和U003可为用户U001所在的家庭的家庭成员,U004可为访客。
下面分别对用户组的创建、查询和删除进行说明。
(1)、创建和更新用户组
假设用户A已经注册了云平台的账号userA_ID,并且将一台设备配置连接云平台,用户A为该设备在云平台上的管理员。此时,有另一在云平台上注册的用户B也想通过云平台控制该设备。用户A创建用户组将该设备分享给用户B。具体操作步骤,如图6所示,包括:
步骤S601、用户A使用客户端A(ClientA)通过局域网传输、扫二维码等方式获取用户B的终端客户端B(ClientB)中存储的User ID(userB_ID)。
其中,客户端A的User ID为userA_ID)。
步骤S602、ClientA通过局域网或者云平台获取待配置到用户组中的目标设备的device ID。由于用户A是目标设备的管理员,也可能ClientA在配置设备后就一直保存有设备的device ID,步骤S602可略过。
步骤S603、ClientA向云平台的资源接口发送更新请求,更新请求中携带参数包括userA_ID、访问令牌、组名称、组成员ID(userB_ID)、组中共享设备的device ID、以及有效期expiration。其中,组中的共享设备为目标设备。
步骤S604、云平台收到ClientA的更新请求后,通过存储于云平台的UserID和访问令牌对应关系校验userA_ID与访问令牌,当验证通过后,确认用户A为合法用户。
步骤S605、云平台根据userA ID与设备的绑定关系检查更新请求中的目标设备与用户A的绑定关系,即检查目标设备是否为用户A所管理的设备。
在实际应用中,当用户组中包括多个共享设备时,云平台根据userA_ID与设备的绑定关系检查更新请求中的每一设备与用户A的绑定关系,即检查每一设备是否为用户A所管理的设备。其中,对于每一设备及其管理员用户,云平台存储用户ID与设备的绑定关系。
步骤S606、云平台根据userA_ID查找用户A对应的用户组。
云平台根据userA_ID在用户组列表中查找用户A所对应的条目,并在条目中根据更新请求中携带的组名称查找用户组。其中,用户A对应的条目中包括用户A对应的全部的已有的用户组。
步骤S607、若在用户A对应的条目中未找到该组名称对应的用户组,则云平台在用户A对应的条目下创建一个新的用户组,即目标用户组。其中,目标用户组以更新请求携带的组名称进行命名,组中的成员ID即为更新请求携带的userB_ID,组中的设备ID即为更新请求携带的目标设备的设备ID。
若用户A对应条目下已有该组名称的用户组,则在用户A对应的条目中找到该组名称对应的用户组,以该用户组为参考用户组,在参考用户组的组成员中userB_ID,组中共享的设备增加传入的设备ID。
步骤S608、云平台成功建立用户组后,返回响应OK给ClientA。
步骤S609、ClientB通过云平台访问目标设备。
步骤S6010、云平台检查ClientB与目标设备的绑定关系,若绑定关系成立则直接允许访问请求。由于目标设备与ClientA绑定,则ClientB与目标设备的绑定关系不成立,需要进一步通过查看组权限判断是否能够访问。
步骤S6011、云平台判断用户B与被访问的目标设备是否在同一用户组中,若是,则云平台允许该访问请求,将该访问请求转发至目标设备;若否,则拒绝该访问请求。
步骤S6012、若目标设备基于用户组已分享给用户B,则目标设备执行访问请求,执行步骤S6013向ClientB返回响应。
(2)、查看用户组
云平台创建用户组后,组管理员可以查看用户组。
用户A对云平台的资源接口发送查询请求RETRIEVE请求,并以uid=userA_ID为查询条件,例如:资源接口的地址为:/group/gen,则查询请求可为:retrieve/group/gen?uid=U001。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时查询请求中可不带uid=userA_ID的查询条件。
云平台收到查询请求后,首先校验用户A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups的内容作为响应返回给用户A。
若用户A想查询某一用户组,则发送的RETRIEVE请求以uid=userA_ID和gn=groupname为查询条件,例如:retrieve/group/gen?uid=U001&gn=guest。
这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时查询请求中可不带uid=userA_ID的查询条件)
云平台收到查询请求后,首先校验用户A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups中组名称为guest的用户组作为响应返回给用户A。
(3)、删除用户组
用户也可以删除所创建的用户组。
用户A对云平台的资源接口发送删除请求DELETE请求,以uid=userA_ID为查询条件,例如:资源接口的地址为:/group/gen,则删除请求可为:delete/group/gen?uid=U001。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时可不带uid=userA_ID的查询条件。
云平台收到删除请求后,首先校验用户A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups的内容清空,并返回给用户A操作成功的响应。
若用户A想删除某一用户组,则发送的DELETE请求以uid=userA_ID和gn=groupname为查询条件,例如:资源接口的地址为:/group/gen,则删除请求可为:delete/group/gen?uid=U001&gn=guest。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时可不带uid=userA_ID的查询条件。
云平台收到删除请求后,首先校验用户A的User ID。User ID校验通过后,在用户A的User ID对应的条目下,将groups中组名称为guest的用户组删除,并返回给用户A操作成功的响应。
实例三
在云平台中增加创建用户组的资源接口,云平台注册用户可以通过创建用户组的资源接口创建共享设备的用户组。例如,云平台提供一个资源接口/group/gen,云平台注册用户通过资源接口更新对应的用户组的信息,便可在云平台上创建一个用户组。
用户组以一个组名称进行标识,用户组包含:组成员、共享设备以及可选地,还包含有效期。组名称是一个字符串,可由用户进行设置。组成员是一个User ID的列表,包含每个组成员的User ID,其中,一个用户组至少包括有一个组成员。共享设备也是一个设备标识(device ID)列表,包含组内共享设备的设备标识,其中,一个用户组的共享设备至少包括一个设备。有效期是用户组的存活时间,以秒为单位计数,值为-1时表示永久有效。
下例是一个用户组的表示形式:
上述例子中,组名称gn是family,包含两个成员:用户标识gmids分别为U001和U002。该两位用户共享一个设备,设备标识dids为0685B960-736F-46F7-BEC0-9E6CBD61ADC1。用户组的有效期expiresin是10000秒,云平台从创建用户组的时刻起开始计时,10000秒后自动删除该用户组。
一个云平台用户可以创建多个用户组。云平台将这些用户组都管理在为该用户分配的空间中,以该用户的用户ID进行标识。一个创建了两个组的用户的空间如下例所示:
其中,该用户的用户标识uid为U001,访问令牌accesstoken为XXXXXXXXXX,groups为该用户对应的用户组的列表。
在上例中,用户U001创建了两个用户组:family和guest,其中,用户组family的组成员包括:U001和U002,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1,有效期为永久有效。用户组guest的组成员包括:U001和U003,共享设备的设备标识为0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效期为1000秒。
基于上述例子,表征用户U001在云平台创建了一个家庭组,将设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1分享给了U002。该家庭组永久有效。此外,用户U001又为访客U003创建了一个访客组,临时分享了设备0685B960-736F-46F7-BEC0-9E6CBD61ADC1和E61C3E6B-9C54-4B81-8CE5-F9039C1D04D9,有效时间为10000秒。
这里,U002可为用户U001所在的家庭的家庭成员,U004可为访客。
下面分别对用户组的创建、查询和删除进行说明。
(1)、创建用户组
假设用户A已经注册了云平台的账号userA_ID,并且将一台设备配置连接云平台,用户A为该设备在云平台上的管理员。此时,有另一在云平台上注册的用户B也想通过云平台控制该设备。用户A创建用户组将该设备分享给用户B。具体操作步骤,如图7所示,包括:
步骤S701、用户A使用ClientA通过局域网传输、扫二维码等方式获取用户B的终端ClientB中存储的用户ID(userB_ID)。
其中,Client A的User ID为userA_ID)。
步骤S702.ClientA通过局域网或者云平台获取待配置到组中的设备的deviceID。由于用户A是目标设备的管理员,也可能ClientA在配置设备后就一直保存有目标设备的device ID,此时,步骤S702可略过。
步骤S703、ClientA向云平台的资源接口发送查询请求。
这里,当资源接口的地址为/group/gen时,查询请求可为retrieve/group/gen。
步骤S704、云平台收到请查询求后,校验用户A的UserID。UserID校验通过后,在用户A的User ID对应的条目下,将groups的内容作为响应返回给用户。groups的内容包括每个用户组的组名称、组成员ID、共享设备的设备ID以及有效期。
步骤S705、ClientA在查询得到的groups中新增加一个用户组得到更新后的groups,新增加的用户组的组信息包含组名称、组成员ID(userA_ID和userB_ID)、目标设备的device ID、以及有效期。
步骤S706、ClientA向云平台的资源接口发送更新请求中携带参数包括userA_ID和访问令牌、以及更新后的groups。
步骤S707、云平台收到更新请求后,通过存储于云平台的用户ID和访问令牌对应关系校验用userA_ID与访问令牌,当验证通过后,确认用户A为合法用户。
步骤S708、云平台根据userA_ID与设备的绑定关系检查新增加的目标设备与用户A的绑定关系,即检查新增加的目标设备是否为用户A所管理的设备。
在实际应用中,当用户组中包括多个共享设备时,云平台根据userA_ID与设备的绑定关系检查更新请求中的每一新增加的设备与用户A的绑定关系,即检查每一新增加的设备是否为用户A所管理的设备。其中,对于每一设备及其管理员用户,云平台存储用户ID与设备的绑定关系。
步骤S709、云平台更新用户A对应groups。
步骤S7010、云平台成功建立用户组后,返回响应OK给ClientA。
步骤S7011.ClientB通过云平台访问目标设备。
步骤S7012、云平台判断用户B与被访问设备是否在同一组中,若是,则云平台允许该访问请求,将该访问请求转发至目标设备;若否,则拒绝该访问请求。
步骤S7013、若目标设备基于用户组已分享给用户B,则目标设备执行访问请求,执行步骤S7014向ClientB返回响应。
(2)、更新用户组
用户A基于已有的用户组更新用户组将该目标设备分享给用户B。具体操作步骤,如图8所示,包括:
步骤S801、用户A使用ClientA通过局域网传输、扫二维码等方式获取用户B的终端ClientB中存储的用户ID(userB_ID)。
其中,Client A的User ID为userA_ID)。
步骤S802.ClientA通过局域网或者云平台获取待配置到组中的设备的deviceID。由于用户A是目标设备的管理员,也可能ClientA在配置设备后就一直保存有目标设备的device ID,此时,步骤S702可略过。
步骤S803、ClientA向云平台的资源接口发送查询请求。
例如,当固定地址为/group/gen,则查询请求可为retrieve/group/gen。
步骤S804、云平台收到请查询求后,校验用户A的UserID。UserID校验通过后,在用户A的User ID对应的条目下,将groups的内容作为响应返回给用户。groups的内容包括每个用户组的组名称、组成员ID、共享设备的设备ID以及有效期。
步骤S805、ClientA在查询得到的groups中一个已存在的组中增加组成员ID(userB ID)和目标设备(device ID),得到更新后的groups。
步骤S806、ClientA向云平台的资源接口发送更新请求,更新请求中携带参数包括userA_ID和访问令牌、以及更新后的groups。
步骤S807、云平台收到更新请求后,通过存储于云平台的用户ID和访问令牌对应关系校验userA_ID与访问令牌,当验证通过后,确认用户A为合法用户。
步骤S808、云平台根据userA_ID与设备的绑定关系检查新增加的目标设备与用户A的绑定关系,即检查新增加的目标设备是否为用户A所管理的设备。
在实际应用中,当用户组中包括多个共享设备时,云平台根据userA_ID与设备的绑定关系检查更新请求中的每一新增加的设备与用户A的绑定关系,即检查每一新增加的设备是否为用户A所管理的设备。其中,对于每一设备及其管理员用户,云平台存储用户ID与设备的绑定关系。
步骤S809、云平台更新用户A对应的groups。
步骤S8010、云平台成功建立用户组后,返回响应OK给ClientA。
步骤S8011、ClientB通过云平台访问目标设备。
步骤S8012、云平台判断用户B与被访问的目标设备是否在同一组中,若是,则云平台允许该访问请求,将该访问请求转发至目标设备;若否,则拒绝该访问请求。
步骤S8013、若设备基于用户组已分享给用户B,则设备执行访问请求,执行步骤S8014向ClientB返回响应。
(3)、删除用户组
用户也可以删除所创建的用户组。
用户A对云平台的资源接口发送删除请求DELETE请求,以uid=userA_ID为查询条件,例如:资源接口为/group/gen时,delete/group/gen?uid=U001。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时可不带uid=userA_ID的查询条件。
云平台收到删除请求后,首先校验用户A的userID。userID校验通过后,在用户A的userID对应的条目下,将groups的内容清空,并返回给用户A操作成功的响应。
若用户A想删除某一用户组,则发送的DELETE请求以uid=userA_ID和gn=groupname为查询条件,例如:delete/group/gen?uid=U001&gn=guest。这里,也可由云平台通过用户A的接入信息自行判断用户ID,此时可不带uid=userA_ID的查询条件。
云平台收到删除请求后,首先校验用户A的userID。userID校验通过后,在用户A的userID对应的条目下,将groups中组名称为guest的用户组删除,并返回给用户A操作成功的响应。
为实现上述访问控制方法,本发明实施例还提供一种服务器,所述服务器的组成结构,如图9所示,服务器304包括:
接收单元901,配置为接收第一访问设备基于第一用户标识发送的访问目标设备的访问请求;
权限单元902,配置为根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限;
处理单元903,配置为根据所述访问权限对所述访问请求进行处理。
本发明实施例中,所述访问权限包括:允许访问和禁止访问;处理单元903,配置为:
当所述访问权限为允许访问,将所述访问请求转发至所述目标设备;
当所述访问权限为禁止访问,拒绝所述访问请求。
本发明实施例中,权限单元902,被配置为:
当所述至少一个用户组中包括目标用户组,所述服务器确定所述第一用户标识的访问权限为允许访问;所述目标用户组的组成员包括所述第一用户标识,且所述目标用户组中的共享设备的设备标识包括所述目标设备的设备标识,。
本发明实施例中,权限单元902,被配置为:
当所述至少一个用户组中每一用户组的组成员不包括所述第一用户标识,所述服务器确定所述第一用户标识的访问权限为禁止访问;或
当所述至少一个用户组中每一用户组的共享设备的设备标识不包括所述目标设备的设备标识,所述服务器确定所述第一用户标识的访问权限为禁止访问;或
当所述至少一个用户组中,组成员不包括所述第一用户标识的用户组与共享设备的设备标识不包括所述目标设备的设备标识的用户组不是同一用户组,所述服务器确定所述第一用户标识对目标设备的访问权限为禁止访问。
本发明实施例中,权限单元902,还被配置为:
所述用户组的组成员的用户标识不包括与所述目标设备之间具有绑定关系的用户标识,且所述第一用户标识与所述设备不具有绑定关系,根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限。
本发明实施例中,服务器304还包括:更新单元,被配置为:
接收第二访问设备基于所述第二用户标识发送的更新请求;
根据所述更新请求,得到对应所述第二用户标识的新用户组。
本发明实施例中,所述更新请求携带的所述新用户组的组信息,所述组信息至少包括:用户组名称、组成员的标识和共享设备的设备标识。
本发明实施例中,所述组成员的标识包括:所述第一用户标识,所述共享设备包括:所述目标设备。
本发明实施例中,所述组成员的标识还包括:所述第二用户标识。
本发明实施例中,更新单元,还被配置为:
当不存在对应所述第二用户标识的已有的用户组,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;
当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中不包括所述更新请求携带的新用户组的用户组名称,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;
当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中包括所述更新请求携带的新用户组的用户组名称,以所述新用户组的用户组名称对应的用户组为参考用户组,根据所述更新请求携带的组成员的标识和共享设备的设备标识,对所述参考用户组的组信息进行更新,得到新用户组。
本发明实施例中,更新请求携带更新后的至少一个用户组的组信息;所述更新后的至少一个用户组包括:新用户组和所述第二用户标识对应的已有的用户组;所述更新单元,还被配置为:
根据所述更新后的至少一个用户组的组信息,对所述第二用户标识对应的已有的用户组的组信息进行覆盖,得到更新后的至少一个用户组。
本发明实施例中,所述新用户组为新添加的用户组或对所述已有的用户组中的参考用户组进行更新得到的用户组。
本发明实施例中,所述新用户组的组信息包括:用户组名称、组成员的标识和共享设备的设备标识;
本发明实施例中,所述组成员的标识包括:所述第一用户标识,所述共享设备包括:所述目标设备。
本发明实施例中,所述组成员的标识还包括:所述第二用户标识。
本发明实施例中,所述更新单元,还被配置为:
当与所述共享设备具有绑定关系的用户标识为所述第二用户标识,根据所述更新请求,得到对应所述第二用户标识的新用户组。
本发明实施例中,所述新用户组的组信息还包括:有效期;所述服务器还包括:第一删除单元,被配置为当所述新用户组的创建时间达到所述有效期,所述服务器将所述新用户组删除。
本发明实施例中,所述服务器还包括:第一查询单元,被配置为:
接收第二访问设备基于所述第二用户标识发送的查询请求;
基于所述查询请求获取所述第二用户标识对应的全部的用户组的组信息;
将所述已有的用户组的组信息发送至所述第二访问设备。
本发明实施例中,所述服务器还包括:第二查询单元,被配置为:
接收第二访问设备基于所述第二用户标识发送的查询请求;所述查询请求中携带待查询的用户组的用户组名称;
基于所述查询请求获取所述待查询的用户组的组信息;
将所述待查询的用户组的组信息发送至所述第二访问设备。
本发明实施例中,所述服务器还包括:第二删除单元,被配置为:
接收第二访问设备基于所述第二用户标识发送的删除请求;
根据所述删除请求删除所述第二用户组对应的全部的用户组。
本发明实施例中,所述服务器还包括:第三删除单元,被配置为:
接收第二访问设备基于所述第二用户标识发送的删除请求;所述删除请求携带待删除的用户组的用户组名称;
根据所述删除请求从所述第二用户组对应的至少一个用户组中删除所述待删除的用户组的组信息。
本发明实施例还提供一种访问设备1000,作为图3中的第一访问设备301,所述访问设备的组成结构示意图,如图i0A所示,包括:
选择单元1001,被配置为确定接收的选择操作所选取的目标设备;
第一发送单元1002,被配置为基于所述目标设备对应的设备标识生成访问请求,将所述访问请求发送至服务器,使得所述服务器根据至少一个用户组确定所述访问设备所使用的第一用户标识对所述目标设备的访问权限。
本发明实施例中,访问设备1000还包括:第二发送单元,被配置为将所述第一用户标识发送至使用所述第二用户标识的第二访问设备,使得所述第二访问设备基于所述第一用户标识生成更新请求,所述更新请求用于所述服务器建立新用户组,所述新用户组的组成员包括所述第一访问设备。
本发明实施例还提供一种访问设备1010,作为图3中的第二访问设备302,所述访问设备的组成结构示意图,如图10B所示,包括:
组建立单元1011,被配置为基于第二用户标识向服务器发送更新请求,所述更新请求用于使所述服务器生成用户组,生成的用户组用于判断使用第一用户标识的第一访问设备对目标设备的访问权限,所述第二用户标识与所述目标设备具有绑定关系。
本发明实施例中,访问设备1010还包括:
第一获取单元,被配置为获取新用户组的组信息,将所述新用户组的组信息携带在所述更新请求中。
本发明实施例中,访问设备1010还包括:第二获取单元,被配置向所述服务器查询对应所述第二用户标识的已有的用户组的组信息,将所获取的已有用户组的组信息携带在所述更新请求中。
本发明实施例中,访问设备1010还包括:
组更新单元,被配置为当所述已有的用户组的用户组名称中包括所述新用户组的用户组名称,将所述新用户组的用户组名对应的已有用户组作为参考用户组,通过所述新用户组的组信息对所述参考用户组的组信息进行更新。
本发明实施例还提供一种服务器,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行上述服务器执行的访问控制方法的步骤。
本发明实施例还提供一种访问设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行上述访问设备1000执行的访问控制方法的步骤。
本发明实施例还提供一种访问设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器用于运行所述计算机程序时,执行上述访问设备1010执行的访问控制方法的步骤
图11是本发明实施例的电子设备(访问设备或服务器)的硬件组成结构示意图,电子设备1100包括:至少一个处理器1101、存储器1102和至少一个网络接口1104。电子设备1100中的各个组件通过总线系统1105耦合在一起。可理解,总线系统1105用于实现这些组件之间的连接通信。总线系统1105除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图11中将各种总线都标为总线系统1105。
可以理解,存储器1102可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是ROM、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,ErasableProgrammable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,ElectricallyErasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagneticrandom access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,SynchronousStatic Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random AccessMemory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random AccessMemory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data RateSynchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器1102旨在包括但不限于这些和任意其它适合类型的存储器。
本发明实施例中的存储器1102用于存储各种类型的数据以支持电子设备1100的操作。这些数据的示例包括:用于在电子设备1100上操作的任何计算机程序,如应用程序11021。实现本发明实施例方法的程序可以包含在应用程序11021中。
上述本发明实施例揭示的方法可以应用于处理器1101中,或者由处理器1101实现。处理器1101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1101可以是通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器1101可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器1102,处理器1101读取存储器1102中的信息,结合其硬件完成前述方法的步骤。
在示例性实施例中,电子设备1100可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,ProgrammableLogic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、FPGA、通用处理器、控制器、MCU、MPU、或其他电子元件实现,用于执行前述方法。
本发明实施例还提供了一种存储介质,用于存储计算机程序。
可选的,该存储介质可应用于本发明实施例中的服务器,并且该计算机程序使得计算机执行本发明实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
可选的,该存储介质可应用于本发明实施例中的访问设备,并且该计算机程序使得计算机执行本发明实施例的各个方法中的相应流程,为了简洁,在此不再赘述。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。

Claims (58)

1.一种访问控制方法,包括:
服务器接收第一访问设备基于第一用户标识发送的访问目标设备的访问请求;
所述服务器根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限;
所述服务器根据所述访问权限对所述访问请求进行处理;
其中,所述根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限,包括:
当所述至少一个用户组中包括目标用户组,所述服务器确定所述第一用户标识对目标设备的访问权限为允许访问;所述目标用户组的组成员包括所述第一用户标识,且所述目标用户组中的共享设备的设备标识包括所述目标设备的设备标识,其中,所述目标用户组包括至少一个组成员且包括多个共享设备。
2.根据权利要求1所述的方法,所述访问权限包括:允许访问和禁止访问;所述根据所述访问权限对所述访问请求进行处理,包括:
当所述访问权限为允许访问,将所述访问请求转发至所述目标设备;
当所述访问权限为禁止访问,拒绝所述访问请求。
3.根据权利要求2所述的方法,所述根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限,还包括:
当所述至少一个用户组中每一用户组的组成员不包括所述第一用户标识,所述服务器确定所述第一用户标识对目标设备的访问权限为禁止访问;或
当所述至少一个用户组中每一用户组的共享设备的设备标识不包括所述目标设备的设备标识,所述服务器确定所述第一用户标识对目标设备的访问权限为禁止访问;或
当所述至少一个用户组中,组成员不包括所述第一用户标识的用户组与共享设备的设备标识不包括所述目标设备的设备标识的用户组不是同一用户组,所述服务器确定所述第一用户标识对目标设备的访问权限为禁止访问。
4.根据权利要求1所述的方法,所述根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限,还包括:
当所述用户组的组成员的用户标识不包括与所述目标设备之间具有绑定关系的用户标识,且所述第一用户标识与所述目标设备不具有绑定关系,根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限。
5.根据权利要求1至4任一项所述的方法,所述方法还包括:
所述服务器接收第二访问设备基于第二用户标识发送的更新请求;所述第二用户标识与所述目标设备之间具有绑定关系;
所述服务器根据所述更新请求,得到对应所述第二用户标识的新用户组。
6.根据权利要求5所述的方法,所述更新请求携带的所述新用户组的组信息,所述组信息至少包括:用户组名称、组成员的标识和共享设备的设备标识。
7.根据权利要求6所述的方法,所述组成员的标识包括:所述第一用户标识,所述共享设备包括:所述目标设备。
8.根据权利要求7所述的方法,所述组成员的标识还包括:所述第二用户标识。
9.根据权利要求6所述的方法,所述根据所述更新请求,得到对应所述第二用户标识的新用户组,包括:
当不存在对应所述第二用户标识的已有的用户组,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;
当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中不包括所述更新请求携带的新用户组的用户组名称,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;
当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中包括所述更新请求携带的新用户组的用户组名称,以所述新用户组的用户组名称对应的用户组为参考用户组,根据所述更新请求携带的组成员的标识和共享设备的设备标识,对所述参考用户组的组信息进行更新,得到新用户组。
10.根据权利要求5所述的方法,所述更新请求携带更新后的至少一个用户组的组信息;所述更新后的至少一个用户组包括:新用户组和所述第二用户标识对应的已有的用户组;所述根据所述更新请求,得到对应所述第二用户标识的新用户组,包括:
根据所述更新后的至少一个用户组的组信息,对所述第二用户标识对应的已有的用户组的组信息进行覆盖,得到更新后的至少一个用户组。
11.根据权利要求10所述的方法,所述新用户组为新添加的用户组或对所述已有的用户组中的参考用户组进行更新得到的用户组。
12.根据权利要求10所述的方法,所述新用户组的组信息至少包括:用户组名称、组成员的标识和共享设备的设备标识。
13.根据权利要求12所述的方法,所述组成员的标识包括:所述第一用户标识,所述共享设备包括:所述目标设备。
14.根据权利要求13所述的方法,所述组成员的标识还包括:所述第二用户标识。
15.根据权利要求6所述的方法,根据所述更新请求,得到对应所述第二用户标识的新用户组,包括:
当与所述共享设备具有绑定关系的用户标识为所述第二用户标识,根据所述更新请求,得到对应所述第二用户标识的新用户组。
16.根据权利要求6所述的方法,所述新用户组的组信息还包括:有效期;所述方法还包括:
当所述新用户组的创建时间达到所述有效期,所述服务器将所述新用户组删除。
17.根据权利要求1至4任一项所述的方法,所述方法还包括:
所述服务器接收第二访问设备基于第二用户标识发送的查询请求;
所述服务器基于所述查询请求获取所述第二用户标识对应的全部的用户组的组信息;
所述服务器将所述第二用户标识对应的全部的用户组的组信息发送至所述第二访问设备。
18.根据权利要求1至4任一项所述的方法,所述方法还包括:
所述服务器接收第二访问设备基于第二用户标识发送的查询请求;所述查询请求中携带待查询的用户组的用户组名称;
所述服务器基于所述查询请求获取所述待查询的用户组的组信息;
所述服务器将所述待查询的用户组的组信息发送至所述第二访问设备。
19.根据权利要求1至4任一项所述的方法,所述方法还包括:
所述服务器接收第二访问设备基于第二用户标识发送的删除请求;
所述服务器根据所述删除请求删除所述第二用户标识对应的全部的用户组。
20.根据权利要求1至4任一项所述的方法,所述方法还包括:
所述服务器接收第二访问设备基于第二用户标识发送的删除请求;所述删除请求携带待删除的用户组的用户组名称;
所述服务器根据所述删除请求从所述第二用户标识对应的至少一个用户组中删除所述待删除的用户组的组信息。
21.一种访问控制方法,所述方法包括:
第一访问设备确定接收的选择操作所选取的目标设备;
所述第一访问设备基于所述目标设备对应的设备标识生成访问请求,将所述访问请求发送至服务器,使得所述服务器根据至少一个用户组确定所述第一访问设备所使用的第一用户标识对所述目标设备的访问权限,其中,所述至少一个用户组中包括目标用户组,则所述第一用户标识对所述目标设备的访问权限为允许访问;所述目标用户组的组成员包括所述第一用户标识且所述目标用户组中的共享设备的设备标识包括所述目标设备的设备标识,其中,所述目标用户组包括至少一个组成员且包括多个共享设备。
22.根据权利要求21所述的方法,所述方法还包括:
所述第一访问设备将所述第一用户标识发送至使用第二用户标识的第二访问设备,使得所述第二访问设备基于所述第一用户标识生成更新请求,所述更新请求用于所述服务器建立新用户组,所述新用户组的组成员包括所述第一访问设备。
23.一种访问控制方法,所述方法包括:
第二访问设备基于第二用户标识向服务器发送更新请求,所述更新请求用于使所述服务器生成用户组,生成的用户组用于判断使用第一用户标识的第一访问设备对目标设备的访问权限,所述第二用户标识与所述目标设备具有绑定关系,其中,所述用户组为目标用户组,则所述第一用户标识对所述目标设备的访问权限为允许访问;所述目标用户组的组成员包括所述第一用户标识,且所述目标用户组中的共享设备的设备标识包括所述目标设备的设备标识,其中,所述目标用户组包括至少一个组成员且包括多个共享设备。
24.根据权利要求23所述的方法,所述方法还包括:
所述第二访问设备获取新用户组的组信息;将所述新用户组的组信息携带在所述更新请求中。
25.根据权利要求24所述的方法,所述方法还包括:
所述第二访问设备向所述服务器查询对应所述第二用户标识的已有的用户组的组信息,将所获取的已有用户组的组信息携带在所述更新请求中。
26.根据权利要求25所述的方法,所述方法还包括:
当所述已有的用户组的用户组名称中包括所述新用户组的用户组名称,所述第二访问设备将所述新用户组的用户组名对应的已有用户组作为参考用户组,通过所述新用户组的组信息对所述参考用户组的组信息进行更新。
27.一种服务器,包括:
接收单元,配置为接收第一访问设备基于第一用户标识发送的访问目标设备的访问请求;
权限单元,配置为根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限;
处理单元,配置为根据所述访问权限对所述访问请求进行处理;
其中,所述根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限,包括:
当所述至少一个用户组中包括目标用户组,所述服务器确定所述第一用户标识对目标设备的访问权限为允许访问;所述目标用户组的组成员包括所述第一用户标识,且所述目标用户组中的共享设备的设备标识包括所述目标设备的设备标识,其中,所述目标用户组包括至少一个组成员且包括多个共享设备。
28.根据权利要求27所述的服务器,所述访问权限包括:允许访问和禁止访问;所述处理单元,配置为:
当所述访问权限为允许访问,将所述访问请求转发至所述目标设备;
当所述访问权限为禁止访问,拒绝所述访问请求。
29.根据权利要求28所述的服务器,所述权限单元,被配置为:
当所述至少一个用户组中每一用户组的组成员不包括所述第一用户标识,所述服务器确定所述第一用户标识对目标设备的访问权限为禁止访问;或
当所述至少一个用户组中每一用户组的共享设备的设备标识不包括所述目标设备的设备标识,所述服务器确定所述第一用户标识对目标设备的访问权限为禁止访问;或
当所述至少一个用户组中,组成员不包括所述第一用户标识的用户组与共享设备的设备标识不包括所述目标设备的设备标识的用户组不是同一用户组,所述服务器确定所述第一用户标识对目标设备的访问权限为禁止访问。
30.根据权利要求27所述的服务器,所述权限单元,还被配置为:
当所述用户组的组成员的用户标识不包括与所述目标设备之间具有绑定关系的用户标识,且所述第一用户标识与所述目标设备不具有绑定关系,根据至少一个用户组,确定所述第一用户标识对所述目标设备的访问权限。
31.根据权利要求27至30任一项所述的服务器,所述服务器还包括:更新单元,被配置为:
接收第二访问设备基于第二用户标识发送的更新请求;
根据所述更新请求,得到对应所述第二用户标识的新用户组。
32.根据权利要求31所述的服务器,所述更新请求携带的所述新用户组的组信息,所述组信息至少包括:用户组名称、组成员的标识和共享设备的设备标识。
33.根据权利要求32所述的服务器,所述组成员的标识包括:所述第一用户标识,所述共享设备包括:所述目标设备。
34.根据权利要求33所述的服务器,所述组成员的标识还包括:所述第二用户标识。
35.根据权利要求32所述的服务器,所述更新单元,还被配置为:
当不存在对应所述第二用户标识的已有的用户组,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;
当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中不包括所述更新请求携带的新用户组的用户组名称,根据所述更新请求携带的新用户组的用户组名称、组成员的标识和共享设备的设备标识,创建新用户组;
当存在对应第二用户标识的已有的用户组,且所述已有的用户组的组名称中包括所述更新请求携带的新用户组的用户组名称,以所述新用户组的用户组名称对应的用户组为参考用户组,根据所述更新请求携带的组成员的标识和共享设备的设备标识,对所述参考用户组的组信息进行更新,得到新用户组。
36.根据权利要求31所述的服务器,所述更新请求携带更新后的至少一个用户组的组信息;所述更新后的至少一个用户组包括:新用户组和所述第二用户标识对应的已有的用户组;所述更新单元,还被配置为:
根据所述更新后的至少一个用户组的组信息,对所述第二用户标识对应的已有的用户组的组信息进行覆盖,得到更新后的至少一个用户组。
37.根据权利要求36所述的服务器,所述新用户组为新添加的用户组或对所述已有的用户组中的参考用户组进行更新得到的用户组。
38.根据权利要求36所述的服务器,所述新用户组的组信息包括:用户组名称、组成员的标识和共享设备的设备标识。
39.根据权利要求38所述的服务器,所述组成员的标识包括:所述第一用户标识,所述共享设备包括:所述目标设备。
40.根据权利要求38所述的服务器,所述组成员的标识还包括:所述第二用户标识。
41.根据权利要求32所述的服务器,所述更新单元,还被配置为:
当与所述共享设备具有绑定关系的用户标识为所述第二用户标识,根据所述更新请求,得到对应所述第二用户标识的新用户组。
42.根据权利要求32所述的服务器,所述新用户组的组信息还包括:有效期;所述服务器还包括:第一删除单元,被配置为当所述新用户组的创建时间达到所述有效期,所述服务器将所述新用户组删除。
43.根据权利要求27至30任一项所述的服务器,所述服务器还包括:第一查询单元,被配置为:
接收第二访问设备基于第二用户标识发送的查询请求;
基于所述查询请求获取所述第二用户标识对应的全部的用户组的组信息;
将所述第二用户标识对应的全部的用户组的组信息发送至所述第二访问设备。
44.根据权利要求27至30任一项所述的服务器,所述服务器还包括:第二查询单元,被配置为:
接收第二访问设备基于第二用户标识发送的查询请求;所述查询请求中携带待查询的用户组的用户组名称;
基于所述查询请求获取所述待查询的用户组的组信息;
将所述待查询的用户组的组信息发送至所述第二访问设备。
45.根据权利要求27至30任一项所述的服务器,所述服务器还包括:第二删除单元,被配置为:
接收第二访问设备基于第二用户标识发送的删除请求;
根据所述删除请求删除所述第二用户标识对应的全部的用户组。
46.根据权利要求27至30任一项所述的服务器,所述服务器还包括:第三删除单元,被配置为:
接收第二访问设备基于第二用户标识发送的删除请求;所述删除请求携带待删除的用户组的用户组名称;
根据所述删除请求从所述第二用户标识对应的至少一个用户组中删除所述待删除的用户组的组信息。
47.一种访问设备,所述访问设备包括:
选择单元,被配置为确定接收的选择操作所选取的目标设备;
第一发送单元,被配置为基于所述目标设备对应的设备标识生成访问请求,将所述访问请求发送至服务器,使得所述服务器根据至少一个用户组确定所述访问设备所使用的第一用户标识对所述目标设备的访问权限,其中,所述至少一个用户组中包括目标用户组,则所述第一用户标识对所述目标设备的访问权限为允许访问;所述目标用户组的组成员包括所述第一用户标识,且所述目标用户组中的共享设备的设备标识包括所述目标设备的设备标识,其中,所述目标用户组包括至少一个组成员且包括多个共享设备。
48.根据权利要求47所述的访问设备,所述访问设备还包括:
第二发送单元,被配置为将所述第一用户标识发送至使用第二用户标识的第二访问设备,使得所述第二访问设备基于所述第一用户标识生成更新请求,所述更新请求用于所述服务器建立新用户组,所述新用户组的组成员包括所述访问设备。
49.一种访问设备,所述访问设备包括:
组建立单元,被配置为基于第二用户标识向服务器发送更新请求,所述更新请求用于使所述服务器生成用户组,生成的用户组用于判断使用第一用户标识的第一访问设备对目标设备的访问权限,所述第二用户标识与所述目标设备具有绑定关系,其中,所述用户组为目标用户组,则所述第一用户标识对所述目标设备的访问权限为允许访问;所述目标用户组的组成员包括所述第一用户标识,且所述目标用户组中的共享设备的设备标识包括所述目标设备的设备标识,其中,所述目标用户组包括至少一个组成员且包括多个共享设备。
50.根据权利要求49所述的访问设备,所述访问设备还包括:
第一获取单元,被配置为获取新用户组的组信息,将所述新用户组的组信息携带在所述更新请求中。
51.根据权利要求50所述的访问设备,所述访问设备还包括:第二获取单元,被配置向所述服务器查询对应所述第二用户标识的已有的用户组的组信息,将所获取的已有用户组的组信息携带在所述更新请求中。
52.根据权利要求51所述的访问设备,所述访问设备还包括:
组更新单元,被配置为当所述已有的用户组的用户组名称中包括所述新用户组的用户组名称,将所述新用户组的用户组名对应的已有用户组作为参考用户组,通过所述新用户组的组信息对所述参考用户组的组信息进行更新。
53.一种服务器,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,
所述处理器用于运行所述计算机程序时,执行权利要求1至20任一项所述的访问控制方法的步骤。
54.一种访问设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,
所述处理器用于运行所述计算机程序时,执行权利要求21至22任一项所述的访问控制方法的步骤。
55.一种访问设备,包括处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,
所述处理器用于运行所述计算机程序时,执行权利要求23至26任一项所述的访问控制方法的步骤。
56.一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现权利要求1至20任一项所述的访问控制方法。
57.一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现权利要求21至22任一项所述的访问控制方法。
58.一种存储介质,存储有可执行程序,所述可执行程序被处理器执行时,实现权利要求23至26任一项所述的访问控制方法。
CN201980079278.3A 2019-06-14 2019-06-14 一种访问控制方法、装置及存储介质 Active CN113169970B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311284666.XA CN117336053A (zh) 2019-06-14 2019-06-14 一种访问控制方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/091410 WO2020248284A1 (zh) 2019-06-14 2019-06-14 一种访问控制方法、装置及存储介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311284666.XA Division CN117336053A (zh) 2019-06-14 2019-06-14 一种访问控制方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN113169970A CN113169970A (zh) 2021-07-23
CN113169970B true CN113169970B (zh) 2023-10-27

Family

ID=73781922

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202311284666.XA Pending CN117336053A (zh) 2019-06-14 2019-06-14 一种访问控制方法、装置及存储介质
CN201980079278.3A Active CN113169970B (zh) 2019-06-14 2019-06-14 一种访问控制方法、装置及存储介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202311284666.XA Pending CN117336053A (zh) 2019-06-14 2019-06-14 一种访问控制方法、装置及存储介质

Country Status (2)

Country Link
CN (2) CN117336053A (zh)
WO (1) WO2020248284A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113596092A (zh) * 2021-06-28 2021-11-02 青岛海尔科技有限公司 设备云端控制的分享方法、系统、智能设备及存储介质
CN113630447B (zh) * 2021-07-22 2023-04-07 济南浪潮数据技术有限公司 一种基于web的云服务提供方法、系统及存储介质
CN113839949B (zh) * 2021-09-26 2023-10-24 锐捷网络股份有限公司 一种访问权限管控系统、方法、芯片及电子设备
CN114172687A (zh) * 2021-11-03 2022-03-11 杭州涂鸦信息技术有限公司 云端连接方法、辅助设备连接云端的方法及电子设备
CN115309766B (zh) * 2022-10-12 2023-03-24 北京奥星贝斯科技有限公司 一种数据库业务执行的方法及装置

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101957774A (zh) * 2010-09-21 2011-01-26 用友软件股份有限公司 业务操作建模方法和装置
CN102238656A (zh) * 2010-04-28 2011-11-09 北京三星通信技术研究有限公司 一种移动通信系统中的切换方法
CN102870341A (zh) * 2010-04-02 2013-01-09 马维尔国际贸易有限公司 多用户通信组管理和信令
CN106385397A (zh) * 2015-07-31 2017-02-08 腾讯科技(深圳)有限公司 网络接入设备访问控制及类型配置方法和装置
CN107508892A (zh) * 2017-08-29 2017-12-22 努比亚技术有限公司 一种页面访问方法、服务器及计算机可读存储介质
CN107786621A (zh) * 2016-08-31 2018-03-09 阿里巴巴集团控股有限公司 一种用户信息管理方法、访问处理方法及装置和系统
CN107995215A (zh) * 2017-12-20 2018-05-04 青岛海信智慧家居系统股份有限公司 智能家居设备的控制方法、装置及云平台服务器
CN109788005A (zh) * 2017-11-10 2019-05-21 中兴通讯股份有限公司 设备控制权限共享方法、装置、系统及计算机存储介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101170409B (zh) * 2006-10-24 2010-11-03 华为技术有限公司 实现设备访问控制的方法、系统、业务设备和认证服务器
CN103618706B (zh) * 2013-11-19 2018-11-02 深圳Tcl新技术有限公司 智能设备相互访问的控制系统及方法
CA2881644C (en) * 2014-03-31 2023-01-24 Smart Technologies Ulc Defining a user group during an initial session
CN105721420B (zh) * 2015-12-11 2019-04-16 中国地质调查局发展研究中心 访问权限控制方法和反向代理服务器

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102870341A (zh) * 2010-04-02 2013-01-09 马维尔国际贸易有限公司 多用户通信组管理和信令
CN102238656A (zh) * 2010-04-28 2011-11-09 北京三星通信技术研究有限公司 一种移动通信系统中的切换方法
CN101957774A (zh) * 2010-09-21 2011-01-26 用友软件股份有限公司 业务操作建模方法和装置
CN106385397A (zh) * 2015-07-31 2017-02-08 腾讯科技(深圳)有限公司 网络接入设备访问控制及类型配置方法和装置
CN107786621A (zh) * 2016-08-31 2018-03-09 阿里巴巴集团控股有限公司 一种用户信息管理方法、访问处理方法及装置和系统
CN107508892A (zh) * 2017-08-29 2017-12-22 努比亚技术有限公司 一种页面访问方法、服务器及计算机可读存储介质
CN109788005A (zh) * 2017-11-10 2019-05-21 中兴通讯股份有限公司 设备控制权限共享方法、装置、系统及计算机存储介质
CN107995215A (zh) * 2017-12-20 2018-05-04 青岛海信智慧家居系统股份有限公司 智能家居设备的控制方法、装置及云平台服务器

Also Published As

Publication number Publication date
WO2020248284A1 (zh) 2020-12-17
CN113169970A (zh) 2021-07-23
CN117336053A (zh) 2024-01-02

Similar Documents

Publication Publication Date Title
CN113169970B (zh) 一种访问控制方法、装置及存储介质
US20220038458A1 (en) Multifactor Authentication for Internet-of-Things Devices
KR101962156B1 (ko) 권한부여 처리 방법 및 장치
US7860525B2 (en) System, method, and computer program product for service and application configuration in a network device
CN100533440C (zh) 基于对共享式数据的访问权限来提供服务
US10182351B2 (en) Method for service subscription resource-based authentication in wireless communication system
US9531835B2 (en) System and method for enabling wireless social networking
CN108337677B (zh) 网络鉴权方法及装置
EP1953950B1 (en) A method for protecting network service application account, the system, and the apparatus thereof
EP1759553B1 (en) Method for serving location information access requests
US8495195B1 (en) Cookie preservation when switching devices
US9319412B2 (en) Method for establishing resource access authorization in M2M communication
WO2017059290A1 (en) Peer-to-peer syncable storage system
EP2875442B1 (en) Systems and methods for facilitating service provision between applications
CN104104654A (zh) 一种设置Wifi访问权限、Wifi认证的方法和设备
CN106534082B (zh) 一种用户注册方法和装置
CN109769249B (zh) 一种认证方法、系统及其装置
EP2640045A1 (en) Method and System for Transferring Mobile Device Contact Information
WO2009133419A1 (en) Method, apparatus, and computer program product for providing a group based decentralized authorization mechanism
CN112199656B (zh) 业务平台的访问权限获取方法和业务平台的访问控制方法
US20070162980A1 (en) SYSTEM AND METHOD FOR PROVIDING CONTENT SECURITY IN UPnP SYSTEMS
CA2749173A1 (en) Method and system for authentication of network nodes of a peer-to-peer network
CN113489689B (zh) 访问请求的鉴权方法及装置、存储介质、电子设备
CN112492592A (zh) 一种多个nrf场景下的授权方法
CN110198540B (zh) Portal认证方法及装置

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
GR01 Patent grant
GR01 Patent grant