优特云
[ { "name": "首页", "url": "http://www.utyun.com/", "target": "0", "child": [] }, { "name": "活动", "url": "http://www.utyun.com/h-col-141.html", "target": "0", "child": [] }, { "name": "产品", "url": "", "target": "1", "child": [ { "name": "U语言", "url": "http://www.utyun.com/h-col-176.html", "target": "0", "child": [] }, { "name": "U平台", "url": "http://www.utyun.com/h-col-150.html", "target": "0", "child": [] } ] }, { "name": "技术与服务", "url": "", "target": "1", "child": [ { "name": "运维服务", "url": "http://www.utyun.com/h-col-161.html", "target": "0", "child": [] }, { "name": "技术方案", "url": "http://www.utyun.com/h-col-178.html", "target": "0", "child": [] } ] }, { "name": "优特云学院", "url": "", "target": "1", "child": [ { "name": "教程", "url": "http://www.utyun.com/h-col-166.html", "target": "0", "child": [] }, { "name": "下载中心", "url": "http://www.utyun.com/h-col-170.html", "target": "0", "child": [] }, { "name": "论坛", "url": "http://www.utyun.com/h-col-169.html", "target": "0", "child": [] } ] }, { "name": "关于优特云", "url": "", "target": "1", "child": [ { "name": "企业概况", "url": "http://www.utyun.com/h-col-171.html", "target": "0", "child": [] }, { "name": "新闻动态", "url": "http://www.utyun.com/h-col-172.html", "target": "0", "child": [] }, { "name": "加入我们", "url": "http://www.utyun.com/h-col-173.html", "target": "0", "child": [] }, { "name": "团队风采", "url": "http://www.utyun.com/h-col-140.html", "target": "0", "child": [] } ] } ]
权限系统
权限系统-使用手册

用户1286 最后一次编辑

2 年多前 61

一、产品介绍

1.产品优势

2.简介

优特云的权限管理系统,是针对资源提供安全、灵活、可靠的权限管理解决方案。它既可以适用于IOT设备权限控制的通用场景,如IOT智能设备的家庭、企业使用场景;也可以适用于虚拟软件应用的权限管理。 总的来说,优特云的权限管理系统具有很高的通用性和实用性。
资源 : 资源是一个抽象的概念,它可以代指现实中的实体设备,也可以代指虚拟的应用、资产等。 所以优特云的权限管理可以针对实体设备和虚拟应用等做权限管理,适应于绝大多数的应用场景

3.应用场景

(1)家庭使用的智能IOT设备:
以家庭使用的智能门锁举例:
1.智能门锁初次使用时,需绑定一个拥有者
2.拥有者可以使用该智能门锁的全部功能;
3.拥有者可以选择功能分享给其他家庭成员;
4.拥有智能门锁权限的用户,都可以对智能门锁进行操作(开锁);同时还支持在线、离线的操作,满足不同网络环境的场景;
5.拥有者如果不想使用智能门锁了,可以进行解绑操作。
 
(2)企业使用的智能IOT设备:
以公寓使用的智能门锁举例:
1.组织管理员可以给小区建立一个组织,这个组织是根据公寓情况建立的;
2.组织管理员可以给租户分配权限;
3.当租户退租时,组织管理员可以将该租户的权限移除。
 
(3)虚拟软件应用:
以某ERP软件开发商举例:
1.开发商手头有3个客户,每个客户购买的服务等级不同,开发商可以根据客户购买的服务等级开放不同的功能给客户使用;
2.开发商新增了某个免费通用功能时,可以设置开放给所有客户使用;
3.第二年客户A想要升级服务,客户B想降级服务,开发商可实时调整客户的服务等级;
4.开发商可以允许客户的组织情况,客户自己设置采购权限、审批权限、财务权限分派给不同的员工使用;
5.客户可以实时管理员工权限,查看员工使用情况。 
 
