From 6395910e0da744b4b88c319b9644a37937c5c71b Mon Sep 17 00:00:00 2001 From: fengyongwei <297115770@qq.com> Date: Fri, 18 Jan 2019 22:23:59 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0roncoo-education-server-admin?= =?UTF-8?q?=E5=B7=A5=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 14 ++++ roncoo-education-server-admin/pom.xml | 77 +++++++++++++++++++ .../server/admin/ServerAdminApplication.java | 21 +++++ .../admin/config/SecuritySecureConfig.java | 29 +++++++ .../src/main/resources/bootstrap.properties | 29 +++++++ .../src/main/resources/logback-roncoo.xml | 71 +++++++++++++++++ 6 files changed, 241 insertions(+) create mode 100644 roncoo-education-server-admin/pom.xml create mode 100644 roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/ServerAdminApplication.java create mode 100644 roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/config/SecuritySecureConfig.java create mode 100644 roncoo-education-server-admin/src/main/resources/bootstrap.properties create mode 100644 roncoo-education-server-admin/src/main/resources/logback-roncoo.xml diff --git a/pom.xml b/pom.xml index 3cd74ed8..8e49cd5c 100644 --- a/pom.xml +++ b/pom.xml @@ -185,6 +185,18 @@ itextpdf 5.5.13 + + + + de.codecentric + spring-boot-admin-server-cloud + ${de.codecentric.version} + + + de.codecentric + spring-boot-admin-server-ui + ${de.codecentric.version} + @@ -259,6 +271,8 @@ roncoo-education-server-eureka roncoo-education-server-config + + roncoo-education-server-admin roncoo-education-util diff --git a/roncoo-education-server-admin/pom.xml b/roncoo-education-server-admin/pom.xml new file mode 100644 index 00000000..b48c7320 --- /dev/null +++ b/roncoo-education-server-admin/pom.xml @@ -0,0 +1,77 @@ + + 4.0.0 + + com.roncoo + roncoo-education + 1.0-SNAPSHOT + + + roncoo-education-server-admin + + + + + + de.codecentric + spring-boot-admin-server-cloud + + + de.codecentric + spring-boot-admin-server-ui + + + + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + + + org.springframework.cloud + spring-cloud-starter-config + + + + + org.springframework.boot + spring-boot-starter-security + + + + org.springframework.boot + spring-boot-starter-web + + + + + org.springframework.boot + spring-boot-devtools + + + + org.jolokia + jolokia-core + + + + + server-admin + + + + org.springframework.boot + spring-boot-maven-plugin + + + + repackage + + + + + true + + + + + \ No newline at end of file diff --git a/roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/ServerAdminApplication.java b/roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/ServerAdminApplication.java new file mode 100644 index 00000000..2af9d1e2 --- /dev/null +++ b/roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/ServerAdminApplication.java @@ -0,0 +1,21 @@ +/** + * Copyright 2015-现在 广州市领课网络科技有限公司 + */ +package com.roncoo.education.server.admin; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.cloud.client.discovery.EnableDiscoveryClient; + +import de.codecentric.boot.admin.server.config.EnableAdminServer; + +@EnableAdminServer +@EnableDiscoveryClient +@SpringBootApplication +public class ServerAdminApplication { + + public static void main(String[] args) { + SpringApplication.run(ServerAdminApplication.class, args); + } + +} diff --git a/roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/config/SecuritySecureConfig.java b/roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/config/SecuritySecureConfig.java new file mode 100644 index 00000000..a2ba7f2a --- /dev/null +++ b/roncoo-education-server-admin/src/main/java/com/roncoo/education/server/admin/config/SecuritySecureConfig.java @@ -0,0 +1,29 @@ +package com.roncoo.education.server.admin.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.security.config.annotation.web.builders.HttpSecurity; +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; +import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler; +import org.springframework.security.web.csrf.CookieCsrfTokenRepository; + +import de.codecentric.boot.admin.server.config.AdminServerProperties; + +@Configuration +public class SecuritySecureConfig extends WebSecurityConfigurerAdapter { + private final String adminContextPath; + + public SecuritySecureConfig(AdminServerProperties adminServerProperties) { + this.adminContextPath = adminServerProperties.getContextPath(); + } + + @Override + protected void configure(HttpSecurity http) throws Exception { + // @formatter:off + SavedRequestAwareAuthenticationSuccessHandler successHandler = new SavedRequestAwareAuthenticationSuccessHandler(); + successHandler.setTargetUrlParameter("redirectTo"); + successHandler.setDefaultTargetUrl(adminContextPath + "/"); + + http.authorizeRequests().antMatchers(adminContextPath + "/assets/**").permitAll().antMatchers(adminContextPath + "/login").permitAll().anyRequest().authenticated().and().formLogin().loginPage(adminContextPath + "/login").successHandler(successHandler).and().logout().logoutUrl(adminContextPath + "/logout").and().httpBasic().and().csrf().csrfTokenRepository(CookieCsrfTokenRepository.withHttpOnlyFalse()).ignoringAntMatchers(adminContextPath + "/instances", adminContextPath + "/actuator/**"); + // @formatter:on + } +} \ No newline at end of file diff --git a/roncoo-education-server-admin/src/main/resources/bootstrap.properties b/roncoo-education-server-admin/src/main/resources/bootstrap.properties new file mode 100644 index 00000000..bdc4943a --- /dev/null +++ b/roncoo-education-server-admin/src/main/resources/bootstrap.properties @@ -0,0 +1,29 @@ +# security +spring.security.user.name=roncoo +spring.security.user.password=123456 + +# info +info.eureka.host01=192.168.1.181 +info.eureka.host02=192.168.1.181 +info.eureka.port01=5761 +info.eureka.port02=5762 + +# profile +spring.profiles.active=test + +# eureka +eureka.client.serviceUrl.defaultZone=http://${spring.security.user.name}:${spring.security.user.password}@${info.eureka.host01}:${info.eureka.port01}/eureka/,http://${spring.security.user.name}:${spring.security.user.password}@${info.eureka.host02}:${info.eureka.port02}/eureka/ +eureka.instance.metadata-map.user.name=${spring.security.user.name} +eureka.instance.metadata-map.user.password=${spring.security.user.password} + +# server +server.port=5721 + +# application +spring.application.name=roncoo-education-server-admin + +# spring cloud config client +spring.cloud.config.profile=${spring.profiles.active} +spring.cloud.config.label=master +spring.cloud.config.discovery.enabled=true +spring.cloud.config.discovery.service-id=roncoo-education-server-config diff --git a/roncoo-education-server-admin/src/main/resources/logback-roncoo.xml b/roncoo-education-server-admin/src/main/resources/logback-roncoo.xml new file mode 100644 index 00000000..ed831f8f --- /dev/null +++ b/roncoo-education-server-admin/src/main/resources/logback-roncoo.xml @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + ${PATTERN} + + + + + + + + + + + + + ${PATTERN} + + + + + + ${FILE_PATH}/info + + + ${FILE_PATH}/info.%d{yyyy-MM-dd}.log + + 100 + + + + ${PATTERN} + + + + + + + + + + + + + ${FILE_PATH}/warn + + ${FILE_PATH}/warn.%d{yyyy-MM-dd}.log + + 100 + + + ${PATTERN} + + + + + + + + -- GitLab