Comment sécuriser une interface utilisateur
Prérequis
Afin de pouvoir suivre ce guide, il faut préalablement avoir :
Comment procéder ?
Notre application étant ici une instance de hub contenant un/plusieurs Hub Element
, il est tout d’abord nécéssaire
d’accorder le droit aux utilisateurs du restaurant de consulter ce(s) dernier(s).
Si l’on regarde le contrôle d’accès dans le Development Center pour le namespace AnakeenHub
et le name hubElement
,
on constate qu’il est indiqué : Required Access = HubUser
.
Passons maintenant dans l’onglet Permissions
. Cette permission HubUser
est liée au compte hub-user-role
.
Voilà donc le rôle qu’il faut ajouter aux comptes que nous avons créés (Se référer au guide associé).
Pour cela, rendons-nous dans le fichier src/vendor/<vendorName>/<moduleName>/Account/110-RestauratecGroups.xml
pour
ajouter ce rôle au groupe englobant le personnel du restaurant :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<accounts:accounts xmlns:accounts="https://platform.anakeen.com/4/schemas/account/1.0">
<accounts:groups>
<accounts:group name="group_restaurant_member">
<accounts:displayName>Personnel du restaurant</accounts:displayName>
<accounts:associatedRoles reset="true">
<accounts:associatedRole ref="role_restaurant_member"/>
<accounts:associatedRole ref="hub-user-role"/>
</accounts:associatedRoles>
</accounts:group>
<accounts:group name="group_cuisinier">
<accounts:displayName>Cuisiniers</accounts:displayName>
<accounts:associatedRoles reset="true">
<accounts:associatedRole ref="role_cuisinier" />
</accounts:associatedRoles>
<accounts:parentGroups>
<accounts:parentGroup ref="group_restaurant_member"/>
</accounts:parentGroups>
</accounts:group>
<accounts:group name="group_direction">
<accounts:displayName>Direction</accounts:displayName>
<accounts:associatedRoles reset="true">
<accounts:associatedRole ref="role_direction" />
</accounts:associatedRoles>
<accounts:parentGroups>
<accounts:parentGroup ref="group_restaurant_member"/>
</accounts:parentGroups>
</accounts:group>
</accounts:groups>
</accounts:accounts>
Attention
Pensez à effectuer une réinstallation afin que l’application prenne en compte les modifications effectuées :
npx @anakeen/anakeen-cli deploy -c http://localhost:8080/control -s . -u admin -p anakeen --reinstall
Tous les membres du restaurant ont maintenant accès à l’application.