首页 > 其他分享 >登录认证的方式

登录认证的方式

时间:2024-03-31 18:03:55浏览次数:24  
标签:用户名 登录 方式 Auth 认证 Token Cookie 服务端 客户端

1.1 HTTP Basic Auth

HTTP Basic Auth:是每次请求API时都提供用户的username和password。 简言之,Basic Auth是配合RESTful API 使用的最简单的认证方式,只需提供用户名密码即可,但由于有把用户名密码暴露给第三方客户端的风险,在生产环境下被使用的越来越少。因此,在开发对外开放的RESTful API时,尽量避免采用HTTP Basic Auth

1.2 Cookie Auth

Cookie认证机制:为一次请求认证在服务端创建一个Session对象,同时在客户端的浏览器端创建了一个Cookie对象;通过客户端带上来Cookie对象来与服务器端的session对象匹配来实现状态管理的。默认的,当我们关闭浏览器的时候,cookie会被删除。但可以通过修改cookie 的expire time使cookie在一定时间内有效。

1.3 OAuth

OAuth(开放授权):一个开放的授权标准,允许用户让第三方应用访问该用户在某一web服务上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。 OAuth允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的第三方系统(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内访问特定的资源(例如仅仅是某一相册中的视频)。这样,OAuth让用户可以授权第三方网站访问他们存储在另外服务提供者的某些特定信息,而非所有内容。

1.4 Token Auth

使用基于 Token 的身份验证方法,在服务端不需要存储用户的登录记录。大概的流程是这样的:

客户端使用用户名跟密码请求登录

服务端收到请求,去验证用户名与密码

验证成功后,服务端会签发一个 Token,再把这个 Token 发送给客户端

客户端收到 Token 以后可以把它存储起来,比如放在 Cookie 里

客户端每次向服务端请求资源的时候需要带着服务端签发的 Token

服务端收到请求,然后去验证客户端请求里面带着的 Token,如果验证成功,就向客户端返回请求的数据

标签:用户名,登录,方式,Auth,认证,Token,Cookie,服务端,客户端
From: https://blog.csdn.net/qq_45212655/article/details/137185613

相关文章

  • Java多线程三种实现方式
    一、继承Thread方法publicclassMyThreadextendsThread{@Overridepublicvoidrun(){for(inti=0;i<10;i++){System.out.println(getName()+"输出内容");}}publicstaticvoidmain(String[]args){......
  • linux ssh配置radius认证
    使用pam_radius实现1、下载及安装Pam_radius2、修改ssh配置以及ssh服务的pam文件3、搭建radius服务器下载及安装Pam_radius1、安装依赖sudoyuminstallgccpampam-develmake-y2、前往freeradius网站下载pam_radius,链接如下https://freeradius.org/sub_projects/3、......
  • SpringAOP增强-几种不同将注解和切面方法的关联方式
    @Around的作用既可以在目标方法之前织入增强动作,也可以在执行目标方法之后织入增强动作;可以决定目标方法在什么时候执行,如何执行,甚至可以完全阻止目标目标方法的执行;可以改变执行目标方法的参数值,也可以改变执行目标方法之后的返回值;当需要改变目标方法的返回值时,只能使用Aro......
  • pyautocad 命令行方式操作 CAD
    测试代码importnumpyasnpfrompyautocadimportAutocad,aDouble,APointdef计算距离():acad=Autocad(create_if_not_exists=True)acad.prompt("计算2点间距离")acad.prompt("请选择第1个点")第1个点=acad.doc.Utility.GetPoint()x1,y1......
  • .Net 对象与对象之间的映射转换的6中方式以及性能对比
    我们在.Net开发的过程中,经常会遇到一个实体对象与另一个实体对象之间的映射转换,接下来我们将依次去实现6个对象间映射转换的方式,并对他们进行性能测试,找出其中效率最高的方式。通过对象Copy,通过new一个新的实体对象通过手动赋值的方式实现publicclassObjectCopyMapper{......
  • Bat中cd到中文路径报错以及windows上设置快捷方式延迟启动执行
    场景要实现在windows启动目录下,执行bat脚本文件。脚本文件中需要进入某个中文目录所以直接cd/dD:\test\中文路径starttest.bat此时会提示: 此时需要指定bat的编码方式,修改bat脚本文件,添加如下chcp65001cd/dD:\test\中文路径starttest.bat则中文路径不再报错。......
  • C# OAuth具体例子实现单点登录
    原理单点登录(SingleSign-On,简称SSO)是一种身份验证技术,它允许用户使用一组凭据(如用户名和密码)登录多个相关但独立的系统,而无需在每个系统中都进行登录操作。下面是一个简单的SSO实现示例: 假设我们有两个应用程序:AppA和AppB。这两个应用程序都信任同一个身份验证服务(Ident......
  • C#网站系统如何监控登录过期
    网站系统监控登录过期通常涉及多个层面的技术和策略。以下是一些建议的方法来实现这一功能:会话管理:会话超时设置:为每个用户会话设置一个超时时间。一旦用户在这个时间段内没有与系统进行任何交互,会话将被视为过期,用户需要重新登录。会话令牌(Token):使用令牌来管理用户的登录状......
  • 在python中通过面向对象方式,实现烤地瓜案例
    例子:烤地瓜,不同时间,反馈不同状态,并给不同状态地瓜加入不同味道烤地瓜时间0-3分钟,生的4-7分钟,半生不熟的8-12分钟,熟了12分钟以上,已烤熟,糊了用户可以按自己的意思添加调料烤地瓜类:SweetPotato时间:cooktime状态:Cookstate调料:condiments代码实现:classSweetPot......
  • C#实现窗体弹出的三种方式(附完整源码)
    C#实现窗体弹出的三种方式以下是C#实现窗体弹出的三种方式的完整源码:使用Show方法弹出窗体:usingSystem;usingSystem.Windows.Forms;namespaceWindowsFormsApp1{publicpartialclassForm1:Form{publicForm1(){......