public class TaasService extends Object implements TopiaService, TopiaTransactionVetoable
topia.service.taas=org.nuiton.topia.taas.TaasService topia.service.taas.event=org.nuiton.topia.taas.event.TaasEntityVetoable topia.service.taas.subject=org.nuiton.topia.taas.jaas.TaasSubjectImpl
| Modifier and Type | Field and Description |
|---|---|
static String |
SERVICE_EVENT |
static String |
SERVICE_LOGIN_MODULE |
static String |
SERVICE_NAME |
static String |
SERVICE_SUBJECT |
static String |
TOPIA_SERVICE_TAAS |
| Constructor and Description |
|---|
TaasService()
Contructeur par defaut
|
| Modifier and Type | Method and Description |
|---|---|
void |
beginTransaction(TopiaTransactionEvent event) |
void |
check(Collection<? extends TopiaEntity> entities,
int actions)
Permet de verifier les authorizations sur une collection et de supprimer
les donnees non autorisées
|
void |
check(String topiaId,
int actions)
Permet de vérifier les authorizations
|
void |
check(TopiaEntity entity,
int actions)
Permet de vérifier les authorizations
|
protected void |
checkPermission(Subject subj,
Permission myp)
Hack pour faire fonctionner la security.
|
void |
checkRequestPermission(Collection<? extends TopiaEntity> entities,
int actions)
Permet de vérifier les authorizations sur une collection et de supprimer
les données non autorisées
|
void |
checkRequestPermission(TopiaEntity entity,
int actions)
Permet de vérifier les authorizations
|
Subject |
findSubject()
Permet de récupérer le subject en cours
|
Class<?>[] |
getPersistenceClasses() |
List<Permission> |
getRequestPermission(TopiaEntity entity,
int actions)
Récupération des requests permissions dans les DAOs
|
TopiaContext |
getRootContext()
Permet d'obtenir le context root
|
TopiaContext |
getRootContextNoSecure()
Permet de recuperer un context root sans securite
|
String |
getServiceName() |
static Class<?>[] |
getTaasPersistenceClasses() |
boolean |
postInit(TopiaContext context) |
boolean |
preInit(TopiaContext context) |
public static final String SERVICE_NAME
public static final String SERVICE_LOGIN_MODULE
public static final String SERVICE_EVENT
public static final String SERVICE_SUBJECT
public static final String TOPIA_SERVICE_TAAS
public Class<?>[] getPersistenceClasses()
getPersistenceClasses in interface TopiaServicepublic static Class<?>[] getTaasPersistenceClasses()
public String getServiceName()
getServiceName in interface TopiaServicepublic boolean preInit(TopiaContext context)
preInit in interface TopiaServicepublic void beginTransaction(TopiaTransactionEvent event)
beginTransaction in interface TopiaTransactionVetoablepublic boolean postInit(TopiaContext context)
postInit in interface TopiaServicepublic TopiaContext getRootContext()
public TopiaContext getRootContextNoSecure() throws TopiaException
TopiaExceptionpublic Subject findSubject()
public void check(Collection<? extends TopiaEntity> entities, int actions) throws SecurityException
entities - collection d'entitesactions - actionsSecurityException - en cas d'erreur de sécuritépublic void check(TopiaEntity entity, int actions) throws SecurityException
entity - entitéactions - actionsSecurityException - en cas d'erreur de sécuritépublic void check(String topiaId, int actions) throws SecurityException
topiaId - id de l'entiteactions - actionsSecurityException - en cas d'erreur de sécuritéprotected void checkPermission(Subject subj, Permission myp)
AccessController.checkPermission(myp);Mais comme ca ne fonctionne pas et pas vraiment de raison. Que le code au final a seulement besoin de checker les TaasPermissions des principales du subject. Cette methode est plus simple et plus rapide que le mode normal.
subj - myp - public void checkRequestPermission(TopiaEntity entity, int actions) throws SecurityException
entity - entitéactions - actionsSecurityException - en cas d'erreur de sécuritépublic void checkRequestPermission(Collection<? extends TopiaEntity> entities, int actions) throws SecurityException
entities - collection d'entitésactions - actionsSecurityException - en cas d'erreur de sécuritépublic List<Permission> getRequestPermission(TopiaEntity entity, int actions)
entity - entitéactions - actionsCopyright © 2004–2013 CodeLutin. All rights reserved.