Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[#42] Adapt "minbox-security" component #43

Merged
merged 1 commit into from Jul 22, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
5 changes: 5 additions & 0 deletions api-boot-project/api-boot-autoconfigure/pom.xml
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
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
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
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
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);
}
}
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
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
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.