(4)某些需要高度定制化、实时灵活变化的企业管理场景
当在需要高度定制化、实时灵活变化的企业管理场景时,可以使用优特云基于用户语言打造的权限转移方案,权限转移方案是根据客户特定的使用场景、特定的需求来进行定制的方案。
以某海关货物过关审查场景举例,某货物从A港出发,到达B港,期间要经历两个港口的审核检查,检查完毕后,审核员就再无权限
货物流转过程权限转移过程
货物运送到A港后,A港入口海关员将货物封存上锁上锁后,A港海关管理员拥有开锁权限
A港海关抽检员,对货物进行抽检A港海关抽检员在系统上申请对某些货物抽检,被抽检货物的开锁权限,暂时对抽检员进行开放
抽检完毕后,货物离开A港货物离开A港后,A港所有人员无权限对货物进行开锁
货物到达B港后,B港海关抽检员,进行抽检B港海关抽检员在系统上申请对某些货物抽检,被抽检货物的开锁权限,暂时对抽检员进行开放
抽检通过后,货物离开B港货物离开B港后,B港所有人员无权限对货物进行开锁

4.产品架构图

5.产品模块图

权限系统分为四大模块,分别是权限设置、权限判断、权限同步、权限转移。
(1)权限设置
定义:通过业务逻辑的驱动,建立系统内某权限实体与资源实例之间的关系,以及该关系生效的规则。同时我们根据不同的应用场景,分成个人级和企业级的权限管理系统,让客户根据自身的实际需求选择方案。
个人级 : 个人级权限主要用户解决个人资源权限控制的通用场景,例如智能门锁的家庭业务场景。
企业级 : 企业级权限主要用户解决企业内部资源权限控制的通用场景,例如智能门锁的公寓业务场景。
 
(2)权限判断
权限判断是优特云根据用户实际的权限,同意或拒绝某次对资源访问。同时在权限判断过程中,加入了非对称式的加密方案,确保指令在传输过程的可靠性。
 
(3)权限同步
权限同步方案一般用在实体设备需要权限判断的场景,通过同步方案保持云端和设备端的权限信息一致。根据不同的应用场景,有以下两种方案:
在线方案 : 权限的判断过程主要是云端负责,通过加密数据通道把权限判断结果下发到设备。
离线方案 : 权限的判断过程主要是设备端负责,云端只负责把权限文件下发到设备中,由设备根据权限文件进行判断。
 
(4)权限转移
某些行业中,会遇到比较复杂的业务流程,其中会涉及到多次的权限转移。优特云提供了独有的用户语言服务流程定制,为复杂的业务流程,提供灵活多变的方案,满足客户需求。
 

二、产品版本

个人级权限

V1.00.00.00(2020-04-15)
发布时间:2020-04-15
个人级权限基于角色管理资源与权限,用户通过绑定资源、分享资源获取权限。 v1.00版本主要实现了:
  1. 基于个人的权限管理(绑定、修改、解绑、查询)
  2. 权限分享
  3. 权限条件(永久、限时、限次、循环)
  4. 权限判断(在线判断、离线判断)
  5. 权限同步文件
  6. 权限的消耗逻辑

企业级权限

V1.00.00.00
发布时间:2020-07-01
企业级权限是基于组织管理资源,用户通过绑定组织节点获取权限。 v1.01版本主要实现了:
  1. 开发者对组织的管理(创建、管理、启用/禁用、删除)
  2. 组织管理员对组织的管理
  3. 管理用户
  4. 管理资源类型
  5. 管理节点
  6. 管理权限
  7. 基于组织的权限管理(绑定、修改、解绑、查询)
  8. 权限判断(在线判断、离线判断)
  9. 权限同步文件
  10. 权限的传递规则
V1.01.00.00
发布时间:2020-07-15
企业级权限是基于组织管理资源,用户通过绑定组织节点获取权限。 v1.01版本主要实现了:
  1. 增加子节点管理员的概念
  2. 组织节点增加禁用启用功能
  3. 用户增加时间概念
