标签:状态 添加 时间 并行 comm cookie cat 之间 情况
同步: 多个任务之间 有先后执行顺序; 需要等待上一个任务执行完成 才能执行下一个任务.
异步: 多个任务之间 没有先后执行顺序;不需要等待上一个任务执行完成 就可以执行下一个任务.
并行: 同一时刻多个任务同时进行.
并发: 同一时间段内 多个任务都在进行; 但是不会同一时刻同时运行.
阻塞: 当前线程被挂起处于等待状态, 不能执行其他线程.
非阻塞: 不会阻塞当先线程,会立刻返回
CSRF(Cross Site Request Forgery): 中文是跨站请求伪造. CSRF攻击者在用户已经登录目标网站之后, 诱使用户访问一个攻击页面, 利用目标网站对用户的信任, 以用户身份在攻击页面对目标网站发起伪造用户操作的请求, 达到攻击目的 .
1. 用户A登陆受信任网站B ;
2. 网站B产生Cookie信息并返回给浏览器,此时用户登录网站B成功,可以正常发送请求到网站B ;
3. 用户未退出网站B的情况下, 在同一浏览器中, 访问危险网站C ;
4. 危险网站C接收到用户请求后,返回一些攻击性代码, 并发出一个请求要求访问第三方站点A ;
5. 浏览器在接收到这些攻击性代码后, 根据网站C的请求, 在用户不知情的情况下携带Cookie信息, 向网站B发出请求. 网站B并不知道该请求其实是由C发起的, 所以会根据用户A的Cookie信息以B的权限处理该请求 .
目前防御 CSRF 攻击主要有三种策略:验证 HTTP Referer 字段;在请求地址中添加 token 并验证;在 HTTP 头中自定义属性并验证。
1)单一职责原则 : 就一个类而言,应该仅有一个引起它变化的原因; 通俗的说,即一个类只负责一项职责
2)里氏替换原则 : 子类型必须能够替换掉它们的父类型
既:一个软件实体如果使用的是一个父类的话,那么一定适用于其子类,而其它察觉不出父类对象和子类对象的区别。
也就是说,在软件里面,把父类都替换成它都替换成它的子类,程序的行为没有变化。
3)依赖倒转原则: A.高层模块不应该依赖低层模块。两个都应该依赖抽象
B.抽象不应该依赖细节,细节应该依赖抽象
4)接口隔离原则 : 客户端不应该依赖它不需要的接口; 一个类对另一个类的依赖应该建立在最小接口上.
5)迪米特法则 : 如果两个类不必彼此直接通信,那么这两个类就不应当直接的相互作用;如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用。
6)开闭原则: 是说软件实体(类、模块、函数等等)应该可以扩展,但是不可以修改;
特征1:对于扩展是开放的(Open for extension);
特征2:对于更改是封闭的(Closed for modification)。
标签:状态 添加 时间 并行 comm cookie cat 之间 情况
原文地址:https://www.cnblogs.com/longpy/p/11097533.html