Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何使用spring security的请求参数中的凭据进行身份验证?_Java_Spring_Spring Security_Spring Boot - Fatal编程技术网

Java 如何使用spring security的请求参数中的凭据进行身份验证?

Java 如何使用spring security的请求参数中的凭据进行身份验证?,java,spring,spring-security,spring-boot,Java,Spring,Spring Security,Spring Boot,我对Spring Boot和Spring Security有点陌生。 我遇到这样一种情况:我需要对请求进行身份验证,并且用户名和密码位于请求参数中,例如localhost:8080?username=bob&password=123 有人能帮我理解我需要如何配置我的安全配置吗?我正在尝试以Java配置而不是XML的形式来配置。我还需要禁用试图使用基本HTTP身份验证进行身份验证的用户。因此,他们获得访问权限的唯一方法是在请求参数中提供用户名和密码。到目前为止,我的配置如下所示: @Overrid

我对Spring Boot和Spring Security有点陌生。 我遇到这样一种情况:我需要对请求进行身份验证,并且用户名和密码位于请求参数中,例如
localhost:8080?username=bob&password=123
有人能帮我理解我需要如何配置我的安全配置吗?我正在尝试以Java配置而不是XML的形式来配置。我还需要禁用试图使用基本HTTP身份验证进行身份验证的用户。因此,他们获得访问权限的唯一方法是在请求参数中提供用户名和密码。到目前为止,我的配置如下所示:

@Override
protected void configure(HttpSecurity http) throws Exception { 
    http
        .csrf().disable()
        .httpBasic().disable()
        .authorizeRequests()
            .antMatchers("/test**").authenticated()
            .antMatchers("/pass**").permitAll();            

}

我不确定如何在请求参数中查找凭据。

不要使用这种方法,因为密码太公开。至少,将它们放在请求正文中并使用HTTPS。为了您自身的安全,不要禁用csrf,因为它保证只有包含由您的应用程序生成的csrf令牌的请求,并阻止其他请求。您可以从官方网站访问详细文档。我无法选择如何发送用户名和密码-因为第三方公司正在发送用户名和密码,并且不会更改(即使我也不喜欢),而且我不相信我可以使用csrf令牌,因为它是一种类似API的访问,我的应用程序永远不会发送任何内容。