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

如何做网站不容易被攻击网页设计免费模板代码下载

如何做网站不容易被攻击,网页设计免费模板代码下载,做哪类网站,新品发布会手机目录 1#xff0c;cookie 的出现2#xff0c;cookie 的组成浏览器自动发送 cookie 的条件 3#xff0c;设置 cookie3.1#xff0c;服务端设置3.1#xff0c;客户端设置3.3#xff0c;删除 cookie 4#xff0c;使用流程总结 整理和测试花了很大时间#xff0c;如果对你有… 目录 1cookie 的出现2cookie 的组成浏览器自动发送 cookie 的条件 3设置 cookie3.1服务端设置3.1客户端设置3.3删除 cookie 4使用流程总结 整理和测试花了很大时间如果对你有帮助可以点个关注哇也有其他干货哦~ 1cookie 的出现 浏览器和服务器之间的传输使用的 HTTP 协议而它是无状态的。也就是说每个请求都是独立的服务器并不知道2次请求是否是同一个人。 为了解决这个问题服务器想了一个办法 当客户端登录成功后服务器会给客户端一个令牌凭证 token客户端后续的请求都需要带着这个 token 在服务器做验证。 但用户不可能只在一个网站登录于是客户端会收到各个网站的出入证 token。所以客户端需要一个 “卡包” 来实现以下功能 能够存放多个 tokentoken 可能来自不同的网站也可能一个网站有多个 token。能够自动出示正确的 token客户端访问不同网站时会自动在请求中带着对应的 token。管理 token 的有效期客户端需要自动发现那些过期的 token 并移除。 满足上述要求的就是 cookie每一个 token 就是一个 cookie。 每个网站的 cookie 大小不超过 4kb。 2cookie 的组成 每一个 cookie 都记录了以下信息除了 key 和 value其他非必填顺序无关 key键比如表示身份编号的字符串 token value值比如 123abc它可以是任何字符串。 domain主机域表示这个 cookie 是属于哪个网站的比如 www.csdn.net。【默认值当前主机也就是 location.host】MDN参考 path路径表示这个 cookie 是属于该网站的哪个路径。【默认值实测发现是 cookie 所处目录的上级目录。比如页面是 http://localhost:3001/a/api/login则 path 为 /a/api】 secure是否使用安全传输。MDN参考 httpOnly表示该 cookie 仅能用于传输而客户端通过 document.cookie 获取的是空字符串这对防止跨站脚本攻击XSS会很有用。 XSS比如当前页面打开 iframeiframe 可以获取父级的 cookie。设置 httponly 可以不允许 js 获取来防止跨站脚本攻击。 expires过期时间表示该 cookie 在什么时候过期。MDN 参考 max-age有效期。【默认值如果 expires 和 max-age 都不设置则为 session也就是会话结束后过期大多浏览器关闭注意不是标签页关闭意味着会话结束。】 expires 和 max-age 一般只设置一个即可。 浏览器自动发送 cookie 的条件 需要同时满足以下4个条件 没有过期。 expires 必须是一个有效的GWT时间格林威治标准时间字符串比如 Fri, 22 Dec 2023 17:09:13 GMT。到期后浏览器会自动删除。 new Date().toGMTString() // Fri, 22 Dec 2023 17:09:13 GMT // 对比常见的时间格式 new Date() // Sat Dec 23 2023 01:09:13 GMT0800 (中国标准时间)max-age 是相对有效期比如 max-age1000相当于设置 expires当前时间 1000s domain 字段和这次请求的域是匹配的。 设置的 domain 是 csdn.net则可匹配的请求域有csdn.net、www.csdn.net、blogs.csdn.net等。设置的 domain 是www.csdn.net则只能匹配 www.csdn.net 这样的请求域。cookie 是不关心端口的只要域匹配即可。无效的域浏览器的是不认的。比如对 https://search.jd.com/Search?keywordxxx 网页来说 【翻译通过 Set-Cookie 标头设置 cookie 的尝试被阻止因为其域对于当前域无效】path 字段和这次请求的 path 也是匹配的。/ 表示匹配所有。如果是 /docs 匹配的路径/docs/docs//docs/Web//docs/Web/HTTP不匹配的路径//docsets/fr/docs secure 字段验证。设置该字段则请求协议必须是 https否则不发送 cookie不设置则请求协议可以是 https 或 http。 浏览器会将符合条件的 cookie自动添加到请求头 Cookie 中。下图可以看到有3个满足的 cookie以 ; 分隔。 3设置 cookie cookie 是保存在浏览器端的有2种设置模式 服务器设置通过设置响应头 set-cookie: 123abc浏览器会自动保存在 “卡包” 中。查看方式控制台–Application– Storage–Cookies浏览器设置这种情况比较少见。举例用户关闭了广告时勾选了【不喜欢】或其他原因就可以把这种小信息直接通过 js 保存到 cookie 中。后续请求服务器时服务器会根据这个信息调整广告投放。 3.1服务端设置 可在一次响应中设置多个 cookie。格式如下 键值; path?; domain?; expires?; max-age?; secure; httponly举例 // 服务端 const Koa require(koa); const Router require(koa-router); const { bodyParser } require(koa/bodyparser);const app new Koa(); const router new Router();router.post(/api/login, (ctx) {const { name, pwd } ctx.request.body;if (name 下雪天的夏风 pwd 123) {ctx.set(set-cookie, tokenaaa; domainlocalhost; max-age3600;secure; httponly);ctx.body 登录成功;} else {ctx.body {code: 500,msg: 用户名或密码错误,};} });router.get(/api/home, (ctx) {ctx.body home; });app.use(bodyParser()).use(router.routes()); app.listen(3000);!-- 前端 -- form actionhttp://localhost:3000/api/login methodpost target_blankinput typetext namename /input typepassword namepwd /button提交/button /formform 表单发送请求登录成功后会自动跳转到页面 http://localhost:3000/api/login可以看到 cookie 已经设置了 注意到 path 的默认值是 cookie 所处目录的上级目录。expires/max-age 的时间格式保存为 ISO国际标准时间 new Date() // Sat Dec 23 2023 01:27:53 GMT0800 (中国标准时间) new Date().toISOString() // 2023-12-22T17:27:53.738Z new Date().toGMTString() // Fri, 22 Dec 2023 17:27:53 GMT再次访问 http://localhost:3000/api/home 时会发现请求头中自动带上了 cookie 3.1客户端设置 格式和在服务端相同只是 httponly 字段无效。因为该字段本来就是限制在客户端访问的客户端设置它没有意义。 document.cookie tokenaaa; domainlocalhost;secure;httponly3.3删除 cookie 可以修改 cookie 的过期时间即可max-age-1。浏览器会自动删除。 可以让服务器响应一个同样的 domain、同样的 path、同样的 key只是时间过期的 cookie 即可。 以上面的例子来说设置如下 ctx.set(set-cookie, tokenaaa; domainlocalhost; max-age-1);或客户端删除 document.cookie tokenaaa; domainlocalhost; max-age-1注意无论是修改还是删除都需要注意 domain 和 path因为可能存在 domain 和 path 不同但 key 相同的 cookie。 4使用流程总结 登录 / 注册请求 浏览器发送用户名和密码到服务器。服务器验证通过后在响应头中设置 cookie附带登录认证信息一般为 jwt。浏览器收到 cookie 保存下来。 后续请求浏览器会自动将符合的 cookie 附带到请求中服务器验证 cookie 后允许其他操作完成业务流程。 以上。
http://www.hkea.cn/news/14411672/

