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

为网站制定一个推广计划做网站的网址怎么弄

为网站制定一个推广计划,做网站的网址怎么弄,iis7新建网站,企业软件定制开发【导读】JWT认证方式目前已被广泛使用#xff0c;一直以来我们将token放在请求头中的Authorization中#xff0c;若通过此种方式#xff0c;一旦token被恶意窃取#xff0c;攻击者可肆意对用户可访问资源进行任意索取我们大多都是通过登录成功后#xff0c;响应AccessToke… 【导读】JWT认证方式目前已被广泛使用一直以来我们将token放在请求头中的Authorization中若通过此种方式一旦token被恶意窃取攻击者可肆意对用户可访问资源进行任意索取我们大多都是通过登录成功后响应AccessToken然后由前端将token存储在相关Storage中然后每次将其放请求头而认证请求由于token是极其敏感信息所以我们不能将其交由前端去处理而应由后台获取对前端不可见对安全有较高要求的平台我们通过Http Only Cookie来解决token恶意窃取问题Http Only CookieHttp Only Cookie简言之则是将相关信息响应时存储在Cookie中而客户端脚本无法访问每次请求时则将自动携带所有信息到服务器。例如京东存储相关信息接下来我们看看在.NET Core中如何将AccessToken以Http Only方式存储在Cookie中[AllowAnonymous] [HttpGet(api/test/get)] public IActionResult Get() {Response.Cookies.Append(x-access-token, GenerateToken(),new CookieOptions(){Path  /,HttpOnly  true});return Ok(); }如上我们模拟登录成功并不返回AccessToken而是将其写入到响应头中上述Cookie选项HttpOnly为true即表示客户端脚本不可访问此时我们来访问如下需认证接口[HttpGet(api/test/say)] public string Say() {return Hello World; }用过JWT的童鞋都知道标准模式则是将AccessToken写入到Authorization中即请求头【Authorization: Bearer ......】那么上述是如何认证成功而请求到接口的呢当我们添加JWT认证时每次请求在其对应事件OnMessageReceived中将自动获取请求头Authorization中的值将其赋值给context.Tokenservices.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) .AddJwtBearer(options  {......options.Events  new JwtBearerEvents{OnMessageReceived  context {//Bearer Tokencontext.Token  ;  return Task.CompletedTask;}}; });你问我是怎么知道的我是猜的吗当然不是丢出官方源码就知道了直接找到JWT如何处理认证则一目了然protected override async TaskAuthenticateResult HandleAuthenticateAsync() {string token  null;// Give application opportunity to find from a different location, adjust, or reject tokenvar messageReceivedContext  new MessageReceivedContext(Context, Scheme, Options);// event can set the tokenawait Events.MessageReceived(messageReceivedContext);if (messageReceivedContext.Result ! null){return messageReceivedContext.Result;}// If application retrieved token from somewhere else, use that.token  messageReceivedContext.Token;if (string.IsNullOrEmpty(token)){string authorization  Request.Headers[HeaderNames.Authorization];// If no authorization header found, nothing to process furtherif (string.IsNullOrEmpty(authorization)){return AuthenticateResult.NoResult();}}.......  }到这里我们知道了自动获取Token的原理我们修改了Token存储方式照葫芦画瓢就好如此将覆盖默认标准模式如下OnMessageReceived  context  {var accessToken  context.Request.Cookies[x-access-token];if (!string.IsNullOrEmpty(accessToken)){context.Token  accessToken;}return Task.CompletedTask; }从分析自动获取Token原理我们也可知道若与第三方对接依然可以使用请求头Authorization标准模式认证因为Cookie为空再次获取Authorization值注意发现若将前端未置于wwwroot下即完全前后分离涉及到跨域的情况下比如使用的是axios封装请求那么应该必须在请求头中添加【withCredentials:true 】否则使用Http Only将无效出现401额外意外发现一个很有意思的问题未深入研究这里当做小知识了解下就好或许是我自以为发现新大陆了呢当我们创建AccessToken时都会设置一个过期时间我们知道此过期时间肯定不会设置过长但是若在比如移动端微信小程序中若设置时间不长必然要考虑刷新Token问题为了懒一点我们将Token设置为永不过期那么JWT支持吗当然支持只不过根据我刚好尝试了几次找到了JWT永不过期的上限最大只能是16年若超过此临界点比如17年如下将会出现401具体错误如下了解了解就好也没啥鸟用我也是经常会瞎想比如考虑某些可能存在的极限情况
http://www.pierceye.com/news/671037/

相关文章:

  • cps推广网站建e网卧室设计效果图
  • php支持大型网站开发吗南海最新消息
  • 多语言企业网站html网站素材
  • 网站建设留言板怎么做优必选网站
  • 深圳建网建网站南博网站建设
  • 如何做防水网站一般网站做响应式吗
  • 回收手机的网站哪家好学生个人网页
  • 优秀甜品网站最有前景的十大行业
  • 手册设计南宁seo网站排名优化公司
  • 国外做科普视频的网站郑州做营销型网站的公司
  • 雄安网站设计制作即时灵感网站
  • 自己怎么优化网站排名wordpress 自动超链接
  • 建设工程安全监督备案网站wordpress最简易主题
  • 集客营销软件官方网站如何开发微信微网站
  • 青岛谁优化网站做的好微营销工具
  • 怎么才能建立一个网站卖东西php做网站用html做吗
  • 西安公司网站设计费用免费外国网站浏览器
  • 如何加快网站打开速度浦东新区建设机械网站
  • 求网站制作焦作网站建设的公司
  • 用python做网站不常见久久建筑网外墙岩棉保温板施工工艺
  • 做刷票的网站广告牌的样式大全
  • 手机登录网站怎么建设网站风格和功能设计方案
  • 网站报价天津网站在哪里建设
  • 湖北专业网站建设维修电话福清网站商城建设
  • 网站建设模块怎么使用线上注册公司流程和费用
  • 营销型网站设计内容wordpress加速优化插件
  • 设计坞网站官方下载4399网页游戏入口
  • 太原百度网站建设如何联系网站管理员
  • 海东高端网站建设公司视频网站 费用
  • 可以帮别人备案网站吗手机建网站公司