2025-05-07 12:03:37 +01:00
|
|
|
plugins {
|
|
|
|
id 'java-library'
|
|
|
|
}
|
|
|
|
|
|
|
|
repositories {
|
|
|
|
maven { url = "https://build.shibboleth.net/maven/releases" }
|
|
|
|
}
|
|
|
|
|
|
|
|
java {
|
|
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
|
|
}
|
|
|
|
|
2025-05-13 13:39:39 +01:00
|
|
|
bootJar {
|
|
|
|
enabled = false
|
|
|
|
}
|
|
|
|
|
2025-05-09 14:16:34 +01:00
|
|
|
sourceSets {
|
|
|
|
main {
|
|
|
|
java {
|
2025-05-13 09:23:56 +01:00
|
|
|
if (System.getenv('ADDITIONAL_FEATURES') == 'false') {
|
2025-05-09 14:16:34 +01:00
|
|
|
exclude 'stirling/software/enterprise/security/UserAuthenticationFilter.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/UserBasedRateLimitingFilter.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/CustomAuthenticationSuccessHandler.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/CustomLogoutSuccessHandler.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/FirstLoginFilter.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/IPRateLimitingFilter.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/RateLimitResetScheduler.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/CustomAuthenticationFailureHandler.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/InitialSecuritySetup.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/configuration/**'
|
|
|
|
exclude 'stirling/software/enterprise/security/controller/**'
|
|
|
|
exclude 'stirling/software/enterprise/security/database/**'
|
|
|
|
exclude 'stirling/software/enterprise/security/oauth2/**'
|
|
|
|
exclude 'stirling/software/enterprise/security/saml2/**'
|
|
|
|
exclude 'stirling/software/enterprise/security/service/**'
|
|
|
|
exclude 'stirling/software/enterprise/security/session/**'
|
|
|
|
exclude 'stirling/software/enterprise/security/model/ApiKeyAuthenticationToken.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/model/AttemptCounter.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/model/Authority.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/model/BackupNotFoundException.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/model/PersistentLogin.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/model/SessionEntity.java'
|
|
|
|
exclude 'stirling/software/enterprise/security/model/User.java'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
test {
|
|
|
|
java {
|
2025-05-13 13:39:39 +01:00
|
|
|
if (System.getenv('ADDITIONAL_FEATURES') == 'false') {
|
2025-05-09 14:16:34 +01:00
|
|
|
exclude 'stirling/software/enterprise/security/**'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2025-05-07 12:03:37 +01:00
|
|
|
dependencies {
|
|
|
|
implementation project(':common')
|
|
|
|
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-jetty'
|
|
|
|
implementation 'io.swagger.core.v3:swagger-core-jakarta:2.2.30'
|
|
|
|
implementation 'com.posthog.java:posthog:1.2.0'
|
2025-05-09 14:16:34 +01:00
|
|
|
|
2025-05-09 16:48:48 +01:00
|
|
|
implementation 'com.bucket4j:bucket4j_jdk17-core:8.14.0' // https://mvnrepository.com/artifact/com.bucket4j/bucket4j_jdk17
|
2025-05-07 12:03:37 +01:00
|
|
|
implementation 'org.bouncycastle:bcprov-jdk18on:1.80'
|
|
|
|
|
2025-05-13 13:39:39 +01:00
|
|
|
if (System.getenv('ADDITIONAL_FEATURES') == 'true') {
|
|
|
|
implementation 'org.springframework:spring-jdbc:6.2.6'
|
2025-05-07 12:03:37 +01:00
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-security'
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
|
|
|
|
implementation 'org.springframework.boot:spring-boot-starter-oauth2-client'
|
2025-05-09 16:48:48 +01:00
|
|
|
implementation "org.springframework.security:spring-security-core:$springSecuritySamlVersion"
|
|
|
|
implementation "org.springframework.security:spring-security-saml2-service-provider:$springSecuritySamlVersion"
|
2025-05-13 13:39:39 +01:00
|
|
|
implementation 'org.springframework.session:spring-session-core:3.4.3'
|
2025-05-07 12:03:37 +01:00
|
|
|
|
2025-05-09 16:48:48 +01:00
|
|
|
implementation 'org.thymeleaf.extras:thymeleaf-extras-springsecurity5:3.1.3.RELEASE'
|
|
|
|
implementation 'io.micrometer:micrometer-registry-prometheus'
|
2025-05-07 12:03:37 +01:00
|
|
|
implementation 'com.unboundid.product.scim2:scim2-sdk-client:2.3.5'
|
2025-05-13 13:39:39 +01:00
|
|
|
runtimeOnly 'com.h2database:h2:2.3.232' // Don't upgrade h2database
|
|
|
|
runtimeOnly 'org.postgresql:postgresql:42.7.5'
|
2025-05-07 12:03:37 +01:00
|
|
|
constraints {
|
|
|
|
implementation "org.opensaml:opensaml-core:$openSamlVersion"
|
|
|
|
implementation "org.opensaml:opensaml-saml-api:$openSamlVersion"
|
|
|
|
implementation "org.opensaml:opensaml-saml-impl:$openSamlVersion"
|
|
|
|
}
|
|
|
|
implementation 'com.coveo:saml-client:5.0.0'
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
compileOnly "org.projectlombok:lombok:$lombokVersion"
|
|
|
|
annotationProcessor "org.projectlombok:lombok:$lombokVersion"
|
|
|
|
|
|
|
|
testImplementation platform('org.junit:junit-bom:5.10.0')
|
|
|
|
testImplementation 'org.junit.jupiter:junit-jupiter'
|
2025-05-09 14:16:34 +01:00
|
|
|
testImplementation 'org.springframework.boot:spring-boot-starter-test'
|
2025-05-09 16:48:48 +01:00
|
|
|
testRuntimeOnly 'org.mockito:mockito-inline:5.2.0'
|
2025-05-07 12:03:37 +01:00
|
|
|
}
|
|
|
|
|
2025-05-13 13:39:39 +01:00
|
|
|
tasks.register('prepareKotlinBuildScriptModel') {}
|