Могу ли я реализовать авторизацию Header из BasicAuth? - PullRequest
0 голосов
/ 03 июня 2018

Я новичок в Spring и реализовал BasicAuth, используя этот урок .Можно ли безболезненно реализовать заголовок авторизации вместо BasicAuth?Достаточно ли настройки SecurityConfig?Я строю веб-сервис.Это мой SecurityConfig, если он помогает

package com.example.infobip.config;

import com.example.infobip.IUrlService;
import com.example.infobip.repositories.UsersRepository;
import com.example.infobip.service.CustomUserDetailsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.crypto.password.PasswordEncoder;

@EnableWebSecurity
@EnableJpaRepositories(basePackageClasses = UsersRepository.class)
@Configuration
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {

    @Autowired
    private CustomUserDetailsService userDetailsService;
    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth.userDetailsService(userDetailsService).passwordEncoder(new PasswordEncoder() {
            @Override
            public String encode(CharSequence charSequence) {
                return charSequence.toString();
            }

            @Override
            public boolean matches(CharSequence charSequence, String s) {
                return true;
            }
        });
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.csrf().disable();
                http.authorizeRequests()
                .antMatchers("/statistic/**", "/register").authenticated()
                .anyRequest().permitAll()
                .and()
                .formLogin()
                .permitAll()
                .and()
                .logout()
                .permitAll();
    }
}

1 Ответ

0 голосов
/ 05 июня 2018

Я наконец сделал это!Я должен был добавить .httpBasicAuth () после http.csrf (). Disable ().Кроме того, этот урок очень помогает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...