最近在学习web api authentication,以Jwt为例,

可以这样理解,token是身份证,用户名和密码是户口本,

身份证:有有效期(jwt 有过期时间),且携带方便(自己带有所有信息 self contained),

户口本:不会过期(用户名和密码什么时候都有用),携带不方便(用户名和密码从数据库验证),

jwt同样也有身份证的缺点,丢了别人有些地方可以用,户口本改名字了,身份证还可以用(同样,用户名和密码修改后jwt不修改)。

针对身份证的缺点,可以设置较短过期时间,另外token auth做了改进,加入了refresh token的概念。

token验证这次就不再介绍了,这个东西网上比较多,token可以自定义,也可以使用一些标准的token如Json web token。

什么是refresh token

  使用refresh token的目的是:处理access token 时间过期问题。

如果每次都申请access token,太麻烦了,就加入refresh token的概念。

如果access token过期可以使用refresh token更新access token,而且refresh token也改变了,这点很重要。

另外access token的内容也改变了,解决了户口本改名字,身份证名字没改的问题。

refresh token每次改变这个很重要,意味着每次refresh后原来的token不能用了。

另外一个优点,就是不用在客户端存储用户名和密码。

理解refresh token

首先要理解client,什么是client,或者说client 的唯一clientID怎么获取,调用web api的client可以是web ,mobile和其他客户端。

web应用调用web api 使用js调用,其他的服务端知道的client都可以自己写代码生成唯一的clientID,我们可以加密传递的东西,而js调用api没法加密。

因此client可以分为两类js调用的和其他的客户端调用。

转载于:https://www.cnblogs.com/wxlevel/p/6019306.html

web api authentication相关推荐

  1. asp.net Web API 身份验证 不记名令牌验证 Bearer Token Authentication 简单实现

    1. Startup.Auth.cs文件 添加属性 1 public static OAuthBearerAuthenticationOptions OAuthBearerOptions { get; ...

  2. Web APi之认证(Authentication)两种实现方式【二】(十三)

    前言 上一节我们详细讲解了认证及其基本信息,这一节我们通过两种不同方式来实现认证,并且分析如何合理的利用这两种方式,文中涉及到的基础知识,请参看上一篇文中,就不再叙述废话. 序言 对于所谓的认证说到底 ...

  3. 创建包含CRUD操作的Web API接口-第一部

    在这里,我们将创建一个新的Web API项目,它将使用实体框架实现Get,POST.PUT和DELETE方法来实现CRUD操作. 首先,在Visual Studio 2013 for Web expr ...

  4. Web APi之过滤器执行过程原理解析【二】(十一)

    前言 上一节我们详细讲解了过滤器的创建过程以及粗略的介绍了五种过滤器,用此五种过滤器对实现对执行Action方法各个时期的拦截非常重要.这一节我们简单将讲述在Action方法上.控制器上.全局上以及授 ...

  5. jwt token长度限制_ASP.NET Core Web Api之JWT(一)

    最近沉寂了一段,主要是上半年相当于休息和调整了一段时间,接下来我将开始陆续学习一些新的技能,比如Docker.Jenkins等,都会以生活实例从零开始讲解起,到时一并和大家分享和交流.接下来几节课的内 ...

  6. Web API 简单示例

    一.RESTful和Web API Representational State Transfer (REST) is a software architecture style consisting ...

  7. 【ASP.NET Web API教程】5.5 ASP.NET Web API中的HTTP Cookie

    5.5 HTTP Cookies in ASP.NET Web API 5.5 ASP.NET Web API中的HTTP Cookie 本文引自:http://www.asp.net/web-api ...

  8. 利用Fiddler模拟通过Dynamics 365的OAuth 2 Client Credentials认证后调用Web API

    微软动态CRM专家罗勇 ,回复337或者20190521可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me. 配置Dynamics 365 & PowerApps 支 ...

  9. WCF和ASP.NET Web API在应用上的选择

    在最近发布的Visual Studio 2012及.NET 4.5中, 微软正式推出新的网络服务框架ASP.NET Web API.作为ASP.NET MVC 4的一部分,ASP.NET Web AP ...

  10. 利用DelegatingHandler实现Web Api 的Api key校验

    客户端在请求Web Api时可以有以下两种方式提供API key 基于Querystring提供Api key http://localhost:57967/Api/Values?key=12345 ...

最新文章

  1. C++——虚函数(Virtual Member Functions) 【functions语意学】
  2. 【NLP实战系列】Tensorflow命名实体识别实战
  3. SQL Server数据库自增字段正确的插入值的描述
  4. 消灭星星网页版java代码,javascript实现消灭星星小游戏简单版
  5. 陈松松:如何锁定细分领域,视频营销才更容易持续做下去
  6. linux 文件中搜索字符串命令 grep
  7. 插入法排序c语言程序,插入排序算法及C语言实现
  8. 三个数据集与deploy.prototxt
  9. cmb网站服务器失去响应代码,3.5.2 连接到服务器并响应各种连接事件(2)
  10. python的argparse模块parse_known_args()方法的使用
  11. 晨哥真有料丨太快得到是不是就不珍惜了?这锅,男生真的不背!
  12. PureFTP安装配置
  13. php生成11位不重复数字,php生成8位不重复字符串
  14. linux 主流 集群 软件,Linux 高可用(HA)集群之Pacemaker详解
  15. 中职计算机PPT触发器使用的教案,PPT 触发器微课教学设计
  16. 微信小游戏开发-飞机大战【源码赠送】
  17. 《Deep Learning for Visual Tracking: A Comprehensive Survey》
  18. Edge浏览器驱动更新
  19. 特征工程之特征选择(3)----F检验和互信息法
  20. 10大动图:秒懂各种常用通信协议原理

热门文章

  1. python没有报错但是没结果_python爬取豆瓣top250的电影的信息,没有报错哦,但是没有结果...
  2. 网 络 响 应 状 态 码 常 见 的 错 误 代 码 及 错 误 原 因
  3. 信用评分卡(python)
  4. c#加粗代码_C# 8中的可空引用类型
  5. 《领域驱动设计精粹》DDD Domain-Driven Design Distilled -- Vaughn Vernon 读后感
  6. 学习的四重境界,给上初中侄女,如何学习,如何定义社会人才
  7. Rosenbrock函数的梯度与海瑟矩阵
  8. 大整数的代数运算_高等代数教学笔记2:多项式I
  9. 258. Move 0s To The End I -- Laicode
  10. C语言不支持函数重载的原因