我在网络服务器中有一些逻辑来确定用户是否正在尝试进行DoS攻击。但是,为此返回正确的HTTP响应代码是什么?还有一个好的错误信息,我可以在HTTP正文中告诉用户他是否已经进入DoS攻击路径吗?
答案 0 :(得分:2)
但是为此返回的HTTP响应代码是什么?
RFC 6585建议429 Too Many Requests
429状态代码表示用户在给定的时间内发送了太多请求(“速率限制”)。
如果攻击影响了您处理合法请求的能力,那么您可以使用503 Service Unavailable回复。
注意语义的变化 - 发送错误请求的人从4NN Client Error类中获取状态,而那些没有错误的人从5NN Internal Service Error类获得状态。
我可以在HTTP正文中放置一个好的错误消息,礼貌地告诉用户他是否已进入DoS攻击路径?
请停止吗?