单点登录

走进身份管理-IAM/IDaaS

落爺英雄遲暮 提交于 2019-11-28 14:13:20
IDaaS 身份即服务是随着云计算发展起来的新软件即服务。 什么是身份管理 ? IAM/IDaaS(身份访问管理/身份认证即服务),通常代表一个服务或平台,该平台可通过用户角色或权限控制,识别个体身份,进而控制其对系统资源的访问,守护个体和组织的数据。 身份管理对于企业安全很重要,通过统一登录系统可显著提高企业效率,主要从以下两个层面: 用户不需要记忆和维护不同的用户名密码; 保护公司及其用户免受数据泄露风险; 据一份 2015 年市场调研数据,数据泄露的造成的损失成本,平均为 3000 万元人民币。通过多因素身份认证、弱密码监测、大数据分析等安全技术,一个优秀的身份管理系统可以提供非常安全的的对这些资源的保护,同时还可以促进企业数据共享,提升企业效率。 身份管理解决方案可以为所有类型的企业带来显著价值。除此之外,还可以提供 B2B、B2C、B2E、IoT 不同场景下的特殊用例。 B2B:企业之间提供联合身份管理,例如允许企业使用其现有用户系统,无缝对接采购的第三方 SaaS 应用,对接供应链上下游的合作伙伴业务系统。 B2C:企业通过微信、微博、QQ、163、Github 等为消费者提供社交认证 (或其他更多第三方身份提供商)。 B2E:企业为其员工提供单点登录,简化管理,杜绝隐患; IoT:物联网设备之间的互联互通; 数字环境的发展和变化异常迅速,个人智能手机和平板电脑无处不在

在线学习平台如何实现单点登录功能?

馋奶兔 提交于 2019-11-28 07:22:22
什么是单点登录? 单点登录SSO(Single Sign On)是指在一个多系统共存的环境下,用户在一个系统登录后,就不需用在其他系统中登录,也就是用户的一次登录能得到其他所有系统的信任。 单点登录的好处? 1、提高工作效率:提高员工工作效率,简化应用系统操作过程。避免了记忆多个用户名、密码,增强了用户体验。。 2、增加安全性:强大的身份认证,规避密码安全风险,增加信息系统安全性。 3、降低管理成本: 单点登录统一了身份认证和机制,减少了系统维护人员的工作。 在线学习平台如何实现单点登录功能? 单点登录学习允许用户学员直接在在线 学习平台 上点击就开始学习, 不再需要额外的身份认证, 接口如下: 请求 GET https://www.hzxue.com/api/do/s/login 请求数据 token=权限码&loginValue=登录字段的值&password=密码&coid=课程ID token 每个账户唯一对应的验证码,string类型,该值可联系好智学获取 loginValue 表示的是学员的登录值,比如说系统设置了使用手机登录,那么这里就是学员的手机号码。 password 学员的密码,如果有的话;如果学员没有的话,这里留空 coid 学员要做的课程ID 登录成功后,在线学习平台会自动跳转到学习界面,且不需要再执行身份验证 来源: https://blog.csdn

单点登录的原理

时光总嘲笑我的痴心妄想 提交于 2019-11-28 07:05:48
一、单点登录的概念 1、什么是单点登陆 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 2、单点登录的引入 较大的企业内部,一般都有很多的业务支持系统为其提供相应的管理和IT服 务。 例如: 财务系统为财务人员提供财务的管理、计算和报表服务; 人事系统为人事部门提供全公司人员的维护服务; 各种业务系统为公司内部不同的业务提供不同的 服务等等。 这些系统的目的都是让计算机来进行复杂繁琐的计算工作,来替代人力的手工劳动,提高工作效率和质量。 这些不同的系统往往是在不同的时期建设起来 的,运行在不同的平台上;也许是由不同厂商开发,使用了各种不同的技术和标准。 如果举例说国内一著名的IT公司(名字隐去),内部共有60多个业务系统,这些系统包括两个不同版本的SAP的ERP系统,12个不同类型和版本的数据库系统,8个不同类型和版本的操作系统,以及使用了3种不同的防火墙技术,还有数十种互相不能兼容的协议和标准,这种情况其实非常普遍。每一个应用系统在运行了数年以后,都会成为不可替换的企业IT架构的一部分,如下图所示。 随 着企业的发展,业务系统的数量在不断的增加,老的系统却不能轻易的替换,这会带来很多的开销。其一是管理上的开销,需要维护的系统越来越多。

