org.jwarp.service.security
Class FileSecurity

java.lang.Object
  |
  +--org.jwarp.service.security.ASecurity
        |
        +--org.jwarp.service.security.FileSecurity
All Implemented Interfaces:
ISecurity, ISecurityAware, java.io.Serializable

public class FileSecurity
extends ASecurity
implements java.io.Serializable

See Also:
Serialized Form

Field Summary
(package private)  FileGroupManager groupManager
           
 
Fields inherited from class org.jwarp.service.security.ASecurity
defaultExpireSeconds, listeners, system, systemContext, systemSec, systemTicket, tickets
 
Fields inherited from interface org.jwarp.service.security.ISecurity
ALL_USERS, LEVEL_CREATE, LEVEL_DELETE, LEVEL_FULLACCESS, LEVEL_GRANT, LEVEL_READ, LEVEL_UPDATE
 
Constructor Summary
FileSecurity(java.io.File storeFile, ITicket systemTicket)
           
FileSecurity(java.io.File storeFile, java.lang.String name, ITicket systemTicket)
           
FileSecurity(java.lang.String storeFile, ITicket systemTicket)
           
FileSecurity(java.lang.String storeFile, java.lang.String name, ITicket systemTicket)
           
 
Method Summary
protected  boolean accessGranted(int objectID, int level, int user)
          Returns true if the user is granted access of the given level to the object with the given ID.
 boolean accessGranted(ISecurityObject object, int level, ITicket userTicket)
          Returns true if the user is granted access of the given level to the object with the given ID.
 boolean accessGranted(java.lang.String objectID, int level, ITicket userTicket)
          Returns true if the user is granted access of the given level to the object with the given ID.
protected  void addMember(int group, int user, ITicket admin)
          Add a user to a group
 void addMember(ISecurityGroup group, ISecurityGroup member, ITicket admin)
          Add a user to a group
 void addMember(ISecurityGroup group, ISecurityUser member, ITicket admin)
          Add a user to a group
 ISecurityGroup createGroup(java.lang.String name, java.lang.String description, java.lang.Object additional, ITicket admin)
          Create a new group with the setings given.
 ISecurityObject createObject(java.lang.String name, java.lang.String description, java.lang.Object additional, ITicket admin)
          Create a new group with the setings given.
 ISecurityUser createUser(java.lang.String uid, java.lang.String pwd, java.lang.String name, java.lang.String description, java.lang.Object additonal, ITicket admin)
          Define a new user
 void delete(ISecurityGroup group, ITicket admin)
           
 void delete(ISecurityObject object, ITicket admin)
           
 void delete(ISecurityUser user, ITicket admin)
           
 ISecurityGroup getGroup(int id, ITicket admin)
          Returns the group with the given id.
 ISecurityGroup getGroup(java.lang.String name, ITicket admin)
          Returns the group with the given name.
 java.util.Iterator getGroups(ITicket admin)
          Returns all defined users.
 java.util.Iterator getMembers(ISecurityGroup group, ITicket admin)
          Returns all defined users.
 ISecurityObject getObject(int id, ITicket admin)
          Returns the object with the given id.
 ISecurityObject getObject(java.lang.String name, ITicket admin)
          Returns the object with the given name.
 java.util.Iterator getObjects(ITicket admin)
          Returns all defined users.
 ISecurityUser getUser(int id, ITicket admin)
          Returns the user with the given id.
 ISecurityUser getUser(java.lang.String uid, ITicket admin)
          Returns the user with the given uid.
 java.util.Iterator getUsers(ITicket admin)
          Returns all defined users.
protected  void grant(int objectID, int level, int grantedTo, ITicket admin)
          Tries to grant rights to access the object given the ID with the level passed.
 void grant(ISecurityObject object, int level, ISecurityGroup group, ITicket admin)
          Tries to grant rights to access the object given the ID with the level passed.
 void grant(ISecurityObject object, int level, ISecurityUser user, ITicket admin)
          Tries to grant rights to access the object given the ID with the level passed.
 void grant(java.lang.String objectID, int level, int grantedTo, ITicket admin)
          Tries to grant rights to access the object given the ID with the level passed.
 void grant(java.lang.String name, int level, ISecurityGroup group, ITicket admin)
          Tries to grant rights to access the object given the ID with the level passed.
 void grant(java.lang.String name, int level, ISecurityUser user, ITicket admin)
          Tries to grant rights to access the object given the ID with the level passed.
 void load()
           
 ITicket login(java.lang.String uid, java.lang.String pwd)
          Try to login a user
