要实现安全的Eureka客户端服务终端,可以使用以下解决方法:
org.springframework.cloud
spring-cloud-starter-netflix-eureka-client
org.springframework.cloud
spring-cloud-starter-security
spring:
application:
name: my-application
eureka:
client:
service-url:
defaultZone: http://localhost:8761/eureka/
@EnableWebSecurity
注解,启用Spring Security。例如:import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
@EnableWebSecurity
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
spring:
security:
user:
name: admin
password: password
eureka:
client:
service-url:
defaultZone: http://admin:password@localhost:8761/eureka/
import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication()
.withUser("admin").password("{noop}password").roles("ADMIN");
}
}
这样,Eureka客户端就可以通过安全认证与Eureka服务器进行通信,并且只有经过认证的客户端才能注册和发现服务。
上一篇:安全的动态成员访问
下一篇:安全的方法来动画CALayer