From bd7b179b359cb9a97d67103e731d0c746e2dd478 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Odd=20Andreas=20S=C3=B8rs=C3=A6ther?= Date: Fri, 23 Feb 2024 14:45:26 +0100 Subject: [PATCH] Oppgrader spring-boot etc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Kritiske sårbarheter ble oppdaget i flere pakker. --- pom.xml | 16 +++++----------- .../tiltakrefusjon/AuditLoggingFilter.kt | 2 +- .../SecurityClientConfiguration.kt | 4 ++-- .../autorisering/InnloggetBrukerService.kt | 14 ++++++++------ 4 files changed, 16 insertions(+), 20 deletions(-) diff --git a/pom.xml b/pom.xml index f37ebf52..1becfe6a 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ org.springframework.boot spring-boot-starter-parent - 3.1.0 + 3.2.2 no.nav.arbeidsgiver @@ -16,7 +16,7 @@ 17 1.8.10 6.4.0 - 3.1.0 + 4.1.3 @@ -94,7 +94,7 @@ de.monochromata.cucumber reporting-plugin - 4.0.70 + 5.0.0 test @@ -114,6 +114,7 @@ org.postgresql postgresql + 42.7.2 @@ -167,7 +168,7 @@ org.springframework.cloud spring-cloud-starter-contract-stub-runner - 2.2.5.RELEASE + 4.1.1 @@ -176,13 +177,6 @@ 8.2.0 - - org.awaitility - awaitility-kotlin - 4.0.3 - test - - io.micrometer micrometer-registry-prometheus diff --git a/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/AuditLoggingFilter.kt b/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/AuditLoggingFilter.kt index 4a74df8e..58d19a92 100644 --- a/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/AuditLoggingFilter.kt +++ b/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/AuditLoggingFilter.kt @@ -47,7 +47,7 @@ class AuditLoggingFilter( try { val fnr: List = JsonPath.read?>(wrapper.contentInputStream, "$..deltakerFnr").distinct() val utførtTid = Now.instant() - val brukerId = context.tokenValidationContext.getClaims("tokenx")?.getStringClaim("pid") ?: context.tokenValidationContext.getClaims("aad")?.getStringClaim("NAVident") + val brukerId = context.getTokenValidationContext().getClaims("tokenx").getStringClaim("pid") ?: context.getTokenValidationContext().getClaims("aad").getStringClaim("NAVident") val uri = URI.create(request.requestURI) // Logger kun oppslag dersom en innlogget bruker utførte oppslaget diff --git a/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/SecurityClientConfiguration.kt b/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/SecurityClientConfiguration.kt index 3648dc4a..6f1de94b 100644 --- a/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/SecurityClientConfiguration.kt +++ b/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/SecurityClientConfiguration.kt @@ -45,10 +45,10 @@ class SecurityClientConfiguration( private fun bearerTokenInterceptor( clientProperties: ClientProperties, oAuth2AccessTokenService: OAuth2AccessTokenService - ): ClientHttpRequestInterceptor? { + ): ClientHttpRequestInterceptor { return ClientHttpRequestInterceptor { request: HttpRequest, body: ByteArray?, execution: ClientHttpRequestExecution -> val response = oAuth2AccessTokenService.getAccessToken(clientProperties) - request.headers.setBearerAuth(response.accessToken) + request.headers.setBearerAuth(response.accessToken!!) execution.execute(request, body!!) } } diff --git a/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/autorisering/InnloggetBrukerService.kt b/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/autorisering/InnloggetBrukerService.kt index ce609da5..2a24d87e 100644 --- a/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/autorisering/InnloggetBrukerService.kt +++ b/src/main/kotlin/no/nav/arbeidsgiver/tiltakrefusjon/autorisering/InnloggetBrukerService.kt @@ -30,15 +30,15 @@ class InnloggetBrukerService( var logger: Logger = LoggerFactory.getLogger(javaClass) fun erArbeidsgiver(): Boolean { - return context.tokenValidationContext.hasTokenFor("tokenx") + return context.getTokenValidationContext().hasTokenFor("tokenx") } fun erSaksbehandler(): Boolean { - return context.tokenValidationContext.hasTokenFor("aad") + return context.getTokenValidationContext().hasTokenFor("aad") } fun erBeslutter(): Boolean { - val groupClaim = context.tokenValidationContext.getClaims("aad").get("groups") as List + val groupClaim = context.getTokenValidationContext().getClaims("aad").get("groups") as List return erSaksbehandler() && groupClaim.contains(beslutterRolleConfig.id) } @@ -47,11 +47,11 @@ class InnloggetBrukerService( } fun navIdent(): String { - return context.tokenValidationContext.getClaims("aad").getStringClaim("NAVident") + return context.getTokenValidationContext().getClaims("aad").getStringClaim("NAVident") } fun displayName(): String { - val displayNameClaim = context.tokenValidationContext.getClaims("aad").get("name") + val displayNameClaim = context.getTokenValidationContext().getClaims("aad").get("name") if (displayNameClaim != null) { return displayNameClaim as String } @@ -61,9 +61,10 @@ class InnloggetBrukerService( fun hentInnloggetArbeidsgiver(): InnloggetArbeidsgiver { return when { erArbeidsgiver() -> { - val fnr = Fnr(context.tokenValidationContext.getClaims("tokenx").getStringClaim("pid")) + val fnr = Fnr(context.getTokenValidationContext().getClaims("tokenx").getStringClaim("pid")) InnloggetArbeidsgiver(fnr.verdi, altinnTilgangsstyringService, refusjonRepository, korreksjonRepository, refusjonService, eregClient) } + else -> { throw RuntimeException("Feil ved token, kunne ikke identifisere arbeidsgiver") } @@ -86,6 +87,7 @@ class InnloggetBrukerService( norgeService = norgService ) } + else -> { throw RuntimeException("Feil ved token, kunne ikke identifisere saksbehandler") }