gwt - 使用 GWT 的 RequestFactory 时防止 CSRF

标签 gwt csrf requestfactory

我刚刚开始将我的 GWT-RPC 代码移植到新的 RequestFactory机制。

为了防止跨站点请求伪造 (CSRF),我的 GWT-RPC 代码抓取了已存储在 cookie 中的 session id,并将其包含在请求的负载中。 RequestFactory 有可能吗? ?

我了解有四种强制定位器方法,包括 findEntity(id_type id) ;所以我在想:哦,亲爱的:我在哪里放我的 session ID?

最佳答案

通常,您将扩展 DefaultRequestTransport将 token 添加到请求中(例如自定义 header ,但您也可以将其添加到请求正文中)并将其传递给 init您的RequestFactory .在服务器端,您将使用 servlet 过滤器或扩展 RequestFactoryServlet在处理 RequestFactory 请求之前处理 token 。您可以在这里自由定义自己的“协议(protocol)”:例如返回 403 或 401 状态(或其他),然后在 RequestTransport 中处理它将结果传达给您的应用程序。

关于gwt - 使用 GWT 的 RequestFactory 时防止 CSRF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6227436/

相关文章:

java - 如何在 GWT 中设置事件边界?

java - GWT DataGrid 中可扩展行的简单示例

cakephp - 3.6 版本发布请求中的 CSRF token 不匹配

android - 如何在 Android SyncAdapter 中使用 GWT-RequestFactory(总是出现 ValidationTool-Error)

GWT 请求工厂 : implementing InstanceRequest methods in separate services

java - 使用 GWT FormPanel 和 FileUpload 上传的文件大小是否有限制?

java - mgwt 中的水平滚动面板

python - CSRF token 丢失或不正确(我知道,之前已被问过!)

Symfony CSRF 域和子域

java - 如何在 requestfactory 使用的域对象中访问当前请求?