V1.02.01.00
发布时间:2020-09-15
企业级权限是基于组织管理资源,用户通过绑定组织节点获取权限。 v1.02版本主要实现了:
  1. 新增离线鉴权模块功能
  2. 新增批量查询设备详情接口
  3. 修复签名文件获取权限异常问题
 

三、使用限制

离线判断中权限文件的限制
目前离线判断是提前将权限文件下发到设备中,用户将关键信息传输给设备,设备通过最新的权限文件判断该用户是否拥有权限。该权限文件采用了RSA和AES的加密算法,所以该文件的大小依赖设备的性能,文件越大解密的时间越长。
目前我们采用NORDIC的nRF52832芯片(芯片参数:主频64M,Flash512,RAM64K)得出以下使用建议:
描述使用限制
个人级权限文件建议单个文件写入的用户数量不超过30个
企业级权限文件建议单个文件写入的组织数量不超过30个
  

四、快速入门

1.个人级权限

步骤一:注册成为开发者

在使用权限系统之前,开发者需要先注册一个平台的开发者账号,目前平台注册是基于用户中心的。
注册
打开 开发者中心,会自动跳转到用户中心登录注册页面,按指引完成用户中心的注册流程。
登陆
注册完成后,会自动登陆开发者中心。目前权限系统的自动授权功能正在开发中,开发者注册完成之后,需要发邮件到【pengzhongyang@ut.cn】申请开通权限系统的使用权限。

步骤二:对接云端接口

外部应用服务器接入指引
在对接云端接口前,开发者需要先了解个人级权限和企业级权限的区别,在对接前就需要选择好。 具体的差别请查看使用指南。
外部应用服务端开发操作指引
开发者注册参考步骤一:注册成为开发者
个人级权限调用API列表https://yapi.utcook.com/project/124/interface/api 使用您注册的开发者账号登陆即可
个人级权限swagger 访问地址 https://web.utcook.com/auth-internet/swagger-ui.html 使用您注册的开发者账号登陆即可

步骤三:接入APP、设备SDK

(1)Andriod SDK使用说明
在android studio中部署库文件 1.将libs目录下所在文件夹拷贝到工程libs目录中,如图:
2.将java目录下的文件夹拷贝到项目java路径下
3.在build.gradle文件中android下增加以下代码:
如图所示
4.最好rebuild整个项目
5.具体使用可以参考android/demo工程
 
(2)IOS SDK使用说明
在xcode中部署说明 1.将src源码目录添加到xcode工程
2.在接口调用的文件中导入头文件:uoffline_client.h,下图所示仅为示例,应用方需根据源码的路 径自行修改头文件的引用路径
3.具体使用,可以参考ios/demo工程
 
(3)设备端SDK使用说明
部署说明
1.将src源码目录下除test文件夹以外的文件添加到工程中
2.根据业务要求,修改include/umacros.h文件中的宏定义
3.在业务流程源文件中包含include/uoffdev_net.h文件
4.ios下可以参考ios/demo/xcode工程
 
(4)SDK文件下载
目前SDK处于内测阶段,想要使用SDK请发邮件到【pengzhongyang@ut.cn】申请SDK文件。
 

2.企业级权限

步骤一:注册成为开发者

在使用权限系统之前,开发者需要先注册一个平台的开发者账号,目前平台注册是基于用户中心的。
注册
打开 开发者中心,会自动跳转到用户中心登录注册页面,按指引完成用户中心的注册流程。
登陆
注册完成后,会自动登陆开发者中心。目前权限系统的自动授权功能正在开发中,开发者注册完成之后,需要发邮件到【pengzhongyang@ut.cn】申请开通权限系统的使用权限。

步骤二:对接云端接口

外部应用服务器接入指引
在对接云端接口前,开发者需要先了解个人级权限和企业级权限的区别,在对接前就需要选择好。 具体的差别请查看使用指南。
外部应用服务端开发操作指引
开发者注册参考步骤一:注册成为开发者
企业级级权限调用API列表(内核层)https://yapi.utcook.com/project/316/interface/api 使用您注册的开发者账号登陆即可  
企业级级权限调用API列表(扩展层) https://yapi.utcook.com/project/346/interface/api/cat_14095 使用您注册的开发者账号登陆即可  

