diff --git a/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/java/sample/mvc/SecurityControllerAdvise.java b/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/java/sample/mvc/SecurityControllerAdvise.java new file mode 100644 index 00000000..059e9f97 --- /dev/null +++ b/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/java/sample/mvc/SecurityControllerAdvise.java @@ -0,0 +1,44 @@ +/* + * Copyright 2014-2022 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package sample.mvc; + +import java.security.Principal; + +import jakarta.servlet.http.HttpSession; + +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ModelAttribute; + +/** + * {@link ControllerAdvice} to expose security related attributes. + * + * @author Rob Winch + */ +@ControllerAdvice +public class SecurityControllerAdvise { + + @ModelAttribute("currentUserName") + String currentUser(Principal principal) { + return (principal != null) ? principal.getName() : null; + } + + @ModelAttribute("httpSessionId") + String sessionId(HttpSession httpSession) { + return httpSession.getId(); + } + +} diff --git a/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/index.html b/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/index.html index c950d816..ded45cef 100644 --- a/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/index.html +++ b/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/index.html @@ -7,7 +7,7 @@

Secured Page

This page is secured using Spring Boot, Spring Session, and Spring Security.

-

Your current session id is

+

Your current session id is

@@ -26,7 +26,7 @@ diff --git a/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/layout.html b/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/layout.html index 68bfb27b..bb7c6b32 100644 --- a/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/layout.html +++ b/spring-session-samples/spring-session-sample-boot-findbyusername/src/main/resources/templates/layout.html @@ -81,13 +81,12 @@
Spring Security Sample -
- +