|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.nuiton.wikitty.services.WikittyServiceDelegator
org.nuiton.wikitty.services.WikittyServiceSecurity
public class WikittyServiceSecurity
FIXME add security policy level two on wikittyAuthorisation to prevent writing
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface org.nuiton.wikitty.WikittyService |
|---|
WikittyService.ServiceListenerType |
| Field Summary | |
|---|---|
protected String |
appAdminGroupId
cache de l'id du groupe AppAdmin |
| Fields inherited from class org.nuiton.wikitty.services.WikittyServiceDelegator |
|---|
delegate |
| Constructor Summary | |
|---|---|
WikittyServiceSecurity(org.nuiton.util.ApplicationConfig config,
WikittyService ws)
|
|
| Method Summary | |
|---|---|
void |
addWikittyServiceListener(WikittyListener listener,
WikittyService.ServiceListenerType type)
Add new wikitty service listener. |
protected boolean |
canAdmin(String securityToken,
String userId,
String extensionName,
Wikitty wikitty)
|
boolean |
canDelete(String securityToken,
String wikittyId)
Verifie que l'utilisateur associe au securityToken peut supprimer le wikitty dont on passe l'identifiant. |
boolean |
canRead(String securityToken,
String wikittyId)
Un utilisateur peu lire un objet, s'il est Reader ou a defaut: - owner - AppAdmin - Admin - Writer |
protected boolean |
canRead(String securityToken,
String userId,
String extensionName,
Wikitty wikitty)
|
protected boolean |
canWrite(String securityToken,
String userId,
String extensionName,
Wikitty wikitty)
|
boolean |
canWrite(String securityToken,
Wikitty wikitty)
Verifie si l'utilisateur lie au securityToken a le droit d'ecrire le Wikitty passe en argument. |
void |
checkDelete(String securityToken,
Collection<String> ids)
Check if we can delete all id passed in argument |
protected void |
checkDeleteExtension(String securityToken,
Collection<String> extNames)
|
protected void |
checkStore(String securityToken,
Collection<Wikitty> wikitties)
Indique si on a bien le droit d'enregistrer tout les wikitties de la collection. |
protected void |
checkStoreExtension(String securityToken,
Collection<WikittyExtension> exts)
|
WikittyEvent |
clear(String securityToken)
Use with caution : It will delete ALL indexes from search engine ! |
WikittyEvent |
delete(String securityToken,
Collection<String> ids)
Delete all object if id exists. |
WikittyEvent |
deleteExtension(String securityToken,
Collection<String> extNames)
Delete all extension if id exists and no wikitty used this extension. |
WikittyEvent |
deleteTree(String securityToken,
String treeNodeId)
Delete specified tree node and all sub nodes. |
protected Wikitty |
getAppAdminGroup(String securityToken)
get the wikitty with extension WikittyGroup that contains all app-admin. |
protected String |
getUserId(String securityToken)
tell who own a token (who got this token after login). |
protected boolean |
isAdmin(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
|
protected boolean |
isAppAdmin(String securityToken,
String userId)
check if a given user belong to the group of app-admins. |
protected boolean |
isMember(String securityToken,
String userId,
Set<String> groupOrUser)
Verifie recursivement si un utilisateur est dans un groupe qui peut etre constitue d'autre groupe ou d'utilisateur |
protected boolean |
isMember(String securityToken,
String userId,
Wikitty extensionRights,
String fqFieldName)
isMember(String, String, Wikitty, String, boolean) with default value |
protected boolean |
isMember(String securityToken,
String userId,
Wikitty extensionRights,
String fqFieldName,
boolean considerEmptyGroupAsMembership)
check if a user is listed in a level of rights |
protected boolean |
isOwner(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
true if given user is owner |
protected boolean |
isReader(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
|
protected boolean |
isWriter(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
|
String |
login(String login,
String password)
Authenticate someone on WikittyService. securityToken returned must be used to call others methods |
void |
logout(String securityToken)
Unanthenticate someone by disabled securityToken |
protected void |
refuseUnauthorizedRead(String securityToken,
String userId,
Wikitty wikitty)
throw an exception if read is not allowed |
void |
removeWikittyServiceListener(WikittyListener listener,
WikittyService.ServiceListenerType type)
Remove wikitty service listener. |
WikittyEvent |
replay(String securityToken,
List<WikittyEvent> events,
boolean force)
Replay all events in argument on this WikittyService |
List<Wikitty> |
restore(String securityToken,
List<String> ids)
Restore wikitty |
protected Wikitty |
restoreExtensionAuthorisation(String securityToken,
String extensionName)
restore the wikitty authorisation attached to given extension. |
protected Wikitty |
restoreExtensionAuthorisation(String securityToken,
WikittyExtension extension)
restore the wikitty authorisation attached to given extension. |
Wikitty |
restoreVersion(String securityToken,
String wikittyId,
String version)
Restore wikitty in specifique version. |
WikittyEvent |
store(String securityToken,
Collection<Wikitty> wikitties,
boolean force)
Manage Update and creation. |
WikittyEvent |
storeExtension(String securityToken,
Collection<WikittyExtension> exts)
Manage Update and creation |
void |
syncSearchEngine(String securityToken)
Synchronise search engine with wikitty storage engine, i.e. clear and reindex all wikitties. |
protected boolean |
userIsAnonymousOrAppAdmin(String securityToken,
String userId)
if app-admin group exists, return true if given userId is app-admin if app-admin group doesn't exists, return true if user is anonymous |
| Methods inherited from class org.nuiton.wikitty.services.WikittyServiceDelegator |
|---|
exists, findAllByCriteria, findByCriteria, findTreeNode, getAllExtensionIds, getAllExtensionsRequires, getDelegate, isDeleted, restoreExtension, restoreExtensionLastVersion, setDelegate |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected transient String appAdminGroupId
| Constructor Detail |
|---|
public WikittyServiceSecurity(org.nuiton.util.ApplicationConfig config,
WikittyService ws)
config - not use currently but needed in futurws - | Method Detail |
|---|
public void addWikittyServiceListener(WikittyListener listener,
WikittyService.ServiceListenerType type)
WikittyServicelistener is referenced as WeakReference, but sure to
another reference to work.
addWikittyServiceListener in interface WikittyServiceaddWikittyServiceListener in class WikittyServiceDelegatorlistener - listener to addtype - type of event to listenWikittyService.ServiceListenerType
public void removeWikittyServiceListener(WikittyListener listener,
WikittyService.ServiceListenerType type)
WikittyServicelistener is referenced as WeakReference, but sure to
another reference to work.
removeWikittyServiceListener in interface WikittyServiceremoveWikittyServiceListener in class WikittyServiceDelegatorlistener - listener to removetype - type of event to listenWikittyService.ServiceListenerType
public String login(String login,
String password)
WikittyService
login in interface WikittyServicelogin in class WikittyServiceDelegatorlogin - can be application specifique login, but best practice is
to use email user
public void logout(String securityToken)
WikittyService
logout in interface WikittyServicelogout in class WikittyServiceDelegatorsecurityToken - security token previously returned by login. If
securityToken is not valid, this method do nothingpublic WikittyEvent clear(String securityToken)
WikittyService
clear in interface WikittyServiceclear in class WikittyServiceDelegatorsecurityToken - security token
public WikittyEvent replay(String securityToken,
List<WikittyEvent> events,
boolean force)
WikittyService
replay in interface WikittyServicereplay in class WikittyServiceDelegatorsecurityToken - security tokenevents - event to replayforce - for to not change wikitty version (use version in wikitty
present in event)
protected boolean userIsAnonymousOrAppAdmin(String securityToken,
String userId)
public WikittyEvent store(String securityToken,
Collection<Wikitty> wikitties,
boolean force)
WikittyService
store in interface WikittyServicestore in class WikittyServiceDelegatorsecurityToken - security tokenwikitties - list of wikitty to be persistedforce - boolean force non version version increment on saved wikitty
or force version on wikitty creation (version 0.0)
protected void checkStore(String securityToken,
Collection<Wikitty> wikitties)
securityToken - wikitties -
public List<Wikitty> restore(String securityToken,
List<String> ids)
WikittyService
restore in interface WikittyServicerestore in class WikittyServiceDelegatorsecurityToken - security tokenids - list of wikitty ids to restore
protected void refuseUnauthorizedRead(String securityToken,
String userId,
Wikitty wikitty)
protected boolean canRead(String securityToken,
String userId,
String extensionName,
Wikitty wikitty)
protected boolean canWrite(String securityToken,
String userId,
String extensionName,
Wikitty wikitty)
protected boolean canAdmin(String securityToken,
String userId,
String extensionName,
Wikitty wikitty)
public WikittyEvent delete(String securityToken,
Collection<String> ids)
WikittyService
delete in interface WikittyServicedelete in class WikittyServiceDelegatorsecurityToken - security tokenids - object's ids to remove
public void checkDelete(String securityToken,
Collection<String> ids)
securityToken - ids -
public boolean canWrite(String securityToken,
Wikitty wikitty)
WikittyService
canWrite in interface WikittyServicecanWrite in class WikittyServiceDelegatorsecurityToken - le token de securite qui permet de retrouver
l'utilisateur et ainsi verifier les droitswikitty - le wikitty a sauver
public boolean canDelete(String securityToken,
String wikittyId)
WikittyService
canDelete in interface WikittyServicecanDelete in class WikittyServiceDelegatorsecurityToken - security tokenwikittyId - wikitty id
public boolean canRead(String securityToken,
String wikittyId)
WikittyService
canRead in interface WikittyServicecanRead in class WikittyServiceDelegatorsecurityToken - security tokenwikittyId - wikitty id
protected void checkStoreExtension(String securityToken,
Collection<WikittyExtension> exts)
protected void checkDeleteExtension(String securityToken,
Collection<String> extNames)
public WikittyEvent storeExtension(String securityToken,
Collection<WikittyExtension> exts)
WikittyService
storeExtension in interface WikittyServicestoreExtension in class WikittyServiceDelegatorsecurityToken - security tokenexts - list of wikitty extension to be persisted
public WikittyEvent deleteExtension(String securityToken,
Collection<String> extNames)
WikittyService
deleteExtension in interface WikittyServicedeleteExtension in class WikittyServiceDelegatorsecurityToken - security tokenextNames - extension's names to remove
public WikittyEvent deleteTree(String securityToken,
String treeNodeId)
WikittyService
deleteTree in interface WikittyServicedeleteTree in class WikittyServiceDelegatorsecurityToken - security tokentreeNodeId - tree node id to delete
public Wikitty restoreVersion(String securityToken,
String wikittyId,
String version)
WikittyService
restoreVersion in interface WikittyServicerestoreVersion in class WikittyServiceDelegatorsecurityToken - security tokenpublic void syncSearchEngine(String securityToken)
WikittyService
syncSearchEngine in interface WikittyServicesyncSearchEngine in class WikittyServiceDelegatorsecurityToken - security tokenprotected String getUserId(String securityToken)
securityToken - the token whose owner will be returned
protected boolean isReader(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
securityToken - userId - wikitty - extensionName - may be null
protected boolean isWriter(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
securityToken - userId - wikitty - extensionName - may be null
protected boolean isAdmin(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
securityToken - userId - wikitty - extensionName - may be null
protected boolean isOwner(String securityToken,
String userId,
Wikitty wikitty,
String extensionName)
securityToken - userId - wikitty - extensionName - may be null
protected boolean isMember(String securityToken,
String userId,
Wikitty extensionRights,
String fqFieldName)
isMember(String, String, Wikitty, String, boolean) with default value
protected boolean isMember(String securityToken,
String userId,
Wikitty extensionRights,
String fqFieldName,
boolean considerEmptyGroupAsMembership)
securityToken - userId - the userId to look forextensionRights - a wikitty with WikittyAuthorisation as extension OR meta-extensionfqFieldName - the field to look into, it should be one of the field of extension WikittyAuthorisation
it has to be a FQN and may contain an extension-name if using meta-extensionconsiderEmptyGroupAsMembership - if true, an empty field value will be considered as
"every-one is in the group". Most of the time, it will be false but true should be
passed for "reader" level because user has right to read if he belongs to "reader" OR
if reader is empty
protected boolean isAppAdmin(String securityToken,
String userId)
protected Wikitty getAppAdminGroup(String securityToken)
protected boolean isMember(String securityToken,
String userId,
Set<String> groupOrUser)
userId - l'utilisateur recherchegroupOrUser - la liste des id d'utilisateurs ou d'autres groupes
protected Wikitty restoreExtensionAuthorisation(String securityToken,
WikittyExtension extension)
protected Wikitty restoreExtensionAuthorisation(String securityToken,
String extensionName)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||