没咋写过接口 我想问下如果单纯给 app 写接口 一个安卓端一个 ios 端 那啥 token 的话我是不是可以就定死一个值,告诉他们。然后有需要验证的接口需要传这个值给我是不是就行了啊。。我直接拿约定的 token 值判断?那万一别人抓包了拿到传的 token 咋办。。不太明白这个
1
wunonglin 2019-04-27 23:00:29 +08:00
对啊,被抓包怎么办?不如不要 token 直接开放吧[doge]。。。emmmm
最简单的验证流程大概这样 const token = 你可以在服务器瞎生成一串亲妈都不认识的字符串作为 token 1、客户端提交账号密码用来获取 token 2、客户端用自己的方式存在本地 3、访问 api 的时候在头部带上 auth 之类的 key 加上 token 4、后台接收到请求后验证一下 token,过了就给数据,不过就给 403 |
2
ashlord 2019-04-27 23:03:23 +08:00
固定 token 不就等于没有 token 吗……那为什么还要麻烦去弄验证?
|
3
qwertyzzz OP @wunonglin 第一步账号和密码是啥呀 0 0.。第三部在头部带上不会被截取吗 还是约定以某种加密方式,我不知道这个 token 需要生成几次 还是只要一个就行了 客户端固定在头部带上这个以大家约定的一个方式来 到时我还解密数据。
|
5
huangzhe8263 2019-04-27 23:19:04 +08:00
之前没了解过,最近也在折腾接口的问题,不知道这个是不是你要的
[JSON Web Token 入门教程]( http://www.ruanyifeng.com/blog/2018/07/json_web_token-tutorial.html) |
6
wunonglin 2019-04-27 23:21:16 +08:00
|
9
xylophone21 2019-04-28 08:01:36 +08:00
你这应该是无用户概念的场景,这种场景下只能尽力而为的做认证,常规的方法从安全到不安全:
1. 设备出厂时加密预制证书,服务端校验证书(这个应该不适合你) 2. 设备出厂时加密预制唯一 ID,服务端从数据库查 ID 校验+TLS,换取 token (这个应该也不适合你) 3. 直接使用设备的唯一 ID,如 UUID 加一个签名校验+TLS+服务端监控异常的 UUID 4. 在 3 的基础上,不换 token 了,直接使用 UUID+签名校验+TLS+服务端监控异常的 UUID 另外,顺便问一下大家 3 和 4 的安全性到底差异在哪里? 虽然 token 能改但 UUID 不能改,但 UUID 换 token 的过程如果被抓,结果是一样的,偶尔使用一次比经常使用安全多少?类似 RefreshToken + AccessToken 的方法,究竟比只有一个 AccessToken (过期等于 RefreshToken )安全在哪里? |
10
l05jq6W75b29a60l 2019-04-28 08:48:53 +08:00
没错的 抓包拿到 token 就可以被任意用户登录。我抓过无数小程序 银行类 token 都可以直接使用 。
|