相关文章:

  • 深圳 网站策划陕西交通建设集团公司网站
  • c 做网站开发菜鸟是什么网站
  • 活动汪活动策划网站asp网站源码下载
  • 做网站用什么笔记本配置l兰州网站建设
  • 网站建设需要固定ip地址吗建设凡科网站
  • 怎么做废品收购网站如何在网站上做网页链接
  • 上海婚恋网站排名网站建设毕业设计目录
  • 关于我校校园网站建设的调研报告做盗版电影网站
  • 苏州营销型网站开发公司系部网站建设管理方案
  • wordpress加载模板扬中如何优化网站
  • 网站备案时间就是正式上线时间吗网站开发 工期安排
  • 做网站能做职业吗百度免费校园网站建设
  • 电商网站设计论文开建筑公司需要什么条件
  • 电子商务网站总体规划的内容网站建设审批程序
  • 网站上怎样做下载文档链接wordpress getcategorylink
  • 哪个网站的系统免费注册网站
  • 免费 建站wordpress 插件出错
  • 长春市网站制作网站域名能改吗
  • 男女在浴室里做羞羞事网站广告制作公司转型
  • 陕西交通建设集团蓝商分公司网站wordpress 媒体库 cos
  • 做视频直播的网站有哪些云服务器怎么上传网站
  • 三亚网站建设公司wordpress锁定文件
  • 郑州网站推广外包重庆网站建站系统平台
  • 茂港手机网站建设公司办公室公共空间设计
  • 文化馆网站建设长沙网络营销外包哪家好
  • 阳泉网站设计站内推广方案
  • 静海县建设局网站去国外怎么导航地图
  • 视频网站中滑动列表怎么做的东营城乡建设信息网
  • 鞍山企业做网站为什么做网站要服务器 和域名
  • 网站开发客户哪里找wordpress中文cms