Use Version Catalog with Latest Dependency Versions

Closes gh-195 gh-196 gh-197 gh-198 gh-199 gh-200 gh-201 gh-202 gh-203 gh-204 gh-205 gh-206
This commit is contained in:
Rob Winch
2024-05-29 15:24:12 -05:00
parent 1456f03b61
commit aa81c15f97
14 changed files with 46 additions and 37 deletions

View File

@@ -22,7 +22,7 @@ ext {
}
dependencies {
implementation(platform("org.springframework:spring-framework-bom:${springFrameworkVersion}"))
implementation(platform(libs.spring.framework.bom))
implementation("org.springframework:spring-core")
implementation 'org.asciidoctor:asciidoctor-gradle-jvm:3.3.2'
implementation 'org.jfrog.buildinfo:build-info-extractor-gradle:4.29.0'

View File

@@ -0,0 +1 @@
../../gradle/libs.versions.toml

View File

@@ -1,13 +1,3 @@
version=2.1.0-SNAPSHOT
springBootVersion=3.1.11
springFrameworkVersion=6.0.20
springSecurityVersion=6.1.9
junitVersion=5.9.1
mockitoVersion=4.8.1
assertjVersion=3.23.1
servletApiVersion=6.0.0
httpclient5Version=5.1.4
kerbyVersion=2.0.3
okhttp3Version=3.14.9
develocityVersion=3.17.2
springGeConventionsVersion=0.0.17

15
gradle/libs.versions.toml Normal file
View File

@@ -0,0 +1,15 @@
[libraries]
assertj-core='org.assertj:assertj-core:3.26.0'
httpclient5="org.apache.httpcomponents.client5:httpclient5:5.3.1"
junit-bom='org.junit:junit-bom:5.10.2'
kerby='org.apache.kerby:kerb-simplekdc:2.0.3'
mockito-bom='org.mockito:mockito-bom:5.12.0'
okhttp3='com.squareup.okhttp3:okhttp:3.14.9'
okhttp3-mockwebserver='com.squareup.okhttp3:mockwebserver:3.14.9'
servlet-api='jakarta.servlet:jakarta.servlet-api:6.0.0'
spring-framework-bom='org.springframework:spring-framework-bom:6.1.8'
spring-security-bom='org.springframework.security:spring-security-bom:6.3.0'
[plugins]
spring-boot='org.springframework.boot:3.3.0'
dependency-management='io.spring.dependency-management:1.1.5'

View File

@@ -11,8 +11,6 @@ pluginManagement {
}
}
plugins {
id 'org.springframework.boot' version "$springBootVersion"
id 'io.spring.dependency-management' version '1.1.0'
id 'com.gradle.develocity' version "$develocityVersion"
id 'io.spring.ge.conventions' version "$springGeConventionsVersion"
}

View File