步骤三:接入APP、设备SDK

(1)在android studio中部署库文件(Android)
1. 将libs目录下所在文件夹拷贝到工程libs目录中,如图:
2. 将java目录下的文件夹拷贝到项目java路径下
3. 在build.gradle文件中android下增加以下代码:
如图所示:
4. 最好rebuild整个项目
5. 具体使用可以参考android/demo工程
 
(2)在xcode中部署说明(ios)
1. 将src源码目录添加到xcode工程
2. 在接口调用的文件中导入头文件:uoffline_client.h,下图所示仅为示例,应用方需根据源码的路
径自行修改头文件的引用路径
3. 具体使用,可以参考ios/demo工程 
 

五、使用手册

1.个人级权限

(1)简介
为了满足家庭、个人用户使用的通用场景场景,在用户端只定义了三级结构(拥有者、分享者、普通用户),便于灵活的管理和授权。
场景特征:
1.使用的人员数量少,且相对固定
2.管理员接入的设备少,没有频繁管理设备的需求
 
(2)名词解释
名词说明
资源资源是一个抽象的概念,它可以代指现实中的实体设备,也可以代指虚拟的应用、资产等。
功能对应资源下的某种能力,如摄像头资源的拍照功能
规则指资源的使用范围和限制条件
权限权限由资源+功能+规则组成
权限分享用户可将自己拥有的权限设定相关规则分享给其他人
拥有者用户绑定资源后即成为拥有者。并拥有以下权限:1、拥有设备所有功能点;2、可进行权限分享;
分享者用户获得用户授权后即成为分享者。并拥有以下权限:1、拥有被分配的设备功能点;2、可进行权限分享
 
(3)角色描述
角色名称描述
拥有者用户绑定资源后即成为拥有者。并拥有以下权限:1、拥有设备所有功能点;2、可进行用户授权和使用授权;
分享者用户获得用户授权后即成为分享者。并拥有以下权限:1、拥有被分配的设备功能点;2、可进行使用授权
普通用户仅获得使用授权的用户,拥有以下权限: 1、拥有被分配的设备功能点
  
(4)角色资源权限范围
 
(5)权限功能详细描述
功能描述场景
管理权限绑定与解绑  只有应用权限超管和资源拥有者,才拥有绑定与解绑权限绑定:普通用户首次绑定资源时(该资源未有主人),普通用户即成为资源拥有者,自动获得资源拥有者的权限.解绑 : 应用权限超管和资源拥有者可以解绑资源。解绑资源后,此前与该资源有关的一切授权关系都解除  某云锁权限管理下有资源拥有者A,资源分享者B。当云锁的资源拥有者进行解绑操作后,该云锁的所有关系都被解除,不再有A资源拥有者和B资源分享者
管理权限启用与禁用资源拥有者可以对资源分享者进行授权的启用/禁用某云锁权限管理下有资源拥有者A,资源分享者B。A可以对B进行权限的启用和禁用
管理权限修改资源拥有者可以对资源分享者进行权限的修改某云锁权限管理下有资源拥有者A,资源分享者B。B拥有1、2、3功能,A可以修改B拥有的功能
管理权限删除资源拥有者可以对资源分享者机型权限的删除某云锁权限管理下有资源拥有者A,资源分享者B。A可以对B进行权限的删除
使用权限启用/禁用资源拥有者和资源分享者可以对临时使用者进行临时权限的启用/禁用。支持批量对临时权限的启用/禁用某云锁权限管理下有资源拥有者A,资源分享者B,临时使用者C。A和B可以对C进行临时权限的启用和禁用
使用权限修改资源拥有者和资源分享者可以对临时使用者进行临时权限的修改某云锁权限管理下有资源拥有者A,资源分享者B,临时使用者C。C拥有1、2、3功能,A和B可以修改C拥有的功能
使用权限删除资源拥有者和资源分享者可以对临时使用者进行临时权限的删除。支持批量对临时权限的删除某云锁权限管理下有资源拥有者A,资源分享者B,临时使用者C。A和B可以对C进行权限的删除
查询权限不同的角色可以查询相对应的信息
功能权限  功能权限是指功能权限是能够操作该资源功能的权限。优特云会提供一个API,由开发者根据自己的资源和功能,自己定义有哪些功能权限。优特云只管理资源与用户关系、用户与权限关系。  如云锁的开关;如吸顶灯的亮度
 