protected  void removeMember(int group, int member, ITicket admin)
          Remove a user from a group
 void removeMember(ISecurityGroup group, ISecurityGroup member, ITicket admin)
          Remove a user from a group
 void removeMember(ISecurityGroup group, ISecurityUser member, ITicket admin)
          Remove a user from a group
protected  void revoke(int objectID, int level, int revokeFrom, boolean force, ITicket admin)
          Tries to revoke rights to access the object given the ID with the level passed.
 void revoke(ISecurityObject object, int level, ISecurityGroup group, boolean force, ITicket admin)
          Tries to revoke rights to access the object given the ID with the level passed.
 void revoke(ISecurityObject object, int level, ISecurityUser user, boolean force, ITicket admin)
          Tries to revoke rights to access the object given the ID with the level passed.
 void revoke(java.lang.String objectID, int level, ISecurityGroup group, boolean force, ITicket admin)
          Tries to revoke rights to access the object given the ID with the level passed.
 void revoke(java.lang.String objectID, int level, ISecurityUser user, boolean force, ITicket admin)
          Tries to revoke rights to access the object given the ID with the level passed.
 void store()
           
 
Methods inherited from class org.jwarp.service.security.ASecurity
addSecurityListener, checkAdmin, checkTicket, fireSecurityEvent, getContext, getExpireExtendSeconds, getExpireSeconds, getSecurityObjects, initSecurity, isLoggedIn, removeSecurityListener, setContext
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

groupManager

FileGroupManager groupManager
Constructor Detail

FileSecurity

public FileSecurity(java.lang.String storeFile,
                    ITicket systemTicket)
             throws java.io.IOException,
                    java.lang.ClassNotFoundException

FileSecurity

public FileSecurity(java.io.File storeFile,
                    ITicket systemTicket)
             throws java.io.IOException,
                    java.lang.ClassNotFoundException

FileSecurity

public FileSecurity(java.lang.String storeFile,
                    java.lang.String name,
                    ITicket systemTicket)
             throws java.io.IOException,
                    java.lang.ClassNotFoundException

FileSecurity

public FileSecurity(java.io.File storeFile,
                    java.lang.String name,
                    ITicket systemTicket)
             throws java.io.IOException,
                    java.lang.ClassNotFoundException
Method Detail

store

public void store()

load

public void load()
          throws java.io.IOException,
                 java.lang.ClassNotFoundException

createUser

public ISecurityUser createUser(java.lang.String uid,
                                java.lang.String pwd,
                                java.lang.String name,
                                java.lang.String description,
                                java.lang.Object additonal,
                                ITicket admin)
                         throws java.lang.SecurityException,
                                java.lang.RuntimeException
Define a new user
Following copied from interface: org.jwarp.service.security.ISecurity
Parameters:
uid - The user's identification
pwd - The user's password
name - The user's name
description - An optional description
relationID - An optional relation ID
admin - The user who tries to create the new user
Throws:
java.lang.SecurityException - If the creation failed.

createObject

public ISecurityObject createObject(java.lang.String name,
                                    java.lang.String description,
                                    java.lang.Object additional,
                                    ITicket admin)
                             throws java.lang.SecurityException,
                                    java.lang.RuntimeException
Create a new group with the setings given. The relationID is used to have a reference to whatever data the user needs, e.g. the primary key in the enterpise's db or a more complex string containing several infos.
Parameters:
name - The user's name
description - An optional description
relationID - An optional relation ID
admin - The user who tries to create the new user
Throws:
java.lang.SecurityException - If the creation failed.

createGroup

public ISecurityGroup createGroup(java.lang.String name,
                                  java.lang.String description,
                                  java.lang.Object additional,
                                  ITicket admin)
                           throws java.lang.SecurityException,
                                  java.lang.RuntimeException
Create a new group with the setings given. The relationID is used to have a reference to whatever data the user needs, e.g. the primary key in the enterpise's db or a more complex string containing several infos.
Parameters:
name - The user's name
description - An optional description
relationID - An optional relation ID
admin - The user who tries to create the new user
Throws:
java.lang.SecurityException - If the creation failed.

delete

public void delete(ISecurityGroup group,
                   ITicket admin)
            throws java.lang.SecurityException,
                   java.lang.RuntimeException

delete

public void delete(ISecurityUser user,
                   ITicket admin)
            throws java.lang.SecurityException,
                   java.lang.RuntimeException

delete

public void delete(ISecurityObject object,
                   ITicket admin)
            throws java.lang.SecurityException,
                   java.lang.RuntimeException

getUser