cas单点登录

允我心安 提交于 2019-11-28 06:42:36
上面是一张SSO登录原理图,下面我们来分析一下具体的流程: 首先用户访问系统1受保护的资源,系统1发现未登陆,跳转至SSO认证中心,并将自己的参数传递过去 SSO认证中心发现用户未登录,将用户引导至登录页面 用户输入用户名和密码提交至SSO认证中心 SSO认证中心校验用户信息,创建用户与SSO认证中心之间的会话,称为全局会话,同时创建授权令牌 SSO认证中心带着令牌跳转会最初的请求地址(系统1) 系统1拿到令牌,去SSO认证中心校验令牌是否有效 SSO认证中心校验令牌,返回有效,注册系统1的地址 系统1使用该令牌创建与用户的会话,称为局部会话,返回给用户受保护资源 用户访问系统2受保护的资源 系统2发现用户未登录,跳转至SSO认证中心,并将自己的地址作为参数传递过去 SSO认证中心发现用户已登录,跳转回系统2的地址,并附上令牌 系统2拿到令牌,去SSO认证中心校验令牌是否有效 SSO认证中心校验令牌,返回有效,注册系统2地址 系统2使用该令牌创建与用户的局部会话,返回给用户受保护资源 用户登录成功之后,会与SSO认证中心及各个子系统建立会话,用户与SSO认证中心建立的会话称为全局会话,用户与各个子系统建立的会话称为局部会话,局部会话建立之后,用户访问子系统受保护资源将不再通过SSO认证中心,全局会话与局部会话有如下约束关系: 局部会话存在,全局会话一定存在 全局会话存在

CAS实现SSO单点登录原理

时光总嘲笑我的痴心妄想 提交于 2019-11-28 05:39:39
1. CAS 简介 1.1. What is CAS ? CAS ( Central Authentication Service ) 是 Yale 大学发起的一个企业级的、开源的项目,旨在为 Web 应用系统提供一种可靠的单点登录解决方法(属于 Web SSO )。 CAS 开始于 2001 年, 并在 2004 年 12 月正式成为 JA-SIG 的一个项目。 1.2. 主要特性 1、 开源的、多协议的 SSO 解决方案; Protocols : Custom Protocol 、 CAS 、 OAuth 、 OpenID 、 RESTful API 、 SAML1.1 、 SAML2.0 等。 2、 支持多种认证机制: Active Directory 、 JAAS 、 JDBC 、 LDAP 、 X.509 Certificates 等; 3、 安全策略:使用票据( Ticket )来实现支持的认证协议; 4、 支持授权:可以决定哪些服务可以请求和验证服务票据( Service Ticket ); 5、 提供高可用性:通过把认证过的状态数据存储在 TicketRegistry 组件中,这些组件有很多支持分布式环境的实现, 如: BerkleyDB 、 Default 、 EhcacheTicketRegistry 、 JDBCTicketRegistry 、 JBOSS

分布式系统统一登录模块设计

