【问题标题】:Testing spring security with Postman使用 Postman 测试 spring 安全性
【发布时间】:2015-08-10 17:58:34
【问题描述】:

我已经使用 Spring 安全配置了基于表单的身份验证。当我使用 Web 应用程序中的登录表单登录时,它工作正常。

它也适用于 cURL:

curl --data "j_username=myname&j_password=mypassword" http://localhost:8080/test/j_spring_security_check --verbose

但是,我无法使用 Postman 使其工作:

缺少什么?我需要通过身份验证才能测试其他服务。

【问题讨论】:

    标签: spring-security postman


    【解决方案1】:

    最后我设法通过使用Postman Interceptor chrome extension 让 Postman 意识到身份验证

    启用扩展程序后(通过单击 Postman 应用程序中的卫星图标),您只需使用 Web 的登录表单登录,然后您就可以开始使用需要在 Postman 中进行身份验证的服务。

    【讨论】:

    • 这是否也适用于 Postman Native App(不是 chrome 应用)?
    • 要使用 Postman Native App,您必须安装 Interceptor Bridge:learning.getpostman.com/docs/postman/sending-api-requests/…
    • 好吧,对我来说,它在没有拦截器的情况下工作。这如何也解决了通过邮递员进行身份验证的问题?
    【解决方案2】:

    您可以通过在授权选项卡下的邮递员下拉列表中给出的各种授权类型在邮递员中实现身份验证/授权。

    以下是使用 Spring Security 默认提供的 Basic Auth 的步骤。

    在 Spring Security 中,您可以在 application.properties 文件中自定义您的凭据,如下所示。

    spring.security.user.name=yer spring.security.user.password=galem

    【讨论】:

      【解决方案3】:

      使用 http.httpBasic 对我有用。

      http.httpBasic()
          .and()
          .authorizeRequests()
          .antMatchers("/api/home")
          .hasRole("ADMIN")
          .antMatchers("/api/product/*")
          .hasRole("ADMIN")
          .and()
          .formLogin();
      

      【讨论】:

        【解决方案4】:

        对我来说,邮递员拦截器不起作用,
        所以我做了以下操作,现在我可以登录服务器了。

        1. 从下拉列表中选择 POST 请求并在请求 URL 部分输入登录 URL。
        2. 从标签中选择正文
        3. 如图所示输入用户名和密码键值。
        4. 然后单击发送,这将在邮递员中创建一个临时 cookie 并在那里进行会话。
        5. 您还可以对注销 URL 执行 GET 请求以从会话中注销。或从发送按钮下方的 Cookie 中删除 cookie。

        【讨论】:

        • 当我按照您的描述发送带有表单数据的 post req 时,我总是得到 404。 x-www-form-urlencoded 也是如此。但是当我选择非身体时,我会得到床凭证。在网络浏览器上一切正常。
        • 我想通了,邮递员开启了自动重定向功能。关闭,解决了问题
        【解决方案5】:

        在邮递员上使用基本身份验证时,您将在授权选项卡上设置凭据。 点击Authorization,选择Basic Auth类型,将显示凭据部分供您输入用户名和密码。

        【讨论】:

          猜你喜欢
          • 2012-08-01
          • 1970-01-01
          • 2016-01-02
          • 2017-05-23
          • 2016-05-28
          • 2016-10-15
          • 2015-09-19
          • 2016-12-05
          相关资源
          最近更新 更多