Skip to content

Commit

Permalink
[minbox-projects#42] Adapt "minbox-security" component
Browse files Browse the repository at this point in the history
  • Loading branch information
hengboy committed Jul 22, 2020
1 parent 0ad24c3 commit 2bb9ea3
Show file tree
Hide file tree
Showing 19 changed files with 38 additions and 818 deletions.
5 changes: 5 additions & 0 deletions api-boot-project/api-boot-autoconfigure/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -151,6 +151,11 @@
<artifactId>minbox-oauth</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.minbox.framework</groupId>
<artifactId>minbox-security</artifactId>
<optional>true</optional>
</dependency>


<!--Others-->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
package org.minbox.framework.api.boot.autoconfigure.oauth;

import org.minbox.framework.api.boot.autoconfigure.security.ApiBootSecurityProperties;
import org.minbox.framework.api.boot.secuirty.SecurityUser;
import org.minbox.framework.security.SecurityUser;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Configuration;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,9 @@
package org.minbox.framework.api.boot.autoconfigure.security;

import lombok.Data;
import org.minbox.framework.api.boot.secuirty.SecurityUser;
import org.minbox.framework.security.SecurityUser;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Configuration;
import org.minbox.framework.api.boot.secuirty.delegate.ApiBootStoreDelegate;

import java.util.ArrayList;
import java.util.List;
Expand Down Expand Up @@ -86,7 +85,7 @@ public class ApiBootSecurityProperties {
* the data in the "api_boot_user_info" table will be read by default for authentication
* <p>
* If the value is set to false,
* you need to implement the {@link ApiBootStoreDelegate} interface to complete the custom method of reading user data
* you need to implement the {@link org.minbox.framework.security.delegate.SecurityStoreDelegate} interface to complete the custom method of reading user data
*/
private boolean enableDefaultStoreDelegate = true;
/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@

package org.minbox.framework.api.boot.autoconfigure.security;

import org.minbox.framework.api.boot.secuirty.ApiBootWebSecurityConfiguration;
import org.minbox.framework.api.boot.secuirty.handler.ApiBootDefaultAccessDeniedHandler;
import org.minbox.framework.api.boot.secuirty.point.ApiBootDefaultAuthenticationEntryPoint;
import org.minbox.framework.security.WebSecurityConfiguration;
import org.minbox.framework.security.handler.DefaultSecurityAccessDeniedHandler;
import org.minbox.framework.security.point.DefaultSecurityAuthenticationEntryPoint;
import org.springframework.security.web.AuthenticationEntryPoint;
import org.springframework.security.web.access.AccessDeniedHandler;
import org.springframework.util.ObjectUtils;
Expand All @@ -33,7 +33,7 @@
* @see ApiBootWebSecurityMemoryAutoConfiguration
* @see ApiBootWebSecurityJdbcAutoConfiguration
*/
public class ApiBootWebSecurityAutoConfiguration extends ApiBootWebSecurityConfiguration {
public class ApiBootWebSecurityAutoConfiguration extends WebSecurityConfiguration {

protected ApiBootSecurityProperties apiBootSecurityProperties;
private AccessDeniedHandler accessDeniedHandler;
Expand Down Expand Up @@ -63,12 +63,12 @@ protected List<String> configureIgnoreUrls() {

@Override
protected AccessDeniedHandler getAccessDeniedHandler() {
return ObjectUtils.isEmpty(this.accessDeniedHandler) ? new ApiBootDefaultAccessDeniedHandler() : this.accessDeniedHandler;
return ObjectUtils.isEmpty(this.accessDeniedHandler) ? new DefaultSecurityAccessDeniedHandler() : this.accessDeniedHandler;
}

@Override
protected AuthenticationEntryPoint getAuthenticationEntryPoint() {
return ObjectUtils.isEmpty(this.authenticationEntryPoint) ? new ApiBootDefaultAuthenticationEntryPoint() : this.authenticationEntryPoint;
return ObjectUtils.isEmpty(this.authenticationEntryPoint) ? new DefaultSecurityAuthenticationEntryPoint() : this.authenticationEntryPoint;
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@

package org.minbox.framework.api.boot.autoconfigure.security;

import org.minbox.framework.api.boot.secuirty.ApiBootWebSecurityConfiguration;
import org.minbox.framework.api.boot.secuirty.delegate.ApiBootDefaultStoreDelegate;
import org.minbox.framework.api.boot.secuirty.delegate.ApiBootStoreDelegate;
import org.minbox.framework.api.boot.secuirty.userdetails.ApiBootUserDetailsService;
import org.minbox.framework.security.WebSecurityConfiguration;
import org.minbox.framework.security.delegate.DefaultSecurityStoreDelegate;
import org.minbox.framework.security.delegate.SecurityStoreDelegate;
import org.minbox.framework.security.userdetails.SecurityUserDetailsService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.ObjectProvider;
Expand Down Expand Up @@ -50,7 +50,7 @@
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
@EnableConfigurationProperties(ApiBootSecurityProperties.class)
@ConditionalOnClass(ApiBootWebSecurityConfiguration.class)
@ConditionalOnClass(WebSecurityConfiguration.class)
@ConditionalOnBean(DataSource.class)
@ConditionalOnProperty(prefix = API_BOOT_SECURITY_PREFIX, name = "away", havingValue = "jdbc")
@AutoConfigureAfter(DataSourceAutoConfiguration.class)
Expand All @@ -68,18 +68,18 @@ public ApiBootWebSecurityJdbcAutoConfiguration(ApiBootSecurityProperties apiBoot
@Override
@Bean
protected UserDetailsService userDetailsService() {
return new ApiBootUserDetailsService();
return new SecurityUserDetailsService();
}

/**
* Use the default user authentication storage delegate class
*
* @param dataSource DataSource
* @return The default {@link ApiBootStoreDelegate}
* @return The default {@link SecurityStoreDelegate}
*/
@Bean
@ConditionalOnProperty(prefix = API_BOOT_SECURITY_PREFIX, name = "enable-default-store-delegate", havingValue = "true", matchIfMissing = true)
public ApiBootStoreDelegate apiBootStoreDelegate(DataSource dataSource) {
return new ApiBootDefaultStoreDelegate(dataSource);
public SecurityStoreDelegate apiBootStoreDelegate(DataSource dataSource) {
return new DefaultSecurityStoreDelegate(dataSource);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@

package org.minbox.framework.api.boot.autoconfigure.security;

import org.minbox.framework.api.boot.secuirty.ApiBootWebSecurityConfiguration;
import org.minbox.framework.api.boot.secuirty.SecurityUser;
import org.minbox.framework.security.SecurityUser;
import org.minbox.framework.security.WebSecurityConfiguration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.ObjectProvider;
Expand Down Expand Up @@ -49,7 +49,7 @@
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
@EnableConfigurationProperties(ApiBootSecurityProperties.class)
@ConditionalOnClass(ApiBootWebSecurityConfiguration.class)
@ConditionalOnClass(WebSecurityConfiguration.class)
@ConditionalOnProperty(prefix = API_BOOT_SECURITY_PREFIX, name = "away", havingValue = "memory", matchIfMissing = true)
public class ApiBootWebSecurityMemoryAutoConfiguration extends ApiBootWebSecurityAutoConfiguration {
/**
Expand Down

This file was deleted.

6 changes: 6 additions & 0 deletions api-boot-project/api-boot-dependencies/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
<minbox-datasource-switch.version>1.0.0.RELEASE</minbox-datasource-switch.version>
<minbox-sequence.version>1.0.0.RELEASE</minbox-sequence.version>
<minbox-oauth.version>1.0.0.RELEASE</minbox-oauth.version>
<minbox-security.version>1.0.0.RELEASE</minbox-security.version>
<minbox-mongo-client-settings.version>1.0.0.RELEASE</minbox-mongo-client-settings.version>
<code.builder.core.version>1.0.5.RELEASE</code.builder.core.version>
<mybatis-enhance.version>1.1.3.RELEASE</mybatis-enhance.version>
Expand Down Expand Up @@ -194,6 +195,11 @@
<artifactId>minbox-oauth</artifactId>
<version>${minbox-oauth.version}</version>
</dependency>
<dependency>
<groupId>org.minbox.framework</groupId>
<artifactId>minbox-security</artifactId>
<version>${minbox-security.version}</version>
</dependency>


<!--ApiBoot Dependencies-->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,6 @@
<groupId>org.minbox.framework</groupId>
<artifactId>api-boot-starter</artifactId>
</dependency>
<!--spring boot security-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<!--security oauth2-->
<dependency>
<groupId>org.springframework.security.oauth</groupId>
Expand All @@ -58,6 +53,10 @@
<groupId>org.minbox.framework</groupId>
<artifactId>minbox-oauth</artifactId>
</dependency>
<dependency>
<groupId>org.minbox.framework</groupId>
<artifactId>minbox-security</artifactId>
</dependency>
</dependencies>

</project>

This file was deleted.

0 comments on commit 2bb9ea3

Please sign in to comment.