Sécurité Applications Web avec JAAS sur Wildfly

////Sécurité Applications Web avec JAAS sur Wildfly

Contexte : application non sécurisée

Téléchargez l’application non sécurisée ‘monappli’

monappli-4

Créez un livrable monappli.war ( jar cvf monappli.war *)

Déployez le war dans Wildfly

Partie 1 : limitation accès application à un rôle

Sécurisez l’application ‘monappli’ dans le contexte suivant :

Les utilisateurs ayant un rôle Role ‘decideur’ sont les seuls à pouvoir accéder à l’appli entière

Les login/pwd des utilisateurs sont dans un fichier texte

METHODOLOGIE en 3 étapes

ETAPE 1) Ajouter dans standalone.xml un domaine de sécurité (copier/coller le domaine de securite ‘other’)

Localisez le domaine de sécurité nommé ‘other’ dans standalone.xml (ici wildfly 10)

security-domain-other

copiez-collez cette config afin de créer un domaine de sécurité, à ronommer (ici « afpa) »

ça y est, votre domaine de sécurité est créé.

ETAPE 2) Configuration du fichier web.xml (Réponse questions QUOI, QUI, COMMENT, OU )

ETAPE 3) Configuration du fichier jboss-web.xml (associer le bon gestionnaire de sécurité à l’application)

ETAPE 1 : domaine de sécurité ‘afpa’

1) Ajouter dans standalone.xml un domaine de sécurité

ETAPE 2 : Configuration du fichier web.xml

— > A Quoi sert ce fichier ?

Expliquez la configuration suivante :

secu-jaas-web-1.png

Ajout fichiers login / erreur

ETAPE 3 : Configuration du fichier jboss-web.xml

— > A Quoi sert ce fichier ?

Expliquez la configuration suivante :

secu-jaas-web-2.png

INFO : si le login/pwd echoue, modifiez la configuration du subsystem ‘logging’ ainsi :

error-jaas-trace.png

Partie 2 : accès aux URLs en fonction de rôles applicatifs

Sur l’application monappli, on décide que certaines URLs ne doivent être accessible que par des décideurs.

Proposez de sécuriser 2 urls suivantes :

1) /decideurs n’est accessible que pour les utilisateurs ayant profil ‘decideur

2) /administrateurs n’est accessible que pour les utilisateurs ayant profil ‘admin

Partie 3 : Sécuriser avec Realm ‘DB’

Mdp non sécurité

Faîtes évoluer la sécurité en permettant des login/pwd dans une pase de données.

Chiffrage MDP

Ajouter dans la section ‘login-module’ du fichier standalaone.xml 2 informations clés :

1) le type d’algorythme

‘module-option name= »hashAlgorithm » value= »MD5″/’

2) l’encodage (afin d’obtenir une chaîne)

‘module-option name= »hashEncoding » value= »base64″/’

3) Expliquez les lignes suivantes

cd $JBOSS_HOME/modules/system/layers/base/org/picketbox/main

$ java -classpath picketbox-4.9.3.Final.jar org.jboss.security.Base64Encoder votremotdepasse MD5

Mettre le résultat de cette dernière commande dans la base de de données en remplacement de ‘votremotdepasse’ pour le user associé.

Service d’audit

1) Activer le service d’audit sécurité :

/core-service=management/access=audit/logger=audit-log/:write-attribute(name=enabled, value=true)

2) identifier la configuration par défaut concernant le nom du fichier de log d’audit :

/core-service=management/access=audit/file-handler=file/:read-resource

CORRECTION

TP8_securitejaas

2018-01-25T07:50:44+01:00

Contactez nous

241 rue DUGUESCLIN, 69003 Lyon

Web : Objis : spécialiste formation Java