@@ -10,7 +10,7 @@ dependencies {
implementation project(':spring-security-kerberos-web')
// api('org.apache.httpcomponents:httpclient')
api('org.springframework:spring-web')
api('org.apache.httpcomponents.client5:httpclient5')
api libs.httpclient5
optional 'org.springframework.security:spring-security-ldap'
// api('org.springframework.security:spring-security-web')
// api('jakarta.servlet:jakarta.servlet-api')
@@ -19,6 +19,6 @@ dependencies {
testImplementation 'org.springframework.security:spring-security-config'
testImplementation 'org.junit.jupiter:junit-jupiter'
testImplementation 'org.mockito:mockito-junit-jupiter'
testImplementation 'org.assertj:assertj-core'
testImplementation 'com.squareup.okhttp3:mockwebserver'
testImplementation libs.assertj.core
testImplementation libs.okhttp3.mockwebserver
}

View File

@@ -43,6 +43,7 @@ import org.apache.hc.client5.http.auth.Credentials;
import org.apache.hc.client5.http.auth.KerberosConfig;
import org.apache.hc.client5.http.auth.StandardAuthScheme;
import org.apache.hc.client5.http.classic.HttpClient;
import org.apache.hc.client5.http.config.RequestConfig;
import org.apache.hc.client5.http.impl.auth.BasicCredentialsProvider;
import org.apache.hc.client5.http.impl.auth.SPNegoSchemeFactory;
import org.apache.hc.client5.http.impl.classic.CloseableHttpClient;
@@ -199,6 +200,10 @@ public class KerberosRestTemplate extends RestTemplate {
.build();
builder.setDefaultAuthSchemeRegistry(authSchemeRegistry);
RequestConfig negotiate = RequestConfig.copy(RequestConfig.DEFAULT)
.setTargetPreferredAuthSchemes(Set.of(StandardAuthScheme.SPNEGO, StandardAuthScheme.KERBEROS))
.build();
builder.setDefaultRequestConfig(negotiate);
BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
credentialsProvider.setCredentials(new AuthScope(null, -1), credentials);
builder.setDefaultCredentialsProvider(credentialsProvider);

View File

@@ -9,5 +9,5 @@ dependencies {
api('org.springframework.security:spring-security-core')
testImplementation 'org.junit.jupiter:junit-jupiter'
testImplementation 'org.mockito:mockito-junit-jupiter'
testImplementation 'org.assertj:assertj-core'
testImplementation libs.assertj.core
}

View File

@@ -9,16 +9,16 @@ javaPlatform {
description = 'Spring Security Kerberos Management'
dependencies {
api platform("org.springframework:spring-framework-bom:$springFrameworkVersion")
api platform("org.springframework.security:spring-security-bom:$springSecurityVersion")
api platform("org.junit:junit-bom:$junitVersion")
api platform("org.mockito:mockito-bom:$mockitoVersion")
api platform(libs.spring.framework.bom)
api platform(libs.spring.security.bom)
api platform(libs.junit.bom)
api platform(libs.mockito.bom)
constraints {
api "org.apache.httpcomponents.client5:httpclient5:$httpclient5Version"
api "org.assertj:assertj-core:$assertjVersion"
api "jakarta.servlet:jakarta.servlet-api:$servletApiVersion"
api "org.apache.kerby:kerb-simplekdc:$kerbyVersion"
api "com.squareup.okhttp3:mockwebserver:$okhttp3Version"
api "com.squareup.okhttp3:okhttp:$okhttp3Version"
api libs.httpclient5
api libs.assertj.core
api libs.servlet.api
api libs.kerby
api libs.okhttp3.mockwebserver
api libs.okhttp3
}
}

View File

@@ -1,7 +1,7 @@
plugins {
id 'org.springframework.security.kerberos.sample'
id 'org.springframework.boot'
id 'io.spring.dependency-management'
alias libs.plugins.spring.boot
alias libs.plugins.dependency.management
}
description = 'Security Client RestTemplate Sample'

View File

@@ -1,7 +1,7 @@
plugins {
id 'org.springframework.security.kerberos.sample'
id 'org.springframework.boot'
id 'io.spring.dependency-management'
alias libs.plugins.spring.boot
alias libs.plugins.dependency.management
}
description = 'Security Server Client Auth Sample'

View File

@@ -1,7 +1,7 @@
plugins {
id 'org.springframework.security.kerberos.sample'
id 'org.springframework.boot'
id 'io.spring.dependency-management'
alias libs.plugins.spring.boot
alias libs.plugins.dependency.management
}
description = 'Security Server Spnego and Form Auth Sample'

View File

@@ -1,7 +1,7 @@
plugins {
id 'org.springframework.security.kerberos.sample'
id 'org.springframework.boot'
id 'io.spring.dependency-management'
alias libs.plugins.spring.boot
alias libs.plugins.dependency.management
}
description = 'Security Server Win Auth Sample'

View File

@@ -8,10 +8,10 @@ dependencies {
management platform(project(":spring-security-kerberos-management"))
implementation project(':spring-security-kerberos-core')
api('org.springframework.security:spring-security-web')
api('jakarta.servlet:jakarta.servlet-api')
api(libs.servlet.api)
testImplementation 'org.springframework:spring-test'
testImplementation 'org.springframework.security:spring-security-config'
testImplementation 'org.junit.jupiter:junit-jupiter'
testImplementation 'org.mockito:mockito-junit-jupiter'
testImplementation 'org.assertj:assertj-core'
testImplementation libs.assertj.core
}