不问归期 提交于 2019-11-28 04:22:37
维基百科对于单点登录的定义: 单点登录(英语:Single sign-on,缩写为 SSO),又译为单一签入,一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性。当拥有这项属性时,当用户登录时,就可以获取所有系统的访问权限,不用对每个单一系统都逐一登录。这项功能通常是以轻型目录访问协议(LDAP)来实现,在服务器上会将用户信息存储到LDAP数据库中。相同的,单一退出(single sign-off)就是指,只需要单一的退出动作,就可以结束对于多个系统的访问权限。 web 工程在做系统登录的时候一般会把登录请求交给 controller 处理,根据用户传递过来的用户名和密码作为查询条件去数据库中查询对应信息,如果数据符合要求,就会把用户信息放到 session 中维持会话(由于 HTTP 的无状态性)。用户在进行一些需要登录才允许的操作时,系统会到 session 中进行判断用户是否登录。 如果业务量大了,一台服务器不能满足需求,需要扩容,那么不同的服务器是需要共享 session 的,不然每台服务器都维护各自不同的 session,可能会导致因为反向代理处理负载均衡导致的重复登录问题,用户体验不好。 但是如果只是简单的使用广播对每台服务器上的 session 进行同步的话,比较耗费资源,性能也不好。 于是做一个单点登录系统来专门处理这个事情就很有意义了。将

SSO单点登录、跨域重定向、跨域设置Cookie、京东单点登录实例分析

自古美人都是妖i 提交于 2019-11-27 20:42:27
最近在研究SSO单点登录技术,其中有一种就是通过js的跨域设置cookie来达到单点登录目的的,下面就已京东商城为例来解释下跨域设置cookie的过程 涉及的关键知识点: 1、 jQuery ajax跨域重定向,要理ajax解跨域重定向,先要了解浏览器对重定向的处理。正常我们请求一个地址,如果server返回302,那么浏览器会再发起 一次重定向后的http请求;用jquery ajax发起一次异步请求,server返回302,如果重定后url的域名跟ajax请求的域名是同一个域名的话,浏览器会再发起一次重定向后的 http请求,请求成功会调用ajax的success函数,如果重定向后url的域名跟ajax请求的域名不是同一个域名,也就是跨域重定向(跨域 redirect),这个时候浏览器看到返回的response的Location跨域了就不会再发起请求,请求被拦截了,ajax请求失败会调用 error方法 那么如果我们非要做跨域重定向呢?这也是可以实现的,普通的ajax请求不行,我们需要 通过jsonp的方式,而且需要设置crossDomain:true,可以参考https://api.jquery.com/jQuery.ajax / 关于jquery.ajax方法的crossDomain 参数的说明 跨域redirect实例: test.html [html] view

sso单点登录系统

南笙酒味 提交于 2019-11-27 09:26:27
说明: 本文知识网摘,仅限自己加深学习, 原文出处点击 一、准备   1、了解http请求及特点   2、了解cookie和session   3、了解用户登录和注销流程 二、单机用户登录流程 总体流程图实现: 1、http无状态协议 web应用采用browser/server架构,http作为通信协议。http是无状态协议,浏览器的每一次请求,服务器会独立处理,不与之前或之后的请求产生关联,这个过程用下图说明,三次请求/响应对之间没有任何联系 但这也同时意味着,任何用户都能通过浏览器访问服务器资源,如果想保护服务器的某些资源,必须限制浏览器请求;要限制浏览器请求,必须鉴别浏览器请求,响应合法请求,忽略非法请求;要鉴别浏览器请求,必须清楚浏览器请求状态。既然http协议无状态,那就让服务器和浏览器共同维护一个状态吧!这就是会话机制 2、会话机制 浏览器第一次请求服务器,服务器创建一个会话,并将会话的id作为响应的一部分发送给浏览器,浏览器存储会话id,并在后续第二次和第三次请求中带上会话id,服务器取得请求中的会话id就知道是不是同一个用户了,这个过程用下图说明,后续请求与第一次请求产生了关联 服务器在内存中保存会话对象,浏览器怎么保存会话id呢?你可能会想到两种方式 请求参数 cookie 将会话id作为每一个请求的参数,服务器接收请求自然能解析参数获得会话id