[Struts-Tiles] Pages à accès reservé
Bonjour tout le monde !
Voilà je code actuellement une appli Struts dans laquelle j'utilise Tiles, afin d'avoir toujours une structure sur un tableau à 3 lignes dans lesquelles j'inclu des jsp en fonction de la page sur laquelle je veux être :
---------
header
---------
menu
---------
contenu
---------
Actuellement, le premier écran est une demande de login classique, qui si succès forward vers l'index qui a la structure définie ci-dessus.
Tiles se base sur un layout principal, une sorte de squelette pour la mise en page qui est une jsp que j'ai définie ainsi :
Citation:
<%@ taglib uri="/WEB-INF/struts-tiles.tld" prefix="tiles" %>
<HTML>
<HEAD>
<link rel="stylesheet" href="/gesam/gui-tiles/styles.css" type="text/css">
<title><tiles:getAsString name="title" /></title>
</HEAD>
<body>
<table id="tblLayout" align="center">
<tr id="trHeader">
<td>
<img src="images/banniere.png" alt="GESAM"/>
</td>
<td id="tdHeaderExt">
</td>
<td>
<img src="images/banniere2.png" alt="GESAM"/>
</td>
</tr>
<tr id="trMenu">
<td colspan="3"><tiles:insert attribute="header" /></td>
</tr>
<tr id="trCentre" >
<td valign="top" colspan="3" align="left">
<tiles:insert attribute='body' />
</td>
</tr>
</table>
</body>
</html>
Actuellement, aucun contrôle n'est fait à l'intérieur de l'appli, pour voir si la personne est autorisée à accèder aux ressources, ce qui n'est pas correct, car si on rentre une url ou si on appelle une action via le navigateur, on accède à la page sans être authentifié.
J'ai pensé à une solution qui consisterai à placer en session un attribut quelconque, une valeur drapeau que je pourrais tester (avec un <logic>) dans le layout que je vous ai montré ci-dessus. Si la valeur y est on affiche le <tr> dans lequel est inclu le body, sinon on affiche un message d'avertissement.
Je voulais savoir si vous pensez que cette solution est assez sécurisée, en sachant tout de même que l'appli tourne uniquement sur un intranet.
Merci d'avance ;)