多系统

单点登录原理与简单实现

做~自己de王妃 提交于 2020-02-12 02:20:32
转: https://www.cnblogs.com/ywlaker/p/6113927.html 单系统登录机制 1、http无状态协议    web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系   但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器请求,必须鉴别浏览器请求,响应合法请求,忽略非法请求;要鉴别浏览器请求,必须清楚浏览器请求状态。既然 http协议无状态,那就让服务器和浏览器共同维护一个状态吧!这就是会话机制 2、会话机制   浏览器第一次请求服务器,服务器创建一个会话,并将会话的 id作为响应的一部分发送给浏览器,浏览器存储会话id,并在后续第二次和第三次请求中带上会话id,服务器取得请求中的会话id就知道是不是同一个用户了,这个过程用下图说明,后续请求与第一次请求产生了关联   服务器在内存中保存会话对象,浏览器怎么保存会话 id呢?你可能会想到两种方式 请求参数 cookie   将会话 id作为每一个请求的参数,服务器接收请求自然能解析参数获得会话id,并借此判断是否来自同一会话,很明显,这种方式不靠谱

多系统权限设计(一)

对着背影说爱祢 提交于 2020-02-11 06:58:17
多系统权限设计 1. 多系统基于角色的权限设计 这种方案是最常见也是比较简单的方案,不过通常有这种设计已经够了,这种方案对于每一个操作不做控制,只是在程序中根据角色对是否具有操作的权限进行控制;这里我们就不做详述 . 此处采用角色关联模块的方式。 2. 多系统基于操作的权限设计 这种模式下每一个操作都在数据库中有记录,用户是否拥有该操作的权限也在数据库中有记录,结构如下: 但是如果直接使用上面的设计,会导致数据库中的 _SysUserFuncOperate 这张表数据量非常大,所以我们需要进一步设计提高效率,请看方案 3 3. 多系统基于角色和操作的权限设计 如上图所示,我们通过采用角色分配操作的方式 ,这样子就可以减少操作权限表( _SysRoleFuncOperate ) 中的记录,并且使设计更灵活一点。 但是这种方案在用户需求的考验之下也可能显得不够灵活够用,例如当用户要求临时给某位普通员工某操作权限时,我们就需要新增加一种新的用户角色,但是这种用户角色是不必要的,因为它只是一种临时的角色,如果添加一种角色还需要在收回此普通员工权限时删除此角色,我们需要设计一种更合适的结构来满足用户对权限设置的要求。 4. 2,3 组合的权限设计,其结构如下: 我们可以看到在上图中添加了 _SysUserFunc 和 _SysUserFuncOperate 表,使用此表来添加特殊用户的权限

广州专业分乐多系统开发app

牧云@^-^@ 提交于 2019-12-02 19:28:49
  分乐多系统开发「冯生」【191﹎5743﹍0738】〔微或电〕广州专业分乐多系统开发app,分乐多系统APP开发,分乐多系统模式开发,分乐多系统软件开发,分乐多系统源码开发,分乐多系统游戏系统开发,分乐多模式APP系统开发,,分乐多模式app开发定制,分乐多APP软件系统开发费用,分乐多软件模式案例,分乐多系统源码定制开发,分乐多模式APP系统平台搭建,广州专业分乐多系统开发app。   温馨提示:------温馨提示:专业开发公司,非平台方,玩家勿扰------   进程   不共享任何状态   调度由操作系统完成   有独立的内存空间(上下文切换的时候需要保存栈、cpu寄存器、虚拟内存、以及打开的相关句柄等信息,开销大)   通讯主要通过信号传递的方式来实现(实现方式有多种,信号量、管道、事件等,通讯都需要过内核,效率低)   线程   共享变量(解决了通讯麻烦的问题,但是对于变量的访问需要加锁)   调度由操作系统完成   一个进程可以有多个线程,每个线程会共享父进程的资源(创建线程开销占用比进程小很多,可创建的数量也会很多)   通讯除了可使用进程间通讯的方式,还可以通过共享内存的方式进行通信(通过共享内存通信比通过内核要快很多)   线程的使用会给系统带来上下文切换的额外负担。   协程   调度完全由用户控制   一个线程(进程)可以有多个协程   每个线程(进程