单点登录SSO的含义

2024-06-03 22:20
文章标签 登录 单点 含义 sso

本文主要是介绍单点登录SSO的含义,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

SSO 概念

SSO 服务

SSO 令牌

SSO 流程

SSO 实现类型


SSO 概念

  • SSO英文全称Single Sign On,单点登录,是一种身份验证解决方案
  • 是一种对于许多相互关连,但是又是各自独立的软件系统,提供访问控制的属性
  • SSO是指在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统
  • 一旦验证身份,用户就可以访问所有受密码保护的资源,而无需重复登录
  • SSO 解决方案中的重要组件如下所示:

SSO 服务

  • SSO 服务是用户登录时应用程序依赖的中心服务
  • 如果未经身份验证的用户请求访问应用程序,应用程序会将他们重定向到 SSO 服务
  • 然后,该服务对用户进行身份验证并将用户重定向回原始应用程序
  • 该服务通常在专用的 SSO 策略服务器上运行

SSO 令牌

  • SSO 令牌是包含用户识别信息的数字文件,例如用户名或电子邮件地址
  • 当用户请求访问应用程序时,应用程序会与 SSO 服务交换 SSO 令牌以对用户进行身份验证

SSO 流程

  • 1-当用户登录应用程序时,应用程序会生成 SSO 令牌并向 SSO 服务发送身份验证请求
  • 2-该服务会检查用户之前是否在系统中进行了身份验证;如果是,它会向应用程序发送一个身份验证确认响应,以授予用户访问权限
  • 3-如果用户没有经过验证的凭证,SSO 服务会将用户重定向到中央登录系统并提示用户提交其用户名和密码
  • 4-提交后,服务会验证用户凭证并将肯定响应发送到应用程序
  • 5-否则,用户会收到错误消息并且必须重新输入凭证;多次尝试登录失败可能会导致服务阻止用户在固定的时间段内进行更多尝试

SSO 实现类型

  • SSO 解决方案使用不同的标准和协议来对用户凭证进行验证和身份验证
  • 1-SAML
  • SAML(或安全断言标记语言)是应用程序用来与 SSO 服务交换身份验证信息的协议或规则集
  • SAML 使用 XML(一种浏览器友好的标记语言)来交换用户标识数据
  • 基于 SAML 的 SSO 服务提供更好的安全性和灵活性,因为应用程序不需要在其系统上存储用户凭证
  • 2-OAuth
  • OAuth(或开放授权)是一种开放标准,它允许应用程序安全地从其他网站获取用户信息,而无需提供密码
  • 应用程序不是请求用户密码,而是使用 OAuth 来获得用户访问受密码保护的数据的权限
  • OAuth 通过 API 建立应用程序之间的信任,允许应用程序在已建立的框架中发送和响应身份验证请求
  • 3-OIDC
  • OpenID 是使用一组用户凭证访问多个站点的方法
  • 它允许服务提供商承担验证用户凭证的角色
  • Web 应用程序不是将身份验证令牌传递给第三方身份提供商,而是使用 OIDC 来请求附加信息并验证用户的真实性
  • 4-Kerberos
  • Kerberos 是一种基于票证的身份验证系统,可让两方或多方在网络上相互验证其身份
  • 它使用安全密码学来防止未经授权访问在服务器、客户端和密钥分发中心之间传输的标识信息

这篇关于单点登录SSO的含义的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1028272

相关文章

90%的人第一步就错了! 顺利登录wifi路由器后台的技巧

《90%的人第一步就错了!顺利登录wifi路由器后台的技巧》登录Wi-Fi路由器,其实就是进入它的后台管理页面,很多朋友不知道该怎么进入路由器后台设置,感兴趣的朋友可以花3分钟了解一下... 你是不是也遇到过这种情况:家里网速突然变慢、想改WiFi密码却不知道从哪进路由器、新装宽带后完全不知道怎么设置?别慌

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

Spring Security重写AuthenticationManager实现账号密码登录或者手机号码登录

《SpringSecurity重写AuthenticationManager实现账号密码登录或者手机号码登录》本文主要介绍了SpringSecurity重写AuthenticationManage... 目录一、创建自定义认证提供者CustomAuthenticationProvider二、创建认证业务Us

Springboot项目登录校验功能实现

《Springboot项目登录校验功能实现》本文介绍了Web登录校验的重要性,对比了Cookie、Session和JWT三种会话技术,分析其优缺点,并讲解了过滤器与拦截器的统一拦截方案,推荐使用JWT... 目录引言一、登录校验的基本概念二、HTTP协议的无状态性三、会话跟android踪技术1. Cook

使用Redis快速实现共享Session登录的详细步骤

《使用Redis快速实现共享Session登录的详细步骤》在Web开发中,Session通常用于存储用户的会话信息,允许用户在多个页面之间保持登录状态,Redis是一个开源的高性能键值数据库,广泛用于... 目录前言实现原理:步骤:使用Redis实现共享Session登录1. 引入Redis依赖2. 配置R

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、

Ubuntu 24.04启用root图形登录的操作流程

《Ubuntu24.04启用root图形登录的操作流程》Ubuntu默认禁用root账户的图形与SSH登录,这是为了安全,但在某些场景你可能需要直接用root登录GNOME桌面,本文以Ubuntu2... 目录一、前言二、准备工作三、设置 root 密码四、启用图形界面 root 登录1. 修改 GDM 配

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

CSS3打造的现代交互式登录界面详细实现过程

《CSS3打造的现代交互式登录界面详细实现过程》本文介绍CSS3和jQuery在登录界面设计中的应用,涵盖动画、选择器、自定义字体及盒模型技术,提升界面美观与交互性,同时优化性能和可访问性,感兴趣的朋... 目录1. css3用户登录界面设计概述1.1 用户界面设计的重要性1.2 CSS3的新特性与优势1.

Java中Map.Entry()含义及方法使用代码

《Java中Map.Entry()含义及方法使用代码》:本文主要介绍Java中Map.Entry()含义及方法使用的相关资料,Map.Entry是Java中Map的静态内部接口,用于表示键值对,其... 目录前言 Map.Entry作用核心方法常见使用场景1. 遍历 Map 的所有键值对2. 直接修改 Ma