public ISecurityUser getUser(int id,
                             ITicket admin)
                      throws java.lang.SecurityException
Returns the user with the given id.
Returns:
The corresponding user or null

getUser

public ISecurityUser getUser(java.lang.String uid,
                             ITicket admin)
                      throws java.lang.SecurityException
Returns the user with the given uid.
Returns:
The corresponding user or null

getGroup

public ISecurityGroup getGroup(int id,
                               ITicket admin)
                        throws java.lang.SecurityException
Returns the group with the given id.
Returns:
The corresponding group or null

getGroup

public ISecurityGroup getGroup(java.lang.String name,
                               ITicket admin)
                        throws java.lang.SecurityException
Returns the group with the given name.
Returns:
The corresponding group or null

getObject

public ISecurityObject getObject(int id,
                                 ITicket admin)
                          throws java.lang.SecurityException
Returns the object with the given id.
Returns:
The corresponding object or null

getObject

public ISecurityObject getObject(java.lang.String name,
                                 ITicket admin)
                          throws java.lang.SecurityException
Returns the object with the given name.
Returns:
The corresponding object or null

getUsers

public java.util.Iterator getUsers(ITicket admin)
                            throws java.lang.SecurityException
Returns all defined users.
Parameters:
admin - The administrator who triggers the call
Throws:
java.lang.SecurityException - If the Administrator was denied access.

getGroups

public java.util.Iterator getGroups(ITicket admin)
                             throws java.lang.SecurityException
Returns all defined users.
Parameters:
admin - The administrator who triggers the call
Throws:
java.lang.SecurityException - If the Administrator was denied access.

getObjects

public java.util.Iterator getObjects(ITicket admin)
                              throws java.lang.SecurityException
Returns all defined users.
Parameters:
admin - The administrator who triggers the call
Throws:
java.lang.SecurityException - If the Administrator was denied access.

addMember

public void addMember(ISecurityGroup group,
                      ISecurityUser member,
                      ITicket admin)
               throws java.lang.SecurityException,
                      java.lang.RuntimeException
Add a user to a group
Parameters:
user - The user
group - The group
admin - The admin user
Throws:
java.lang.SecurityException - If the setting failed.

addMember

public void addMember(ISecurityGroup group,
                      ISecurityGroup member,
                      ITicket admin)
               throws java.lang.SecurityException,
                      java.lang.RuntimeException
Add a user to a group
Parameters:
user - The user
group - The group
admin - The admin user
Throws:
java.lang.SecurityException - If the setting failed.

addMember

protected void addMember(int group,
                         int user,
                         ITicket admin)
                  throws java.lang.SecurityException,
                         java.lang.RuntimeException
Add a user to a group
Parameters:
user - The user
group - The group
admin - The admin user
Throws:
java.lang.SecurityException - If the setting failed.

removeMember

public void removeMember(ISecurityGroup group,
                         ISecurityGroup member,
                         ITicket admin)
                  throws java.lang.SecurityException,
                         java.lang.RuntimeException
Remove a user from a group
Parameters:
user - The user
group - The group
admin - The admin user
Throws:
java.lang.SecurityException - If the setting failed.

removeMember

public void removeMember(ISecurityGroup group,
                         ISecurityUser member,
                         ITicket admin)
                  throws java.lang.SecurityException,
                         java.lang.RuntimeException
Remove a user from a group
Parameters:
user - The user
group - The group
admin - The admin user
Throws:
java.lang.SecurityException - If the setting failed.

removeMember

protected void removeMember(int group,
                            int member,
                            ITicket admin)
                     throws java.lang.SecurityException,
                            java.lang.RuntimeException
Remove a user from a group
Parameters:
user - The user
group - The group
admin - The admin user
Throws:
java.lang.SecurityException - If the setting failed.

grant

public void grant(java.lang.String name,
                  int level,
                  ISecurityUser user,
                  ITicket admin)
           throws java.lang.SecurityException,
                  java.lang.RuntimeException
Tries to grant rights to access the object given the ID with the level passed.
Parameters:
objectID - The object's id
level - The access level
user - The user the access is granted.
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

grant

public void grant(java.lang.String name,
                  int level,
                  ISecurityGroup group,
                  ITicket admin)
           throws java.lang.SecurityException,
                  java.lang.RuntimeException
Tries to grant rights to access the object given the ID with the level passed.
Parameters:
objectID - The object's id
level - The access level
user - The user the access is granted.
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

grant

public void grant(ISecurityObject object,
                  int level,
                  ISecurityUser user,
                  ITicket admin)
           throws java.lang.SecurityException,
                  java.lang.RuntimeException
