diff --git a/pom.xml b/pom.xml index cb6196c..2c25b78 100644 --- a/pom.xml +++ b/pom.xml @@ -2,20 +2,19 @@ 4.0.0 - fr.la_banquise - backend + fr.la-banquise + shopply-backend 1.0.0-SNAPSHOT - 3.12.1 + 3.13.0 17 UTF-8 UTF-8 quarkus-bom io.quarkus.platform - 3.10.1 + 3.14.3 true - 3.2.5 - 1.8.34 + 3.3.1 @@ -31,23 +30,27 @@ io.quarkus - quarkus-resteasy-jackson + quarkus-rest-jackson + + + io.quarkus + quarkus-elytron-security-ldap io.quarkus quarkus-arc - io.quarkiverse.qute.web - quarkus-qute-web + io.quarkus + quarkus-rest io.quarkus - quarkus-qute + quarkus-smallrye-openapi io.quarkus - quarkus-jdbc-postgresql + quarkus-swagger-ui io.quarkus @@ -55,30 +58,23 @@ io.quarkus - quarkus-resteasy-multipart - - - io.quarkus - quarkus-resteasy - - - io.quarkus - quarkus-elytron-security-ldap + quarkus-jdbc-postgresql io.quarkiverse.quinoa quarkus-quinoa - 2.3.10 - - - io.quarkus - quarkus-hibernate-orm + 2.4.8 io.quarkus quarkus-junit5 test + + io.rest-assured + rest-assured + test + org.projectlombok lombok diff --git a/src/main/java/fr/la_banquise/backend/rest/UserEndpoints.java b/src/main/java/fr/la_banquise/backend/rest/UserEndpoints.java index 09683a6..8242c57 100644 --- a/src/main/java/fr/la_banquise/backend/rest/UserEndpoints.java +++ b/src/main/java/fr/la_banquise/backend/rest/UserEndpoints.java @@ -4,7 +4,9 @@ import java.util.ArrayList; import java.util.List; import fr.la_banquise.backend.rest.request.UserRequest; +import fr.la_banquise.backend.rest.response.LoggedUserResponse; import fr.la_banquise.backend.services.UserService; +import io.quarkus.security.identity.SecurityIdentity; import jakarta.annotation.security.RolesAllowed; import jakarta.inject.Inject; import jakarta.ws.rs.GET; @@ -22,9 +24,19 @@ import jakarta.ws.rs.core.Response; @Produces(MediaType.APPLICATION_JSON) public class UserEndpoints { + @Inject + SecurityIdentity identity; + @Inject UserService userService; + @GET + @Path("/me") + public Response getCurrentUser() { + LoggedUserResponse user = new LoggedUserResponse(identity.getPrincipal().getName(), identity.getRoles()); + return Response.ok(user).build(); + } + @GET @RolesAllowed("pingouin") public Response getAllUsers() { diff --git a/src/main/java/fr/la_banquise/backend/rest/response/LoggedUserResponse.java b/src/main/java/fr/la_banquise/backend/rest/response/LoggedUserResponse.java new file mode 100644 index 0000000..52585e5 --- /dev/null +++ b/src/main/java/fr/la_banquise/backend/rest/response/LoggedUserResponse.java @@ -0,0 +1,14 @@ +package fr.la_banquise.backend.rest.response; + +import java.util.Set; + +import lombok.AllArgsConstructor; + +/** + * LoggedUserResponse + */ +@AllArgsConstructor +public class LoggedUserResponse { + public String username; + public Set roles; +}