Compare commits
9 Commits
uoa-author
...
master
Author | SHA1 | Date |
---|---|---|
Konstantinos Triantafyllou | e91a0e6af8 | |
Konstantinos Triantafyllou | b84f29c803 | |
Konstantinos Triantafyllou | 695c02355c | |
Konstantinos Triantafyllou | 93fd8a651b | |
Konstantinos Triantafyllou | 78ad75ca3f | |
Konstantinos Triantafyllou | 0e4d58a284 | |
Konstantinos Triantafyllou | e20cc9559d | |
Konstantinos Triantafyllou | da334c1b97 | |
Konstantinos Triantafyllou | 30f98cf9ff |
41
pom.xml
41
pom.xml
|
@ -3,48 +3,24 @@
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>eu.dnetlib</groupId>
|
<groupId>eu.dnetlib</groupId>
|
||||||
<artifactId>dnet45-parent</artifactId>
|
<artifactId>uoa-spring-boot-parent</artifactId>
|
||||||
<version>1.0.0</version>
|
<version>1.0.0</version>
|
||||||
</parent>
|
</parent>
|
||||||
<artifactId>uoa-authorization-library</artifactId>
|
<artifactId>uoa-authorization-library</artifactId>
|
||||||
<version>2.1.2</version>
|
<version>2.1.5-SNAPSHOT</version>
|
||||||
<packaging>jar</packaging>
|
<packaging>jar</packaging>
|
||||||
<name>uoa-authorization-library</name>
|
<name>uoa-authorization-library</name>
|
||||||
<scm>
|
<scm>
|
||||||
<url>https://code-repo.d4science.org/MaDgIK/authorization-library</url>
|
|
||||||
<connection>scm:git:gitea@code-repo.d4science.org:MaDgIK/authorization-library.git</connection>
|
|
||||||
<developerConnection>scm:git:gitea@code-repo.d4science.org:MaDgIK/authorization-library.git</developerConnection>
|
<developerConnection>scm:git:gitea@code-repo.d4science.org:MaDgIK/authorization-library.git</developerConnection>
|
||||||
<tag>uoa-authorization-library-2.1.2</tag>
|
<tag>HEAD</tag>
|
||||||
</scm>
|
</scm>
|
||||||
<properties>
|
<properties>
|
||||||
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
||||||
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
||||||
<java.version>1.8</java.version>
|
|
||||||
<timestampAuthorizationLibrary>${maven.build.timestamp}</timestampAuthorizationLibrary>
|
<timestampAuthorizationLibrary>${maven.build.timestamp}</timestampAuthorizationLibrary>
|
||||||
<maven.build.timestamp.format>E MMM dd HH:mm:ss z yyyy</maven.build.timestamp.format>
|
<maven.build.timestamp.format>E MMM dd HH:mm:ss z yyyy</maven.build.timestamp.format>
|
||||||
</properties>
|
</properties>
|
||||||
<dependencyManagement>
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-dependencies</artifactId>
|
|
||||||
<version>1.5.8.RELEASE</version>
|
|
||||||
<type>pom</type>
|
|
||||||
<scope>import</scope>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
</dependencyManagement>
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-web</artifactId>
|
|
||||||
<exclusions>
|
|
||||||
<exclusion>
|
|
||||||
<groupId> org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-starter-logging</artifactId>
|
|
||||||
</exclusion>
|
|
||||||
</exclusions>
|
|
||||||
</dependency>
|
|
||||||
<!-- Starter for using Spring Security -->
|
<!-- Starter for using Spring Security -->
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.springframework.boot</groupId>
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
@ -74,11 +50,6 @@
|
||||||
</exclusion>
|
</exclusion>
|
||||||
</exclusions>
|
</exclusions>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<groupId>com.google.code.gson</groupId>
|
|
||||||
<artifactId>gson</artifactId>
|
|
||||||
<version>2.8.2</version>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
</dependencies>
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
|
@ -115,11 +86,5 @@
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
<finalName>uoa-authorization-library</finalName>
|
<finalName>uoa-authorization-library</finalName>
|
||||||
<resources>
|
|
||||||
<resource>
|
|
||||||
<directory>src/main/resources</directory>
|
|
||||||
<filtering>true</filtering>
|
|
||||||
</resource>
|
|
||||||
</resources>
|
|
||||||
</build>
|
</build>
|
||||||
</project>
|
</project>
|
||||||
|
|
|
@ -2,8 +2,24 @@ package eu.dnetlib.uoaauthorizationlibrary.configuration;
|
||||||
|
|
||||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||||
import org.springframework.context.annotation.*;
|
import org.springframework.context.annotation.*;
|
||||||
|
import org.springframework.web.servlet.config.annotation.CorsRegistry;
|
||||||
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
|
||||||
|
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
|
||||||
|
|
||||||
@Configuration
|
@Configuration
|
||||||
@EnableConfigurationProperties({SecurityConfig.class, GlobalVars.class})
|
@EnableConfigurationProperties({SecurityConfig.class, GlobalVars.class})
|
||||||
@ComponentScan(basePackages = { "eu.dnetlib.uoaauthorizationlibrary" })
|
@ComponentScan(basePackages = { "eu.dnetlib.uoaauthorizationlibrary" })
|
||||||
public class AuthorizationConfiguration { }
|
public class AuthorizationConfiguration {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public WebMvcConfigurer corsConfigurer() {
|
||||||
|
return new WebMvcConfigurerAdapter() {
|
||||||
|
@Override
|
||||||
|
public void addCorsMappings(CorsRegistry registry) {
|
||||||
|
registry.addMapping("/**")
|
||||||
|
.allowedMethods("GET", "POST", "PUT", "DELETE", "HEAD", "OPTIONS")
|
||||||
|
.allowCredentials(true);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
package eu.dnetlib.uoaauthorizationlibrary.configuration;
|
||||||
|
|
||||||
|
import eu.dnetlib.uoaauthorizationlibrary.security.AuthorizationService;
|
||||||
|
import org.springframework.context.annotation.ComponentScan;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
|
||||||
|
@Configuration
|
||||||
|
@ComponentScan(
|
||||||
|
basePackageClasses = {AuthorizationService.class}
|
||||||
|
)
|
||||||
|
public class IgnoreSecurityConfiguration {
|
||||||
|
}
|
|
@ -2,7 +2,8 @@ package eu.dnetlib.uoaauthorizationlibrary.controllers;
|
||||||
|
|
||||||
import eu.dnetlib.uoaauthorizationlibrary.configuration.GlobalVars;
|
import eu.dnetlib.uoaauthorizationlibrary.configuration.GlobalVars;
|
||||||
import eu.dnetlib.uoaauthorizationlibrary.configuration.SecurityConfig;
|
import eu.dnetlib.uoaauthorizationlibrary.configuration.SecurityConfig;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.security.access.prepost.PreAuthorize;
|
import org.springframework.security.access.prepost.PreAuthorize;
|
||||||
import org.springframework.web.bind.annotation.CrossOrigin;
|
import org.springframework.web.bind.annotation.CrossOrigin;
|
||||||
|
@ -17,7 +18,7 @@ import java.util.Map;
|
||||||
@CrossOrigin(origins = "*")
|
@CrossOrigin(origins = "*")
|
||||||
@RequestMapping("/authorization-library")
|
@RequestMapping("/authorization-library")
|
||||||
public class AuthorizationLibraryCheckDeployController {
|
public class AuthorizationLibraryCheckDeployController {
|
||||||
private final Logger log = Logger.getLogger(this.getClass());
|
private final Logger log = LogManager.getLogger(this.getClass());
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
private SecurityConfig securityConfig;
|
private SecurityConfig securityConfig;
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
package eu.dnetlib.uoaauthorizationlibrary.redis.configuration;
|
package eu.dnetlib.uoaauthorizationlibrary.redis.configuration;
|
||||||
|
|
||||||
import eu.dnetlib.uoaauthorizationlibrary.configuration.SecurityConfig;
|
import eu.dnetlib.uoaauthorizationlibrary.configuration.SecurityConfig;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
@ -15,7 +16,7 @@ import org.springframework.session.web.http.DefaultCookieSerializer;
|
||||||
public class RedisConfig {
|
public class RedisConfig {
|
||||||
|
|
||||||
private final SecurityConfig securityConfig;
|
private final SecurityConfig securityConfig;
|
||||||
private static final Logger logger = Logger.getLogger(RedisConfig.class);
|
private static final Logger logger = LogManager.getLogger(RedisConfig.class);
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
public RedisConfig(SecurityConfig securityConfig) {this.securityConfig = securityConfig;}
|
public RedisConfig(SecurityConfig securityConfig) {this.securityConfig = securityConfig;}
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
package eu.dnetlib.uoaauthorizationlibrary.security;
|
package eu.dnetlib.uoaauthorizationlibrary.security;
|
||||||
|
|
||||||
import org.apache.log4j.Logger;
|
|
||||||
import org.mitre.openid.connect.model.OIDCAuthenticationToken;
|
import org.mitre.openid.connect.model.OIDCAuthenticationToken;
|
||||||
import org.springframework.security.core.Authentication;
|
import org.springframework.security.core.Authentication;
|
||||||
import org.springframework.security.core.GrantedAuthority;
|
import org.springframework.security.core.GrantedAuthority;
|
||||||
|
@ -13,7 +12,6 @@ import java.util.stream.Collectors;
|
||||||
|
|
||||||
@Component(value = "AuthorizationService")
|
@Component(value = "AuthorizationService")
|
||||||
public class AuthorizationService {
|
public class AuthorizationService {
|
||||||
private final Logger log = Logger.getLogger(this.getClass());
|
|
||||||
|
|
||||||
public final String PORTAL_ADMIN = "PORTAL_ADMINISTRATOR";
|
public final String PORTAL_ADMIN = "PORTAL_ADMINISTRATOR";
|
||||||
public final String ANONYMOUS_USER = "ROLE_ANONYMOUS";
|
public final String ANONYMOUS_USER = "ROLE_ANONYMOUS";
|
||||||
|
@ -26,6 +24,9 @@ public class AuthorizationService {
|
||||||
} else if (type.equals("ri") && communityMap) {
|
} else if (type.equals("ri") && communityMap) {
|
||||||
type = "community";
|
type = "community";
|
||||||
}
|
}
|
||||||
|
while (type.contains(".")) {
|
||||||
|
type = type.replace(".", "_");
|
||||||
|
}
|
||||||
return type;
|
return type;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,16 +0,0 @@
|
||||||
package eu.dnetlib.uoaauthorizationlibrary.security;
|
|
||||||
|
|
||||||
import org.springframework.context.annotation.Configuration;
|
|
||||||
import org.springframework.web.servlet.config.annotation.CorsRegistry;
|
|
||||||
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
|
|
||||||
|
|
||||||
@Configuration
|
|
||||||
public class CorsConfig extends WebMvcConfigurerAdapter {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void addCorsMappings(CorsRegistry registry) {
|
|
||||||
registry.addMapping("/**")
|
|
||||||
.allowedMethods("GET", "POST", "PUT", "DELETE", "HEAD", "OPTIONS")
|
|
||||||
.allowCredentials(true);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,7 +1,6 @@
|
||||||
package eu.dnetlib.uoaauthorizationlibrary.stateless.security;
|
package eu.dnetlib.uoaauthorizationlibrary.stateless.security;
|
||||||
|
|
||||||
import eu.dnetlib.uoaauthorizationlibrary.security.OpenAIREAuthentication;
|
import eu.dnetlib.uoaauthorizationlibrary.security.OpenAIREAuthentication;
|
||||||
import org.apache.log4j.Logger;
|
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.security.core.context.SecurityContextHolder;
|
import org.springframework.security.core.context.SecurityContextHolder;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
@ -14,7 +13,6 @@ import java.io.IOException;
|
||||||
public class AuthorizationFilter implements Filter {
|
public class AuthorizationFilter implements Filter {
|
||||||
|
|
||||||
private final AuthorizationProvider authorizationProvider;
|
private final AuthorizationProvider authorizationProvider;
|
||||||
private final Logger log = Logger.getLogger(this.getClass());
|
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
AuthorizationFilter(AuthorizationProvider authorizationProvider) {
|
AuthorizationFilter(AuthorizationProvider authorizationProvider) {
|
||||||
|
|
|
@ -1,7 +1,8 @@
|
||||||
package eu.dnetlib.uoaauthorizationlibrary.stateless.utils;
|
package eu.dnetlib.uoaauthorizationlibrary.stateless.utils;
|
||||||
|
|
||||||
import eu.dnetlib.uoaauthorizationlibrary.configuration.SecurityConfig;
|
import eu.dnetlib.uoaauthorizationlibrary.configuration.SecurityConfig;
|
||||||
import org.apache.log4j.Logger;
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
import org.apache.logging.log4j.Logger;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.http.*;
|
import org.springframework.http.*;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
@ -15,7 +16,7 @@ import java.util.Collections;
|
||||||
|
|
||||||
@Component
|
@Component
|
||||||
public class AuthorizationUtils {
|
public class AuthorizationUtils {
|
||||||
private final Logger log = Logger.getLogger(this.getClass());
|
private final Logger log = LogManager.getLogger(this.getClass());
|
||||||
private final SecurityConfig securityConfig;
|
private final SecurityConfig securityConfig;
|
||||||
|
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
Loading…
Reference in New Issue