Untitled

<Eureka 서버 역할>

<Eureka 서버 생성>

server.port=8761

eureka.client.register-with-euerka=false
eureka.client.fetch-registry=false
 @Configuration
@EnableWebSecurity
public class SecurityConfig {

    // 인코딩
    @Bean
    public BCryptPasswordEncoder bCryptPasswordEncoder() {

        return new BCryptPasswordEncoder();
    }

    // 시큐리티 필터
    @Bean
    public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
        http.csrf((auth) -> auth.disable());
        // 모든 경로에 대해 특정 권한 필요
        http.authorizeHttpRequests((auth) -> auth.anyRequest().authenticated());
        // httpBasic 통한 로그인
        http.httpBasic(Customizer.withDefaults());

        return http.build();
    }

    // 이 내부에 접근할 수 있는 id, pw
    // 한두개이기 때문에 인메모리로 저장
    @Bean
    public UserDetailsService userDetailsService() {
        UserDetails user1 = User.builder()
                .username("admin")
                .password(bCryptPasswordEncoder().encode("1234"))
                .roles("ADMIN")
                .build();

        return new InMemoryUserDetailsManager(user1);
    }
}

접속 후 eureka 대시보드. 현재는 연결된 인스턴스 없음.

Untitled

<Eureka 클라이언트>