Cours en cours‎ > ‎

Role Base Contral Access Glassfish Primeface

Scurité JDBC (Realm) et l'authentification par formulaire avec GlassFish (4.1) et PromeFace 5

Prérequis

Netbeans 8, glassfisg 4.1, mysql 5.5+, de préférence Linux comme plate forme de production et de deploiment

Les bases en brefs

Un domaine d'authentification GlassFish, également appelé un domaine de la politique de sécurité ou le domaine de la sécurité, est unenvironnement sur lequel le serveur GlassFish définit et applique une politique de sécurité commune. GlassFish Server est préconfiguré avec les domaines fichier, certificats, et d'administration. En outre, vous pouvez configurer LDAP, JDBC, digest, Oracle Solaris, ou personnalisés les domaines. Une application peut spécifier quel domaine utiliser dans son descripteur de déploiement. Si vous souhaitez stocker les informations d'identification utilisateur pour votre application dans une base de données votre premier choix est le domaine de JDBC (jdbcRealm).

La base de donné profilUtilisateurs

En gras les champs minimaux obligatoire pour la gestion du domaine de scécurité jdbcRBAC


CREATE TABLE `groupe` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT pour une utilisation simplifié avec JPA,
  `username` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
  `groupname` varchar(20) COLLATE utf8_unicode_ci NOT NULL,

  `Description` text COLLATE utf8_unicode_ci,
  PRIMARY KEY (`id`),
  UNIQUE KEY `username_2` (`username`,`groupname`),
  UNIQUE KEY `username_3` (`username`,`groupname`),
  KEY `username` (`username`,`groupname`),
  CONSTRAINT `utilisateur` FOREIGN KEY (`username`) REFERENCES `utilisateurs` (`username`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

CREATE TABLE `utilisateurs` (
  `email` varchar(40) COLLATE utf8_unicode_ci NOT NULL,
  `username` varchar(20) COLLATE utf8_unicode_ci NOT NULL,
  `password` varchar(64) COLLATE utf8_unicode_ci NOT NULL COMMENT 'Pour SHA256',

  `tel` varchar(15) COLLATE utf8_unicode_ci NOT NULL,
  PRIMARY KEY (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
=====

Définir la référence JNDI vers cette base de donnés dans Glassfish

La connexion pool


La ressource

Définir le Realm dans Glassfish

Utilisation du Realm

Création du projet 


Définir la sécurité déclarative


Les formulaire login et erreur


L'assemblage du tous et test



Comments