为了账号安全,请及时绑定邮箱和手机立即绑定

前后端分离判断请求来源

前后端分离判断请求来源

饮歌长啸 2019-03-02 12:37:00
如果项目前后分离,前端只能用ajax调用后端接口获取数据,那后端如何判断请求来源?1. 通过类似token:1.1、是要后端提供一个token接口,然后前端通过接口获取token。(接口都有了那说明谁都可以拿到token。不靠谱) 1.2、后端提供token + 请求域名白名单。(通过HTTP_REFERER 获取请求域名来源进行判断....不太靠谱)上面是我想到的办法。还有没有相对安全的方法,麻请提供思路
查看完整描述

2 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

前后端分离之后,判断来源的目的基本都是保障安全性,只是鉴定来源的话request header里面的origin是不是可以用一下?然后通过token、jwt等一系列的鉴定机制,再试试?

但是个人觉得只要这个token能带到客户端,就有危险,所以分离之后为了安全,更倾向于以下方案

1、前后端分离之后,前端使用nginx作为服务器,并且反向代理到后端接口,注意这里反向代理到后端服务器的内网IP+端口上去,并且关掉后端域名的外网映射
2、接口服务器上接到请求之后,可以查一下X_forward_for的ip链路,看下中间的代理IP是不是自己nginx服务器的,加个白名单
3、如果实在需要开放外网映射去做一些诸如授权、支付类的功能的话,nginx层依旧保持内网ip转发,添加域名访问的白名单,包括域名和ip

大致就这样~


查看完整回答
反对 回复 2019-03-02
?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

token 后端提供的token接口是要验证用户信息的
不是说我一个get请求过来就给你一个token
token的信息当中可以包含 你的客户端来源 基本用户信息 过期时间等

查看完整回答
反对 回复 2019-03-02
  • 2 回答
  • 0 关注
  • 2110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信