(6)分享权限的条件和流程
分享权限实质是用户进行授权的过程,目前分为两类:
1.用户权限分享:接收到用户权限分享的用户,称为分享者。拥有该资源的全部管理权限和部分使用权限;
2.使用权限分享:接收到使用权限分享的用户,称为普通用户。拥有该资源的部分使用权限,且有规则的限制!
 
分享使用权限可以根据以下条件进行分享,目前使用权限设定了四个条件:永久、限时、限次、循环:
永久 : 永久拥有权限,无限制使用;
限时 : 规定某个用户在某段时间使用【字段要求:生效时间/失效时间=年/月/日 时:分】;
限次 : 规定某个用户只能使用几次功能;
循环 : 规定用户在某个循环条件下使用【字段要求:周一到周日(多选);生效时间/失效时间 = 时:分;开始时间/结束时间 = 年/月/日】;
 
场景举例: 小明是云锁的资源拥有者,他请了保姆A在四月份的每周一来打扫家里的卫生,那他就可以这样设置:给保姆A授予了使用权限,且有以下限制:
1.只能在四月份的每周一使用(循环限制)
2.且每天只能使用1次(限次使用)
 
(7)使用权限的消耗逻辑
有次数限制的实例的消耗规则:
1.优先消耗最近一个准备过期的实例(按结束时间判断)
2.结束时间一致or没有设定结束时间,按授权时间判断,先进先出
 

2.企业级权限

(1)简介
与个人级权限不同的是:企业级权限是基于组织管理资源。
可以满足办公、酒店/公寓、物流、校园、企业等场景
场景特征:
1.使用的人员数量多,且人员经常改变
2.管理员接入的设备多,且需要频繁管理多台设备
 
(2)名称解释
名称解释
资源资源是一个抽象的概念,它可以代指现实中的实体设备,也可以代指虚拟的应用、资产等
功能对应资源下的某种能力,如摄像头资源的拍照功能
规则指资源的使用范围和限制条件
权限权限由资源+功能+规则组成
组织组织是由组织节点组成的;是一个具有树形结构属性的抽象概念
(3)角色
企业级权限系统中有三种角色:
开发者:负责创建组织、定义资源类型、功能
管理员:拥有组织的部分管理权限
普通用户:隶属于某个组织
 
(4)组织管理
a.组织定义:
组织对应着企业中层级明确、权责分明的部门架构,是用以满足企业主高效管理权限的需求。 组织具有严格的树形结构属性。
 
b.创建组织:
组织由开发者创建,开发者创建组织时,需定义组织信息
 
c.管理节点:
组织管理者可以管理节点,包括创建、删除、查询、修改
 
d.组织的启用、禁用
开发者可以控制组织的启用、禁用。 禁用后,开发者只能查看组织,不能操作组织
 
e.组织的删除
组织的删除只能由开发者删除
 
(5)资源类型管理
a.资源类型的定义
资源类型是一个模板的概念,用于开发者批量授。
资源类型由资源类型id,功能,传递规则,使用条件组成,同一种资源只要关联资源类型,就获得了资源类型下的功能、传递规则、使用条件的属性。
 
b.功能
功能对应资源下的某种能力,如摄像头资源的拍照功能。功能key由开发者定义。
 
