权限设计

  1. user
  2. merchant
  3. admin

数据库获取用户信息

  • 返回给用户一份VO1

  • 存入session一份VO2

  • VO1 !=VO2

    主要区别是userRole:

    • VO1.userRole=user(这一部分也不会返回给用户)

    • VO1.userRole=YURoleuser(存入内存,数据库也是这部分)

普通权限:

*非核心

普通用户业务范围

  • 修改密码 *
  • 查看未购api信息
  • 购买api及次数
  • 退出登录 *

付费用户业务范围

  • 修改密码 *

  • 购买api及次数

  • 退出登录 *

  • 查看未购买api信息

  • 查看已购买api信息(包括剩余次数等)

  • 每天限制次数限制频率的调用测试

  • 调用api (不需要登录,使用ak,sk,sign)

    • 购买包月限制频率
    • 购买包次数不限制频率

商家业务范围:

  • 发布自己的api (让别人看到自己api)
  • 上线自己的api (让别人能够购买自己的api)
  • 下线自己的api (只能看到,不能购买)
  • 查看自己的api
  • 看到都有哪些人购买了自己的哪些api

注册添加普通权限 √

登录像session中添加权限;√

用户变老板 √

  • 添加过角色之后一定要更新session,否则可以重复添加√

用户变成VIP

VIP变成用户

【api】添加了权限管理的一部分相关推荐

  1. Expo大作战(三十)--expo sdk api之Permissions(权限管理模块),Pedometer(计步器api)

    简要:本系列文章讲会对expo进行全面的介绍,本人从2017年6月份接触expo以来,对expo的研究断断续续,一路走来将近10个月,废话不多说,接下来你看到内容,讲全部来与官网 我猜去全部机翻+个人 ...

  2. 用户权限管理:最常用的架构模型介绍

    本文由作者 Dennis_ 发布于社区 近期PMCAFF有好几个帖子都在问权限如何管理,给大家分享下吧. 1. 角色权限管理 说起用户权限管理,绕不开 RBAC模型, 直接上图: RBAC(Role- ...

  3. Android 6.0: 动态权限管理的解决方案

    Android 6.0版本(Api 23)推出了很多新的特性, 大幅提升了用户体验, 同时也为程序员带来新的负担. 动态权限管理就是这样, 一方面让用户更加容易的控制自己的隐私, 一方面需要重新适配应 ...

  4. Linux 账号和权限管理(上)

    目录 前言 管理用户和主账号 用户和组账号概述 用户账号管理 用户账号文件 文件/etc/shadow 文件/etc/shadow 添加用户账号 useradd 设置/更改用户口令 passwd 修改 ...

  5. odoo权限管理详解

    前言: odoo作为ERP框架,必然有不同角色的用户使用这同一系统.对于系统上面的数据,应该对不同角色设置不同的查阅修改权限.odoo框架自带了了比较完善的权限控制机制.这篇博客的实践基于odoo13 ...

  6. 鸿蒙应用权限管理和访问控制

    鸿蒙系统权限主要解决两个方面的问题 1.应用或服务进程间权限访问的管理 采用的是基于ATM的VerifyPermission,所有接口均为内部接口,仅提供底层能力,不对开发者开放.鉴权过程中直接调用V ...

  7. kubernetes API Server 权限管理实践

    2019独角兽企业重金招聘Python工程师标准>>> kubernetes API Server 权限管理实践 API Server权限控制方式介绍 API Server权限控制分 ...

  8. Golang Beego使用Casbin进行Restful Api权限管理教程

    Beego使用Casbin进行权限管理(MySQL)入门 前言 网上关于Casbin的教程都比较麻烦,上手难度大,此篇仅供初学者学习,主要是将晦涩难懂的原理简单化,下面将分为8个知识点来应用Casbi ...

  9. Android应用生死轮回的那些事儿(3) - 武器库(1)-权限管理相关API

    Android应用生死轮回的那些事儿(3) - 武器库(1)-权限管理相关API PackageManager中提供的武器,可以用"既多又杂,版本变化大"来形容. 不过,我们通过分 ...

最新文章

  1. Objective-C:GCC+GNUstep配置
  2. SUN JAVA面试笔试题
  3. 元素随着滚动条滚动而滚动,但是到浏览器窗口顶部的距离是固定的功能代码...
  4. SQLServer、Mysql、Oracle 创建、删除用户和授予用户权限
  5. gradle打包java项目_gradle打包java项目
  6. delphi 调用浏览器内核_HFL:基于混合模糊测试的Linux内核漏洞挖掘
  7. mysql8安装目录linux7.5_Linux系统下 MySQL 5.7和8.0 版本安装指南
  8. web语义化方便了谁?
  9. 使用 StatsD + InfluxDB + Grafana 搭建 Node.js 监控系统 (二)
  10. 超全超详细的HTTP状态码大全
  11. 基于 webdriver 的测试代码日常调试方python 篇
  12. Ubuntu 14.04 下每次重启系统都默认最大亮度的解决办法
  13. oracle 同义词_详解Oracle视图V$、GV$、X$、V_$、GV_$之间的关系
  14. ubuntun安装扫描仪
  15. 通信专业顶刊_通信方面的期刊_信息与通信工程期刊排行顶级的_通信技术
  16. JavaWeb 注解
  17. C# 压缩和修复Access数据库
  18. 海思Hi3518E MPP学习_02视频输入(VI模块)
  19. 【JDBC上篇】什么是JDBC
  20. 彻底删除Win7任务栏通知区域已卸载程序图标

热门文章

  1. Gitlab如何创建项目和添加成员
  2. 【ARM汇编】stmfd sp!, {r0-r3, lr}
  3. 云计算赛项-私有云skywalking服务部署与应用
  4. 传奇人物《周兴和》书连载23 劳燕分飞离故里
  5. MTK6735 竖屏横用、旋转90度、MTK_LCM_PHYSICAL_ROTATION
  6. sqlmap注入——POST检测点方法
  7. ZSTU2019校赛 Problem D Lis(线性基dp)
  8. WordBias | 可视化文本中的偏见(刻板印象)
  9. 西门子S71200连接多功能电表
  10. AD2020库安装及查找库