首页 > 其他分享 >(符合公司开发文档的)开发大佬说的单点登录的思想

(符合公司开发文档的)开发大佬说的单点登录的思想

时间:2023-02-25 11:34:57浏览次数:40  
标签:单点 登录 第九步 接口 认证 token 开发 文档 页面

开发大佬说的单点登录的思想

总的单点登录的思想:

1。你判断看到当前用户没有登录,就跳转到对方的认证登录页面,让用户登录
2、登录成功后,对方的认证服务器会回调你这边提供的一个接口(就是跳转过去的redict_url,你自己定义的,定义好就写在那个参数上面,人家会根据这个接口告诉你),告诉你一个code或者token
 3、当你通过自己的新增的接口拿到code或者token后,再利用这个code或者token去认证服务器拿到用户信息,当你拿到用户信息了,就代表成功登录了,之后的逻辑 就和你以前原来的登录后拿到用户信息 一样。就是这个

下面这个图就是第三步

 

 

 

 

 

 

1.总的流程图

 

 

 

 1.第一问,这个请求在图中的哪个步骤

 

第一问的解答:属于图中的第二个步骤,然后是由我们自己前端或者后端发送的,这个就是对方的地址,你要重定向过去,一般来说,后端重定向;

那后端什么时候重定向呢?答:判断请求有没有登陆,没有登录的话就重定向过去,就相当于,没有登陆,你会跳到你自己的登录页面,只不过现在不跳自己的页面了,跳去对方的。

 

第二问:这个第一步怎么访问法

 

 

 答:浏览器,就是输入你项目的地址,如果没有登录,是不是要跳去登录页面,这个登录页面本来就是你平时开发的那个,但是现在不要这个了,用对方的来替代。

http://sso.tellhow.com/oauth/authorize?client_id=SSO&response_type=code&redirect_uri=http://127.0.0.1:8899/paraOsc/index&state=SSO-LOGIN

这个就相当于对方提供的接口,返回值就是通过回调redirecturl,是用户点击你的应用,你重定向到这个地址,没登录就发送。

重定向到哪里的? 答:这个就是你项目的一个接口,他调用这个接口(redirect_uri=http://127.0.0.1:8899/paraOsc/index&state=SSO-LOGIN),这个接口你需要自己开发,参数都给你定义好了。

第三问:重定向是哪个步骤

 

答:第六步。

第四问:后端写代码发送 还是前端写代码发送

 

答:步骤7  我圈红的这个得我自己发送对吧,对,后端发送,http请求,后面的步骤不用看了,一般去到7就可以,789都是一样的,他这里有点多余,看你现在文档的步骤

 

就是第8步

 

 

 

第五问:第八步应该不是我发送的吧

 

答:应该说就是第7步,实线都是你调用,虚线是返回

第六问:他第九步咋没写,没写 文档

 

答:不需要这一步了,不需要这一步?不需要第九步的话 拿我拿到的token有啥用?我不得带着token去请求我的应用吗  我的应用判断有token说明已经登录了?就可以访问,你为啥说不需要第九步? 答:就看你的文档有没有这一步,

 

 

 

 

只有第九步有,只有第九步是checktoken请求的。

答:那就有第九步

 

答:是不是大概流程就是那样子,但是我这边开发接口的话  对方是不是也得开发对应的接口,不然无法接受我的请求,就他们的认证平台,答:对,他们早就开发好了,他们就是认证服务器啊。

密码验证去掉,但是判断有没有登录,这个保留,没有登录就和原来的一样,让前端跳转到登录页面,但是这个登录页面不是原来你项目的登录页面,是认证中心的那个url

第七问:怎么判断他有没有登录的?

 

 

答:这个方法。你的项目用的是auth2.0,认证那边也是,所以我觉得你项目的auth2..0可以直接不要了,重新写代码接入对方的认证服务。为了跳转到登录页面,输入密码登录,就是重新写登录验证,就当这个项目还没有做登录接口。

 

记得需要知道谁是认证中心,确定好角色再开发

 

标签:单点,登录,第九步,接口,认证,token,开发,文档,页面
From: https://www.cnblogs.com/rapper-start/p/17154040.html

相关文章

  • Java统计List中每个元素出现的次数、用java实现生成或显示文件的一些数字、微信小程序
    Java统计List中每个元素出现的次数intcountA=Collections.frequency(list,“a”);Collections.frequency(list,key)importjava.util.ArrayList;importjava.util.Coll......
  • 6_代理模式下开发各种功能-1_多种参数传递问题
     1单个基本数据类型2多个基本数据类型3单个引用数据类型4map集合数据类型5多个引用数据类型接口packagecom.msb.mapper;importcom.msb.pojo.Emp;importorg.apache.ibati......
  • 6_代理模式下开发各种功能-1_多种参数传递问题
     1单个基本数据类型2多个基本数据类型3单个引用数据类型4map集合数据类型5多个引用数据类型接口packagecom.msb.mapper;importcom.msb.pojo.Emp;importorg.apache.ibati......
  • 6_代理模式下开发各种功能-1_多种参数传递问题
    ​ 1单个基本数据类型2多个基本数据类型3单个引用数据类型4map集合数据类型5多个引用数据类型接口packagecom.msb.mapper;importcom.msb.pojo.Emp;importorg......
  • 6_代理模式下开发各种功能-1_多种参数传递问题
    ​ 1单个基本数据类型2多个基本数据类型3单个引用数据类型4map集合数据类型5多个引用数据类型接口packagecom.msb.mapper;importcom.msb.pojo.Emp;importorg......
  • 一图揭秘为什么开发者都偏好华为云CodeArts IDE Online?
    华为云开发者桌面服务CodeArtsIDEOnline,提供了可随时随地编码的云上开发环境,同时具备开放的生态和独立插件市场,旨在为开发者提供环境快速获取、功能开箱即用、跨越计算架......
  • chatgpt api文档
    前提:要有chatgpt账号,不会注册的关注抖音:21402780125,有免费教程!!以下是OpenAIAPI中ChatGPT的主要文档内容:认证和授权您需要注册OpenAIAPI的账号并获得访问密钥......
  • UNI——APP开发
    今天我们开启心得学习之路,有关于APP开发的相关知识,是在一个名为hbuilderX的软件上面进行开发,可以开发h5程序,微信小程序,以及适配与安卓的APP。首先关于APP的安装很简......
  • Java的安装开发环境
    Java的安装开发环境卸载JDK删除Java的安装目录删除JAVA_HOME删除path下关于Java的目录查看Java-version安装JDK搜索JDK11,找到下载地址同意协议......
  • 如何联系开发人员职位发布
    当您正在寻找新的开发人员工作时,请直接与真实的人交谈。许多开发人员犯了仅仅提交一百万个在线申请的错误。他们在网站上填写表格,点击提交,然后祈祷。不幸的是,这些应用程......