第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

Cookie和Session

標(biāo)簽:
AngularJS
1. Cookie概述

HTTP cookie(网络cookie,浏览器cookie)是服务器发送给用户网络浏览器的一小部分数据。 浏览器可以存储它,并将下一个请求发回给同一台服务器。 通常,它用于判断两个请求是否来自同一浏览器 - 例如,保持用户登录。 它记住无状态HTTP协议的有状态信息。
Cookie的用途:

  • 回话管理
    记录登录,购物车,游戏分数或服务器应记住的任何其他内容

  • 个性化
    用户偏好,主题和其他设置

  • 追踪
    记录和分析用户行为

2. 如何创建Cookie

当收到一个HTTP请求时,服务器可以发送带响应的Set-Cookie头。 Cookie通常由浏览器存储,然后将cookie发送到Cookie HTTP标头中的同一服务器。 可以指定到期日期或持续时间,之后不再发送cookie。 此外,可以设置对特定域和路径的限制,限制cookie的发送位置。

Set-Cookie HTTP响应头将来自服务器的cookie发送给用户代理。 一个简单的cookie就像下面这样设置:


webp

image.png


完整的响应头如下


webp

image.png

设置Cookie后,每次请求都会带上设置的Cookie,请求如下:


webp

image.png

3. 会话Cookie和持久性Cookie
  • 没有设置Expires 或者Max-Age,当Client关闭后,Cookie也会消失,不会持久化.

  • 当我们设置Expires 或者Max-Age后,就会被持久化到客户端文件中.通常设置如下

webp

image.png

4. Cookie的访问控制

安全Cookie只能通过HTTPS协议通过加密请求发送到服务器。 即使在安全的情况下,敏感信息也不应该存储在cookie中,因为它们本身就不安全,并且该标志不能提供真正的保护。 从Chrome 52和Firefox 52开始,不安全的网站(http:)无法使用Secure指令设置Cookie。
为了避免被XSS攻击,我们可以通过设置HttpOnly 头来减轻这种攻击,HttpOnly表明不能通过JavaScript 的Document.cookie API来获取Cookie,而仅仅的发送给服务器.通常设置如下


webp

image.png


控制Cookie的访问范围通过Domain和Path来控制
Domain=mozilla.org 即表明*.mozilla.org可以访问Cookie
Path=/docs即表明只能访问/docs/*


5. Cookie的安全性

Cookie通常用于Web应用程序中以识别用户及其已验证的会话,因此窃取cookie可能会导致劫持经过验证的用户会话。窃取cookie的常见方式包括社交工程或利用应用程序中的XSS漏洞。


webp

image.png


当其他用户打开带有这个脚本的页面,就会运行这段程序,造成问题。
可以采用如下方式解决:

  • HttpOnly来禁止使用js获取到Cookie.

  • 对用户的一些比较重要的操作进行验证

  • 对输入进行验证,把用户的输入都文本化

另外一种常见的攻击就是CSRF(跨站域请求伪造)
试想下这样一种场景,当你登陆某个银行的网站之后,然后有个黑客放了个钓鱼地址,把你诱导到一个新的地址,接下来,页面就会发送下面这个请求,把你的钱转走了。

webp

image.png


防止CSRF的手段有如下几种


  • 和XSS一样,对输入进行过滤

  • 对于用户的重要行为一定要进行验证

  • 尽量对重要的cookie信息缩短Cookie的生存时间

6. Session

Session是在服务端保存的一个数据结构,用来跟踪用户的状态,这个数据可以保存在集群、数据库、文件中;通常借助 cookie 本身和后端存储实现的,一种更高级的会话状态实现。session 的运行依赖 session id,而 session id 是存在 cookie 中的,也就是说,如果浏览器禁用了 cookie ,同时 session 也会失效(但是可以通过其它方式实现,比如在 url 中传递 session_id)

服务器会为每一个访问服务器的用户创建一个session对象,并且把session对象的id保存在本地cookie上,只要用户再次访问服务器时,带着session的id,服务器就会匹配用户在服务器上的session,根据session中的数据,还原用户上次的浏览状态或提供其他人性化服务。

通常来说,Session是一种更安全的方式,把信息保存时服务器端。但是它会占用服务器的内存,Session的信息一多,就会对服务器造成压力。

Session的生命周期是服务端设置的时间长短,一段时间没有active,就会失效。



作者:maskwang520
链接:https://www.jianshu.com/p/343de1b6450d


點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺(jué)得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消