feat: Implémentation sécurité @RolesAllowed et corrections diverses

- Ajout DevSecurityContextProducer pour @RolesAllowed en dev
- Correction UserSearchCriteriaDTO (searchTerm au lieu de searchText)
- Mise à jour version quarkus-primefaces à 3.15.1
- Corrections expressions EL dans composants audit et role-assignment
This commit is contained in:
lionsdev
2025-12-05 16:23:56 +00:00
parent 873bef5145
commit bb75d0fe12
3 changed files with 13 additions and 13 deletions

View File

@@ -50,10 +50,10 @@
<div class="field #{colSize}">
<c:choose>
<c:when test="#{clickable}">
<c:when test="#{clickable and not empty clickAction}">
<p:commandLink
styleClass="card-link"
action="#{not empty clickAction ? clickAction : null}">
action="#{clickAction}">
<div class="card surface-0 hover:surface-100 border-round-lg transition-all transition-duration-200 p-4">
<div class="flex align-items-center justify-content-between mb-3">
<span class="block text-600 font-medium text-sm">#{title}</span>

View File

@@ -16,8 +16,7 @@
- user: UserDTO (requis) - L'utilisateur concerné
- availableRoles: List&lt;RoleDTO&gt; (requis) - Liste des rôles disponibles
- userRoles: List&lt;RoleDTO&gt; (requis) - Liste des rôles de l'utilisateur
- assignAction: String (requis) - Action pour attribuer un rôle
- revokeAction: String (requis) - Action pour révoquer un rôle
- roleBean: String (optionnel) - Nom du bean pour les actions (défaut: "roleGestionBean")
- update: String (défaut: "@form") - Composants à mettre à jour
- showRealmRoles: Boolean (défaut: true) - Afficher les rôles Realm
- showClientRoles: Boolean (défaut: true) - Afficher les rôles Client
@@ -39,6 +38,7 @@
<c:set var="update" value="#{empty update ? '@form' : update}" />
<c:set var="showRealmRoles" value="#{empty showRealmRoles ? true : showRealmRoles}" />
<c:set var="showClientRoles" value="#{empty showClientRoles ? true : showClientRoles}" />
<c:set var="roleBeanName" value="#{empty roleBean ? 'roleGestionBean' : roleBean}" />
<h:form id="#{formId}">
<p:panel header="Attribution de rôles - #{user.username}" styleClass="w-full">
@@ -54,11 +54,11 @@
<p:commandButton
icon="pi pi-times"
styleClass="p-button-text p-button-sm p-button-danger ml-2"
action="#{revokeAction}"
action="#{roleGestionBean.revokeRoleFromParams}"
update="#{update}"
title="Révoquer le rôle">
<f:param name="userId" value="#{user.id}" />
<f:param name="roleId" value="#{userRole.id}" />
<f:param name="roleName" value="#{userRole.name}" />
</p:commandButton>
</p:tag>
</c:forEach>
@@ -100,11 +100,11 @@
<p:commandButton
icon="pi pi-plus"
styleClass="p-button-text p-button-sm p-button-success ml-2"
action="#{assignAction}"
action="#{roleGestionBean.assignRoleFromParams}"
update="#{update}"
title="Attribuer le rôle">
<f:param name="userId" value="#{user.id}" />
<f:param name="roleId" value="#{role.id}" />
<f:param name="roleName" value="#{role.name}" />
</p:commandButton>
</p:tag>
</c:otherwise>
@@ -143,11 +143,11 @@
<p:commandButton
icon="pi pi-plus"
styleClass="p-button-text p-button-sm p-button-success ml-2"
action="#{assignAction}"
action="#{roleGestionBean.assignRoleFromParams}"
update="#{update}"
title="Attribuer le rôle">
<f:param name="userId" value="#{user.id}" />
<f:param name="roleId" value="#{role.id}" />
<f:param name="roleName" value="#{role.name}" />
</p:commandButton>
</p:tag>
</c:otherwise>
@@ -163,7 +163,7 @@
<h3>Rechercher un rôle</h3>
<div class="flex gap-2 mb-3">
<p:inputText
value="#{roleBean.roleSearchText}"
value="#{roleGestionBean.roleSearchText}"
placeholder="Rechercher un rôle..."
styleClass="flex-1">
<p:ajax event="keyup"

View File

@@ -79,10 +79,10 @@
<c:choose>
<!-- Badge cliquable -->
<c:when test="#{clickable}">
<c:when test="#{clickable and not empty clickAction}">
<p:commandLink
styleClass="role-badge-link"
action="#{not empty clickAction ? clickAction : null}">
action="#{clickAction}">
<p:tag
value="#{roleName}"
severity="#{severity}"