c.传递规则
传递规则: 传递规则是指赋予资源传递的规则
向上传递(向上传递几层):某个组织节点向上传递规则;
向下传递(向下传递几层):某个组织节点向下传递规则。
 
d.使用条件
企业级权限目前设定了三个条件:永久、限时、循环:
永久 : 永久拥有权限,无限制使用
限时 : 规定某个用户在某段时间使用【字段要求:生效时间/失效时间=年/月/日 时:分】
循环 : 规定用户在某个循环条件下使用【字段要求:周一到周日(多选);生效时间/失效时间 = 时:分;开始时间/结束时间 = 年/月/日】
场景举例: 小明是云锁的资源拥有者,他请了保姆A在四月份的每周一来打扫家里的卫生,那他就可以这样设置:给保姆A授予了使用权限,且有以下限制:
1.只能在四月份的每周一使用(循环限制)
  
(6)资源管理
组织管理者可以管理资源,包括注册、删除、查询 资源的注册提供两种注册方式:
        - 单个注册
        - 批量注册
注册资源时,需根据资源类型来注册。
 
(7)用户管理
组织管理者可以管理用户,包括查询、绑定
a.用户的注册、删除、修改通过用户中心来完成,提供两种注册方式:
        - 单个注册
        - 批量注册
b.用户的绑定 将某个用户绑定在组织中。
  
(8)子节点管理员
a.增加子节点管理员,且一个节点可以拥有多个管理员
b.子节点管理员与开发者管理同一个资源池
c.子节点管理员权限具体如下:
  1. 开本节点锁设备(默认)
  2. 开下级节点锁设备(默认)
  3. 管理本节点锁(可配置)
  4. 管理本节点用户(可配置)
  5. 管理本节点管理员(可配置)
  6. 增删下级节点(可配置)
  7. 管理下级节点用户(可配置)
  8. 管理下级节点锁(可配置)
  9. 离线开锁权限(可配置) 
 

3.权限判断

(1)概述
权限判断指的是根据权威中心(云端的签名中心或设备端的权限文件),判断用户是否对某个资源拥有操作权限。 本章节主要阐述权限判断逻辑与流程。
(2)权限判断流程
权限判断分为两种方式,
一是在线判断,通过云服务器的鉴权,下发控制指令到设备端;
二是离线判断,通过设备端自身的鉴权,判断是否执行控制指令。
 
在判断传输过程中,运用到非对称加密算法,确保传输过程中,指令的安全性。 在加密的过程中,涉及到两对密钥,分别是:
用户密钥 : 用户离线判断流程的加密解密
设备密钥 : 用于在线判断流程的加密解密
 

4.权限同步

(1)概述
权限同步一般用于云端和离线设备权限文件版本的统一(离线设备的场景),以确保权限的一致性和有效性。
(2)权限文件
权限文件根据个人级和企业级的设备,文件里包含的内容不同 个人级权限文件当中,只存放用户信息,
(3)同步流程
在离线判断前,需要判断离线设备自身的权限文件是否为最新版本,如果非最新版,则需要更新文件。

5.权限转移

(1)概述
某些行业中,会遇到比较复杂的业务流程,其中会涉及到多次的权限转移。优特云提供了独有的用户语言服务流程定制,为复杂的业务流程,提供灵活多变的方案,满足客户需求。
实现过程:
1.客户首先需要确定自身的业务流,并且分析业务当中哪个模块是需要有权限转移;
2.优特云会根据客户的业务分析,提供对应的流程定制,进行相关的用户语言配置;
3.配置完成后,流程的节点会根据用户语言的配置,执行相对应的动作,最终实现预期效果。
 
(2)应用场景
海关锁的权限管理过程,就是一个复杂的权限转移过程,我们通过用户语言的特性,满足以下特殊的业务流程。

六、文档更新日志

日期描述
2020-03-16【创建】【权限系统使用手册 】
2020-05-06 【增加】【企业级权限 】
2020-05-22 【增加】【产品版本 】
2020-11-16【优化】【文字描述与排版】【增加】【企业级权限快速入门】

优特云