corrected keycloak urls

This commit is contained in:
Jottyfan 2023-08-06 16:05:18 +02:00
parent b07de9f2bc
commit 7732d6da25
6 changed files with 18 additions and 11 deletions

View File

@ -1,8 +1,5 @@
package de.jottyfan.camporganizer.module.camplist;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
import java.security.Principal;
import org.apache.logging.log4j.LogManager;
@ -15,7 +12,8 @@ import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping;
import de.jottyfan.camporganizer.module.camplist.model.BookingBean;
import de.jottyfan.camporganizer.module.registration.KeycloakRepository;
import jakarta.servlet.ServletException;
import jakarta.servlet.http.HttpServletRequest;
/**
*
@ -26,9 +24,6 @@ import de.jottyfan.camporganizer.module.registration.KeycloakRepository;
public class CamplistController extends CommonController {
private static final Logger LOGGER = LogManager.getLogger(CamplistController.class);
@Autowired
private KeycloakRepository keycloak;
@Autowired
private CamplistService service;
@ -42,7 +37,6 @@ public class CamplistController extends CommonController {
public String dashboard(Model model) {
model.addAttribute("mybookings", service.getBookingsOf(super.getCurrentUser()));
model.addAttribute("bookingBean", new BookingBean());
model.addAttribute("keycloakProfileUrl", keycloak.getUserClientUrl());
model.addAttribute("camps", service.getAllCamps(true));
return "/dashboard";
}

View File

@ -4,6 +4,7 @@ import java.security.Principal;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContext;
import org.springframework.security.core.context.SecurityContextHolder;
@ -12,6 +13,8 @@ import org.springframework.security.oauth2.core.oidc.user.DefaultOidcUser;
import org.springframework.security.oauth2.core.user.OAuth2User;
import org.springframework.web.bind.annotation.ModelAttribute;
import de.jottyfan.camporganizer.module.registration.KeycloakRepository;
/**
*
* @author jotty
@ -20,6 +23,9 @@ import org.springframework.web.bind.annotation.ModelAttribute;
public abstract class CommonController {
private static final Logger LOGGER = LogManager.getLogger();
@Autowired
private KeycloakRepository keycloak;
/**
* try to get current keycloak user
*
@ -64,6 +70,11 @@ public abstract class CommonController {
return null;
}
@ModelAttribute("keycloakProfileUrl")
public String getKeycloakProfileUrl() {
return keycloak.getUserClientUrl();
}
/**
* return true if the user has a valid keycloak session token
*

View File

@ -27,7 +27,7 @@ import org.springframework.stereotype.Repository;
public class KeycloakRepository {
private final static Logger LOGGER = LogManager.getLogger(KeycloakRepository.class);
@Value("${keycloak.resource}")
@Value("${keycloak.client-id}")
private String keycloakClientId;
@Value("${keycloak.auth-server-url}")

View File

@ -10,6 +10,8 @@ spring.datasource.password = ${spring.datasource.password}
server.servlet.context-path = ${server.servlet.context-path:/CampOrganizer2}
# security
keycloak.auth-server-url = ${keycloak.auth-server-url}
keycloak.realm = ${keycloak.realm}
spring.security.oauth2.client.registration.keycloak.client-id = ${keycloak.client-id}
spring.security.oauth2.client.registration.keycloak.scope = openid
spring.security.oauth2.client.registration.keycloak.authorization-grant-type = authorization_code

View File

@ -11,7 +11,7 @@
<span>alte Zugangsdaten ins neue System </span><a th:href="@{/migration/login}">umziehen</a>
<button type="button" class="btn-close" data-bs-dismiss="alert" aria-label="Schließen"></button>
</div>
<div th:replace="/fragments/camplist.html::camplist(camps=${camps})"></div>
<div th:replace="~{/fragments/camplist.html::camplist(camps=${camps})}"></div>
</div>
</th:block>
</body>

View File

@ -16,7 +16,7 @@
</div>
<br />
<div class="row">
<div th:replace="/fragments/camplist.html::camplist(camps=${camps})"></div>
<div th:replace="~{/fragments/camplist.html::camplist(camps=${camps})}"></div>
</div>
</div>
<br />