0

我正在使用 Spark 框架开发 REST 服务。到目前为止,我还没有发现任何实施 CSRF 保护的可能性。

是否有可能使用集成功能实现 CSRF 保护?还是我必须使用Pac4j等外部模块?

4

1 回答 1

0

我已经想通了,而且它很容易实现。您只需要添加一个自定义过滤器。

before((request, response) -> {
    List<String> safeMethods = Arrays.asList("GET", "OPTIONS", "HEAD");
    if (!safeMethods.contains(request.requestMethod())) {
        if (!request.headers().contains("X-Requested-By")) {
            halt(400);
        }
    }
});
于 2017-06-03T16:27:40.260 回答