Spring Security websocket限制paylod len位值

时间:2016-01-06 10:31:50

标签: spring spring-security websocket

根据RFC rfc6455 section "5.2。基本框架协议" paylod len(7)位可以设置为:

7位 - > 1-125 - 长度不大于125

7 + 16位 - >如果有效载荷设置为126,那么我们将字节1设置为126并扩展长度,即我们将后面的16位解释为无符号整数,这给出了我们2 ^ 16 - >长度为65535字节或64Kb。

7 + 64位 - 如果有效载荷被设置为127,那么我们将接下来的8个字节解释为无符号整数,其大约是2 ^ 64-> 1。或者,如果我没有记错,那是1.6艾字节,单程或死其他那些"很多"字节....

现在,我有一个弹簧应用程序,它使用带有websockets的弹簧安全性。我的应用程序只发送长度范围在第二种情况下的数据,即7 + 16位。我确信,当有人需要打开一个有效负载位设置为127的websocket连接时,将永远不会出现这种情况。

因此,我的问题是,有没有办法告诉spring只允许websocket连接,其中有效负载位可以设置为最大值126.I.e。如果websocket连接进入,有效负载位设置为127,则应自动关闭。

我认为这是一种可以防止不同类型攻击的安全功能。

春天有接口可以让我这样做吗?

0 个答案:

没有答案