在构建应用程序时,我使用令牌来防止对表单的攻击
每次呈现表单时,它都会获得一个新的ONE TIME安全令牌,我将其作为隐藏字段包含在表单中。此令牌也存储在会话中。
发送表单时,会根据会话中的令牌验证令牌,以确保表单是合法的。这适用于标准页面。
使用 Ajax 发送表单时的问题 ,一个页面上可能有多个,一旦您发送其中一个表单,则该令牌对于其他表单作为一次性令牌无效。
有人对此有建议吗?或者每次会话生成一个令牌并使用它而不是每次发送表单时都使令牌无效是否足够安全?
如果您想遵循当前的方法,您可以在每次执行 AJAX 请求时生成一个安全令牌,在 AJAX 响应中返回它,并在获得时将其注入隐藏。但是,我会重新考虑您当前的安全令牌方法。这里有一些关于 OSWAP wiki 的提示。