当前位置: 首页 > news >正文

网站浏览速度中国微电影 网站开发者

网站浏览速度,中国微电影 网站开发者,网络游戏营销策略,广州物流网站开发云原生学习路线导航页#xff08;持续更新中#xff09; 本文是 golang语言系列 文章#xff0c;主要对编程通用技能 Authentication、OAuth、JWT 认证策略 进行学习 1.Basic Authentication认证 每个请求都需要将 用户名密码 进行base64编码后#xff0c;放在请求头的Aut…云原生学习路线导航页持续更新中 本文是 golang语言系列 文章主要对编程通用技能 Authentication、OAuth、JWT 认证策略 进行学习 1.Basic Authentication认证 每个请求都需要将 用户名密码 进行base64编码后放在请求头的Authorization中携带到服务端实现HTTP基本认证HTTP明码传输不安全。一般会用HTTPS传输HTTPS 在 HTTP 基础上面添加了 SSL 安全证书。但如果有人伪造CA证书也可能造成不安全用户名和密码直接放在请求里太不安全了 2.OAuth认证 OAuthOpen Authorization是一个用于授权的开放网络标准允许用户授权第三方应用去访问他们存储在另外的服务提供者上的信息而不需要将用户名和密码提供给第三方移动应用或分享他们数据的所有内容。 目前主流的 第三方应用登陆都是使用OAuth标准做的 OAuth标准目前大多使用2.0版本 OAuth2.0授权模式授权码模式和密码模式比较常用 授权码模式authorization code简化模式implicit密码模式resource owner password credentials客户端模式client credentials 更多知识学习博客 OAuth2.0协议流程与授权模式、协议流程http基本认证Authentication OAuth JWT 3.JWT认证 3.1.JWT是什么 JSON Web Token (JWT) 是一个开放标准(RFC 7519)它定义了一种紧凑的、自包含的方式用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证和信任因为它是数字签名的。本质上来说jwt 就是规定了一种token的格式按照 jwt 标准生成的 token包含3部分header、playload、signature每一部分都有自己的功能因此这种token自身就携带了多种特性。 3.2.JWT的3个组成部分 JWT包含3部分 header 头部公开的表示这是jwt的数据。这部分会使用base64url编码会把编码成base64后的数据中的 “、、/” 替换掉这样就可以把jwt生成的token拼接在 请求的url 参数上用于浏览器禁止cookie时使用 playload 有效载荷可以携带一些数据但是不要放私密数据。这部分都是base64编码可以解密相当于明文 signature 验证签名是用来验证发送者的JWT同时也能确保客户端传来的JWT没有被篡改signature 如何鉴别客户端带过来的Token是正确的 signature 是 服务端在生成token时使用 密钥secret对headerplayload进行加密得到的验证签名。如果 下一次请求带来的token拿着headerplayload再次进行密钥加密得到的signature不同说明 数据被别人篡改了。如果加密后值相等说明没有篡改。 因此JWT标准生成的Token实际上并不是安全的内部都使用base64编码也相当于明文但是有 signature 判断数据是否被修改过 3.3.JWT的优缺点 JWT优点 json的通用性所以JWT是可以进行跨语言支持的。很多语言都可以使用 json 传输有了payload部分所以JWT可以在自身存储一些其他业务逻辑所必要的非敏感信息。便于传输jwt的构成非常简单字节占用很小不需要在服务端保存会话信息, 所以它易于应用的扩展不用考虑服务器之间的同步问题 JWT缺点 不应该在jwt的payload部分存放敏感信息因为该部分是客户端可解密的部分。一定得保护好服务端的secret私钥该私钥非常重要。 3.4.使用 JWT Redis 验证用户信息的过程 在用户登陆成功时服务端使用 JWT 的密钥为该用户生成一个token。把userId存入载荷中将token返回给前端。同时我们会在redis中维护一个Hash表键为token值值为user的从数据库中查到的详细信息。下次用户再访问其他资源的时候将token以 cookie、请求头的Authorization字段 或 url参数 的 方式一起发给服务端。服务端中我们会在网关Gateway验证用户的登录状态。 从request中取出token使用 jwt 密钥尝试解密如果发现 token 的 headerplayload 再次加密后得到的 signature 与 token 中的 signature不再一样说明数据被篡改了就会拒绝服务如果验证通过就会从载荷中取出我们事先放入的userId将userId存到请求中再把该请求放行。后续如果需要使用用户的详细信息直接从请求头中获取userId就可以到redis中查到详细信息。
http://www.pierceye.com/news/229507/

相关文章:

  • seo织梦网站建设步骤昆明网络营销软件
  • 企业网站 静态页面成都设计公司邮箱
  • 创世网站建设 优帮云北京网站建设工作室
  • 网站空间提供商哪个网站可以做英文兼职
  • 社区网站制作平台网站建设调研报告
  • 不会建网站怎么赚钱dw个人主页模板
  • 自助建站系统哪个好thinkphp做的网站源码
  • 广州企业网站模板建站现在有什么网站可以做兼职的
  • 网站开发 公司百度seo公司整站优化软件
  • 沈阳学网站制作学校网络推广龙岗比较好的
  • 佛山 建站公司网站风格一般具有哪三大特征
  • 网站的二级页面怎么做济南网站建设行知科技不错
  • 网站赢利如何查看实时街景地图
  • 手表网站欧米茄官方网络平台管理制度和管理办法
  • 北京网站建设网站网站不用工具开发建设
  • 杭州做网站外包公司有哪些网站幻灯片效果
  • 北京模板建站代理好看怎么上传视频网站吗
  • 品牌网站建设小科6a蚪html制作电影网页
  • 环保网站建设维护情况报告北京seo方法
  • 网站建设及使用企业名字查重系统
  • 新乡微网站建设如果做vr参观网站
  • 昆山苏州网站建设地方门户类网站有哪些
  • 网站建设与维护 许宝良 课件企业网站建设费用会计科目
  • react做的网站有哪些帮别人推广赚钱
  • php 深圳 电子商务网站开发苏州餐饮 网站建设
  • 相机拍照的图片怎么做网站呀现在的企业一般用的什么邮箱
  • 深圳自适应网站公司wordpress更改固定链接后
  • 网站报价网站源码下载工具
  • 买个网站域名要多少钱一年网站怎么建设模块
  • 怎么用自助网站设计之家网址