阿语Python项目实操之美多后台管理-管理员登录第2.1节浏览器的同源策略

news/2024/5/18 14:44:33 标签: web, cookie, nginx, session, 安全

浏览器的同源策略

1995年,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。

同源策略是浏览器的一个安全功能,不同源的客户端脚本(js文件)在没有明确授权的情况下,不能读写对方资源。只有同一个源的脚本赋予dom、读写cookiesession、ajax等操作的权限。

url由协议、域名、端口和路径组成,如果两个url的协议、域名和端口相同,则这两个url是同源的。

举例来说,http://www.example.com/dir/page.html这个网址,协议是http://,域名是www.example.com,端口是80(默认端口可以省略)。它的同源情况如下。

url是否同源原因
http://www.example.com/dir2/other.html协议、端口、主机相同
https://example.com/dir/other.html不同的协议(https)
http://www.example.com:81端口不同(81)
http://news.example.com/域名不同

同源政策的目的,是为了保证用户信息的安全,防止恶意的网站窃取数据。

设想这样一种情况:A网站是一家银行,用户登录以后,又去浏览其他网站。如果其他网站可以读取A网站的 Cookie,会发生什么?

很显然,如果 Cookie 包含隐私(比如存款总额),这些信息就会泄漏。更可怕的是,Cookie 往往用来保存用户的登录状态,如果用户没有退出登录,其他网站就可以冒充用户,为所欲为。因为浏览器同时还规定,提交表单不受同源政策的限制。

由此可见,"同源政策"是必需的,否则 Cookie 可以共享,互联网就毫无安全可言了。


http://www.niftyadmin.cn/n/739704.html

相关文章

阿语Python项目实操之美多后台管理第1节项目环境搭建

项目环境搭建1、前端代码的运行进入meiduo_mall_admin文件目录下,执行如下指令npm run dev出现如下图所示,表示运行成功:2、后端代码的运行1、导入虚拟环境文件pip install -r requeriments.txt2、进入数据库创建meiduo数据库mysql -uroot -p…

阿语Python项目实操之美多后台管理-数据统计第3.1节用户总量统计

用户总量统计接口分析请求方式:GET /meiduo_admin/statistical/total_count/请求参数:通过请求头传递jwt token数据。返回数据:JSON{"count": "总用户量","date": "日期" }返回值类型是否必须说明co…

阿语Python项目实操之美多后台管理-管理员登录第2.1节Django REST framework JWT

我们在验证完用户的身份后(检验用户名和密码),需要向用户签发JWT,在需要用到用户身份信息的时候,还需核验用户的JWT。关于签发和核验JWT,我们可以使用Django REST framework JWT扩展来完成。文档网站http:/…

阿语Python项目实操之美多后台管理-数据统计第3.3节用户总量统计

日活跃用户统计接口分析请求方式:GET /meiduo_admin/statistical/day_active/请求参数:通过请求头传递jwt token数据。返回数据:JSON{"count": "活跃用户量","date": "日期" }返回值类型是否必须说明…

阿语Python项目实操之美多后台管理-数据统计第3.4节日下单用户量统计

日下单用户量统计接口分析请求方式:GET /meiduo_admin/statistical/day_orders/请求参数:通过请求头传递jwt token数据。返回数据:JSON{"count": "下单用户量","date": "日期" }返回值类型是否必须说…

阿语Python项目实操之美多后台管理-商品管理之sku表管理第5.1.2节保存SKU表数据...

保存SKU表数据在保存数据之前我们需要先获取三级分类信息、SPU表的名称信息、当前SPU商品的规格选项信息加载到页面中1、获取三级分类信息接口分析请求方式:GET /meiduo_admin/skus/categories/请求参数:通过请求头传递jwt token数据。返回数据&#xff…

阿语Python项目实操之美多后台管理-用户管理第4.2节增加用户

增加用户接口分析请求方式:POST /meiduo_admin/users/请求参数:通过请求头传递jwt token数据。参数类型是否必须说明usernamestr是用户名mobilestr是手机号passwordint是密码emailstr否邮箱返回数据:JSON{"id": "用户id"…

阿语Python项目实操之美多后台管理-商品管理之sku表管理第5.1.3节更新SKU表数据...

更新SKU表数据1、 获取修改商品的详情信息点就修改按钮时&#xff0c;我们需要先获取要修改的商品详情信息接口分析请求方式&#xff1a;GET /meiduo_admin/skus/(?P<pk>\d)/请求参数&#xff1a;通过请求头传递jwt token数据。在头部中携带要获取的spu商品ID返回数据&a…