jGuard install on j2ee

  1. required librairies
  2. AccessFilter and web.xml
  3. integrate jGuard in your jsp
  4. integrate jGuard in your servlets

Login Modules

Authorization Managers

Advanced jGuard

jGuard install on jvm

  1. java.home
  2. libraries and bootclasspath
  3. java.security
  4. jGuard.loginScheme
  5. jGuard.policy







PostgreSQLAuthorizationManager

Les implémentations de AuthorizationManager sont dédiées au développeur de webapp. Cette implémentation de AuthorizationManager permet une méthode d'autorisation basée sur la base de données PostgreSQL.

1. PostgreSQLAuthorizationManager paramètres

La DTD (jGuardPrincipalsPermissions_x.xx.dtd), doit être placée dans le même répertoire. Ces paramètres doivent être placés dans la liste de paramètres de l'AccessFilter situé dans le fichier web.xml.

2. script d'installation SQL

alter table jg_role_permission drop constraint fk_permission_role;
alter table jg_role_permission drop constraint fk_role_permission;
alter table jg_urlquery drop constraint fk_permission_parameter;
alter table jg_permission drop constraint fk_permission_domain;

drop table jg_role_domain;
drop table jg_role_permission;
drop table jg_urlquery;
drop table jg_app_role;
drop table jg_permission;
drop table jg_domain;

drop sequence jg_urlquery_seq;
drop sequence jg_app_role_seq;
drop sequence jg_domain_seq;
drop sequence jg_permission_seq;


create table jg_role_domain (
   domain_name varchar(255) ,
   role_name varchar(255),
   primary key (role_name, domain_name)
);

create table jg_role_permission (
   permission_name varchar(255),
   role_name  varchar(255),
   primary key (role_name, permission_name)
);
create table jg_urlquery (
   id int8 not null,
   parameter varchar(255),
   value varchar(255),
   permission_name  varchar(255),
   primary key (id)
);
-- role declared for the application
create table jg_app_role (
   name varchar(255),
   primary key (name)
);

create table jg_domain(
  name varchar(255),
  primary key(name)
);

create table jg_permission (
   name varchar(255) ,
   uri varchar(255),
   description varchar(255),
   scheme varchar(5),
   domain_name varchar(255),
   primary key (name)
);

-- add constraints
alter table jg_role_permission add constraint fk_permission_role foreign key (role_name) references jg_app_role;
alter table jg_role_permission add constraint fk_role_permission foreign key (permission_name) references jg_permission;

alter table jg_role_domain add constraint fk_domain_role foreign key (role_name) references jg_app_role;
alter table jg_role_domain add constraint fk_role_domain foreign key (domain_name) references jg_domain;

alter table jg_urlquery add constraint fk_permission_parameter foreign key (permission_name) references jg_permission;
alter table jg_permission add constraint fk_permission_domain foreign key (domain_name) references jg_domain;

--create sequences
create sequence jg_urlquery_seq;
create sequence jg_app_role_seq;
create sequence jg_permission_seq;
create sequence jg_domain_seq;