如何使用postman拦截器使Postman显示来自get请求的CSRF令牌

x0fgdtte  于 2022-11-07  发布在  Postman
关注(0)|答案(1)|浏览(175)

我遇到了特定问题,希望找到解决方案我正在使用我Spring安全性,我应该使用Postman Interceptor检索Cookie部分中X-CSRF-TOKEN我安装了Postman Interceptor,这是启用了csrf Spring安全性代码

@Override
    protected void configure(HttpSecurity http) throws Exception {
        http
                .authorizeRequests()
                .antMatchers("/", "index", "/css/*", "/js/*").permitAll()
                .antMatchers("/api/**").hasRole(STUDENT.name())
                .anyRequest()
                .authenticated()
                .and()
                .httpBasic();
    }

现在我没有得到任何cookie旁边的一些SESSIONID,我不知道我应该如何设置拦截器在这个 Postman ,将检索我的cookie后,启用postmang拦截器,所以如果你可以善良,并带领我?我一直在与此斗争了几天,我也尝试了一些方法,从这里,并要求不同的组,但是没有运气。提前感谢。如果需要的话,我还有基本授权的pw用户,这是我只从 Postman https://prnt.sc/74GGlfA4TYYN那里得到的

llycmphe

llycmphe1#

在我的例子中,我通常将Spring Security配置为使用CookieCsrfTokenRepository,如下所示:

http.csrf(csrf -> csrf
    .csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnly(false)
);

在我的Postman请求中,我将此脚本添加到Tests选项卡中。

var xsrfCookie = postman.getResponseCookie("XSRF-TOKEN");
pm.environment.set("xsrf-token", decodeURIComponent(pm.cookies.get("XSRF-TOKEN")))

在Postman中请求的Headers部分,您应该有一个如下所示的标题:
| 关键字|数值|
| - -|- -|
| X射线荧光标记|{{xsrf标记}}|
通过这种设置,Postman将使用从后端返回的CSRF令牌检索Cookie,并将其添加为环境变量,以便您可以在下一个请求中使用它。

相关问题