From c32d01bb51f2ad8b68fa783d279e5a782cfdbda1 Mon Sep 17 00:00:00 2001 From: Yuriy Movchan Date: Fri, 22 Mar 2024 20:15:39 +0300 Subject: [PATCH] feat(fido2): allow to update device data in SG authentication response jans #8116 Signed-off-by: Yuriy Movchan --- .../service/fido/u2f/AuthenticationService.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Server/src/main/java/org/gluu/oxauth/service/fido/u2f/AuthenticationService.java b/Server/src/main/java/org/gluu/oxauth/service/fido/u2f/AuthenticationService.java index b0a2ec21e..1716683b4 100644 --- a/Server/src/main/java/org/gluu/oxauth/service/fido/u2f/AuthenticationService.java +++ b/Server/src/main/java/org/gluu/oxauth/service/fido/u2f/AuthenticationService.java @@ -48,6 +48,9 @@ import org.gluu.util.io.ByteDataInputStream; import org.gluu.util.security.SecurityProviderUtility; import org.slf4j.Logger; + +import com.fasterxml.jackson.core.JsonProcessingException; + import org.gluu.oxauth.model.config.StaticConfiguration; /** @@ -219,7 +222,7 @@ private void prepareForPushTokenChange(DeviceRegistration deviceRegistration) { try { deviceNotificationConf = ServerUtil.jsonMapperWithWrapRoot().readValue(deviceNotificationConfString, DeviceNotificationConf.class); } catch (Exception ex) { - log.error("Failed to parse device notifacation configuration '{}'", deviceNotificationConfString); + log.error("Failed to parse device notification configuration '{}'", deviceNotificationConfString); } if (deviceNotificationConf == null) { @@ -240,6 +243,12 @@ private void prepareForPushTokenChange(DeviceRegistration deviceRegistration) { } snsEndpointArnHistory.add(snsEndpointArn); + + try { + deviceRegistration.setDeviceNotificationConf(ServerUtil.jsonMapperWithWrapRoot().writeValueAsString(deviceNotificationConf)); + } catch (Exception ex) { + log.error("Failed to update device notification configuration '{}'", deviceNotificationConf); + } } public AuthenticateRequest getAuthenticateRequest(AuthenticateRequestMessage requestMessage, AuthenticateResponse response) throws BadInputException {