1
jeesk 2022-11-24 11:57:34 +08:00
网页不太可能做到安全的。app 都不行, 逆向只是时间问题。
|
2
jeesk 2022-11-24 11:58:36 +08:00
增加每个用户只有 1 个连接的方式看看能不能缓解这个问题
|
3
lairdnote 2022-11-24 12:03:20 +08:00
加一个 origin 检查。方法太多了
|
4
MoonWalker OP @lairdnote 可以细嗦吗😀
|
5
Opportunity 2022-11-24 13:44:10 +08:00
普通的 rest-api 怎么鉴权它就怎么鉴权啊,这个又不在 coturn 自己的范围里
|
6
billzhuang 2022-11-24 14:11:29 +08:00
@Opportunity 同意你的观点。
|
7
MoonWalker OP @Opportunity @billzhuang
我知道不在 coturn 范围内,任何人都可以调用到这个接口获取 turn 账号密码(即便是有类似登录鉴权),就意味着别人可以用我的 turn 来转发流量啊 |
8
billzhuang 2022-11-24 15:03:22 +08:00
是的,我之前的做法是在 render 这个页面时把生成的有有效期的账号密码放到页面里并混淆下,而不是通过某个具体的 api 。
|
9
MoonWalker OP @billzhuang 这样做适用于服务端渲染的应用,只能说可以稍微增加点破解难度吧
|
10
chairuosen 2022-11-24 15:31:41 +08:00
看起来这个接口是你实现的,你自己给他加鉴权啊。
|
11
ElmerZhang 2022-11-24 15:51:39 +08:00
给你自己网站加用户系统,只有你自己网站的用户可以调这个接口
|
12
ElmerZhang 2022-11-24 15:52:43 +08:00
其实 turn 服务器耗不了多少性能,直接开放也没太大问题,网上有很多开放的 turn 服务器可以用
|
13
MoonWalker OP @ElmerZhang 你说的是 stun 吧。。。
|
14
LinePro 2022-11-24 16:22:12 +08:00
按我理解,这个 REST API 应该不是直接在前端调用的,应该是在你自己写的后端程序里调用。然后如何鉴权就是你自己的后端程序考虑的事情。
|
15
billzhuang 2022-11-24 20:46:51 +08:00
@ElmerZhang 怎么会?网上没有开放的 turn ,只有 stun 。
并且 turn 主要消耗的是带宽和流量,而非 cpu 、memory 。 |
16
billzhuang 2022-11-24 21:01:35 +08:00
|
17
LinePro 2022-11-24 21:44:11 +08:00
@billzhuang #16 这个问题就和防爬虫是一个性质的了,鉴权是鉴别用户的,但不是鉴别客户端类型的。解决这个问题的措施可以参考反爬措施。但不管怎样,我认为这终究是个猫鼠游戏,没有从根源上解决问题的好办法,只能采取一些缓解措施。比如限制访问频率或者识别爬虫特征,类比到 TRUN 服务器就限制流量和速率,或者给 TRUN 服务器动手脚对流量特征进行检测等等。
理解保护最终结果避免滥用的意图,但是这个和要保护内容不被爬虫爬一样,是个不容易从根源解决的问题。当然,增大滥用的成本还是没有问题的,就如同增大爬虫的成本。 |
18
billzhuang 2022-11-24 21:49:37 +08:00 via iPhone
@LinePro 同意,增加对方的成本,猫鼠游戏。
|
20
as9567585 2023-07-21 15:31:05 +08:00
@MoonWalker 你好,楼主,我也有相同的疑问,最后你解决了吗?
|
21
MoonWalker OP @as9567585 没有,无解
|