前后端分离
post 请求登录
已经是 https 的情况下
前端把账号密码拼接在 url 里
后端也正常处理登录成功了
友军的项目 正常吗?
1
shintendo 2019-10-03 22:31:49 +08:00
没看懂,不是 post 吗?
|
3
weakish 2019-10-03 22:36:29 +08:00
一般 nginx 等服务器日志里会写 url, 所以密码这样敏感的信息不该放 url 里。
|
4
mkeleven 2019-10-03 22:36:47 +08:00
其实无所谓的啊,无非是更加容易被攻击而已
|
5
DOLLOR 2019-10-03 22:41:48 +08:00 via iPhone
我想了想,如果是 XHR、fetch、Ajax 提交,拼在 URL 上还是在 body 里好像没啥区别,只是不能太长。但是拼接过程中要记得做 URL encode 吧。
|
6
shanigan 2019-10-03 22:44:46 +08:00
@jugelizi 那他 post body 里面放什么? 就算有 https, server log/browser history 里面都会有记录
|
7
stillwaiting 2019-10-03 22:46:44 +08:00
以为来到知乎了。。。
API 谁定的呢? 感觉流程一般都是:后端提供 API 文档,简单评审,前端根据这个 mock,最后联调 |
8
jugelizi OP |
9
Trim21 2019-10-03 23:02:30 +08:00
遇到这种网站能不能用就不用…
|
10
learnshare 2019-10-03 23:45:26 +08:00
找个明白人定一下 API 规则
|
11
GzhiYi 2019-10-04 00:37:27 +08:00
正不正常:不正常
能不能用:能用 推荐不推荐:不推荐 有什么好的建议:定下前后端数据对接的规则。 |
12
ScoutWang 2019-10-04 02:23:50 +08:00 via iPad
密码加时间戳盐做哈希再传,不然你放 url 还是 post body 都不安全
|
13
zqx 2019-10-04 07:03:45 +08:00 via Android
先请求一个公钥,客户端用这个公钥给用户数据编码,然后随便什么 get post 请求把数据发给服务端都可以了。
只要没加密,放在 request body 和 request header 和 url 都是不安全的 |
15
Mutoo 2019-10-04 07:26:36 +08:00
URL 传参会被日志和 CDN 记录,容易泄漏。后端的一些框架直接读 request[param] 是不区分 get/post 的,这部分得谨慎处理。
|
17
zqx 2019-10-04 08:21:49 +08:00 via Android
@hyperbin HTTPS 只能保证传输过程中(端到端)的加密吧?到了目标客户端以后,比如企业级的访问网关还是会记录请求信息,再经过各种服务过滤和转发,最后到达业务服务器,这时候数据已经泄露给内部其他系统很多次了
|
18
xiaotuzi 2019-10-04 08:40:32 +08:00 via iPhone
URL 携带账号密码,并且 post 提交的话,是可以在后台接收到数据的。
但是,前台把账号密码放到 URL 传递是不对的做法,是不是他前端代码有问题?排查下就好了。 |
19
Takamine 2019-10-04 08:49:33 +08:00 via Android
能用,但不推荐。
这样传参的数据格式应该是 application/x-www-form-urlencoded。 前后端分离在接口交互中,数据格式应该有通用性,一般约定用 application/json 比较好,formData 感觉都用得不多。 |
20
Cbdy 2019-10-04 09:00:14 +08:00 via Android
很不妥
|
21
huijiewei 2019-10-04 09:14:39 +08:00
GET 的参数日志会记录,日志无法脱敏。
|
22
MikeFeng 2019-10-05 13:01:50 +08:00 via Android
前后分离所有 post 不应该都用 post json 的方式吗?怎么还走 post 表单那套
|
23
skyqqcc 2019-10-05 16:42:19 +08:00 via Android
所以想说明的是后端的 API 根本是 POST 和 GET 都能用的么....
|
25
jzmws 2019-10-06 11:23:32 +08:00
post 和 get (url 挂参) 方式 本质是一样的,只不过一个要工具看,一个直接看请求地址,正确的做法是前端加密,
|
26
MiBAO 2019-10-11 17:11:35 +08:00
这明显不妥,不说什么加密至少你最基础的 post json 方式提交得弄撒。
|