Tries to grant rights to access the object given the ID with the level passed.
Parameters:
objectID - The object's id
level - The access level
user - The user the access is granted.
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

grant

public void grant(ISecurityObject object,
                  int level,
                  ISecurityGroup group,
                  ITicket admin)
           throws java.lang.SecurityException,
                  java.lang.RuntimeException
Tries to grant rights to access the object given the ID with the level passed.
Parameters:
objectID - The object's id
level - The access level
user - The user the access is granted.
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

grant

protected void grant(int objectID,
                     int level,
                     int grantedTo,
                     ITicket admin)
              throws java.lang.SecurityException,
                     java.lang.RuntimeException
Tries to grant rights to access the object given the ID with the level passed.
Parameters:
objectID - The object's id
level - The access level
user - The user the access is granted.
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

grant

public void grant(java.lang.String objectID,
                  int level,
                  int grantedTo,
                  ITicket admin)
           throws java.lang.SecurityException,
                  java.lang.RuntimeException
Tries to grant rights to access the object given the ID with the level passed.
Parameters:
objectID - The object's id
level - The access level
user - The user the access is granted.
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

revoke

public void revoke(ISecurityObject object,
                   int level,
                   ISecurityUser user,
                   boolean force,
                   ITicket admin)
Tries to revoke rights to access the object given the ID with the level passed. Force means that it is tried to revoke the rights immedeately.
Parameters:
objectID - The object's id
level - The access level
group - The grouper the access is revoked.
force - Try to revoke emmedeately or after next login
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

revoke

public void revoke(ISecurityObject object,
                   int level,
                   ISecurityGroup group,
                   boolean force,
                   ITicket admin)
Tries to revoke rights to access the object given the ID with the level passed. Force means that it is tried to revoke the rights immedeately.
Parameters:
objectID - The object's id
level - The access level
group - The grouper the access is revoked.
force - Try to revoke emmedeately or after next login
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

revoke

protected void revoke(int objectID,
                      int level,
                      int revokeFrom,
                      boolean force,
                      ITicket admin)
               throws java.lang.SecurityException,
                      java.lang.RuntimeException
Tries to revoke rights to access the object given the ID with the level passed. Force means that it is tried to revoke the rights immedeately.
Parameters:
objectID - The object's id
level - The access level
group - The grouper the access is revoked.
force - Try to revoke emmedeately or after next login
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

revoke

public void revoke(java.lang.String objectID,
                   int level,
                   ISecurityUser user,
                   boolean force,
                   ITicket admin)
            throws java.lang.SecurityException,
                   java.lang.RuntimeException
Tries to revoke rights to access the object given the ID with the level passed. Force means that it is tried to revoke the rights immedeately.
Parameters:
objectID - The object's id
level - The access level
group - The grouper the access is revoked.
force - Try to revoke emmedeately or after next login
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

revoke

public void revoke(java.lang.String objectID,
                   int level,
                   ISecurityGroup group,
                   boolean force,
                   ITicket admin)
            throws java.lang.SecurityException,
                   java.lang.RuntimeException
Tries to revoke rights to access the object given the ID with the level passed. Force means that it is tried to revoke the rights immedeately.
Parameters:
objectID - The object's id
level - The access level
group - The grouper the access is revoked.
force - Try to revoke emmedeately or after next login
admin - The admin who triggers the request.
Throws:
java.lang.SecurityException -  

getMembers

public java.util.Iterator getMembers(ISecurityGroup group,
                                     ITicket admin)
                              throws java.lang.SecurityException
Returns all defined users.
Parameters:
admin - The administrator who triggers the call
Throws:
java.lang.SecurityException - If the Administrator was denied access.

accessGranted

protected boolean accessGranted(int objectID,
                                int level,
                                int user)
Returns true if the user is granted access of the given level to the object with the given ID. This is the cetral access control method of the WHOLE security system.
Returns:
true if the user is a member

accessGranted

public boolean accessGranted(java.lang.String objectID,
                             int level,
                             ITicket userTicket)
Returns true if the user is granted access of the given level to the object with the given ID. This is the cetral access control method of the WHOLE security system.
Returns:
true if the user is a member

accessGranted

public boolean accessGranted(ISecurityObject object,
                             int level,
                             ITicket userTicket)
Returns true if the user is granted access of the given level to the object with the given ID. This is the cetral access control method of the WHOLE security system.
Returns:
true if the user is a member

login

public ITicket login(java.lang.String uid,
                     java.lang.String pwd)
              throws LoginException
Try to login a user

©   O R C A   S y s t e m s