Changes

Release History

Version Date Description
2.1.1   In VC
2.1.0   2021-11-04
2.0.0   2020-01-04
1.1.3 2019-02-23  
1.1.2 2018-02-02  
1.1.1 2017-05-12  
1.1.0  
1.0.7 2004-11-24  
1.0.6 in cvs  
1.0-alpha-6 in cvs  
1.0-alpha-4 in cvs  
1.0-alpha-3 n/a  
1.0-alpha-2 10-29-2003  
1.0-alpha-1 2003-10-21  

Release 2.1.1

Type Changes By
Update Update to Turbine parent v10 gk

Release 2.1.0

Type Changes By
Update Update to Turbine parent v9 gk
Fix Torque: use by default Turbinegroup not TurbineRole from generated doSelectJoinTurbine* method, as this will be used as key in lookup in acl roleSets. gk
Update Add groupSet to interface to TurbineAccessControlList gk
Update Add transient avalon logger to TurbineAccessControlList constructor gk
Update Use model manager to fetch global group (model manager should be set always) gk
Update Add Torque 5.0 schemata gk
Update Java Dependency updates: Update to commons-dbcp2 2.9.0 (Torque) painter
Update Suspended Hibernate support due to security reasons. hibernate needs update to 5.x version to resolve it in issue: https://issues.apache.org/jira/browse/TRB-103 gk

Release 2.0.0

Type Changes By
Update Java Dependency update: Bump dbcp2 from 2.8.0 to 2.9.0 painter
Fix -Use of interfaces TurbineRolePermissionPeerMapper and TurbineUserGroupRoleModelPeerMapper in fulcrum-turbine-schema.xml and added implementtion in generated stubs, Fix Torque build failures, gk
Update Java Dependency updates: Update to hsqldb 2.5.1, Torque 5.0, dbcp2 2.8.0, javadoc 3.1.0, junit 5.7.0, mockito 3.5.13, Jackson2 2.10.3 turbine parent 7 gk
Fix - Removed id-check in group/permission/role spi managers - databases may use native generator/autoincrement. - Torque add model test - fixed missing interface for Role/Group/Permission DefaultAbstractTurbine*Managers, TurbineRolePermissionPeerMapper gk
Update Update commons-lang3 for all fulcrum projects painter
Update Torque sub project: - Update to Torque 5.0, using PeerInterface in schema, removed classes as now generated with PeerInterface. - add TorqueException to method (TODO DataBackendException wanted) - Dbcp2 update to v2.7.0 gk
Update - log4j2 (hibernate needs mapping 1.2 to 2) gk

Release 1.1.3 – 2019-02-23

Type Changes By
Update Update to commons-lang3, Java 8 by default painter
Update -TurbineAccessControlList interface with generic type bound, - Added replace role and revokeAll group/role methods in model manager, Methods getUserGroupRoleSet(), addUserGroupRole(), removeUserGroupRole() now throw DataBackendException, changed interface TurbineUserGroupRoleEntity, -Update Tests to Junit 5, - Java Dependency updates: Update to Fulcrum-yaafi to 1.0.8, Fulcrum-testcontainer to 1.0.8 gk
Fix -Fix Torque OM build lifecycle (depends on Torque 4.0), -Fix Torque build failures gk

Release 1.1.2 – 2018-02-02

Type Changes By
Update - Torque Turbine Relationships in ACL (Access Control List, which is immutable) with custom relationships: If not using the provided OM classes two approaches exist to get proper ACL user/role/groups. Either overriding or by configuration: Overriding the method retrieveAttachedObjects is done in custom User OM class or use xml configuration and proper schema interface settings (Torque OM), cft. test example. - Added interfaces (TorqueTurbineUserGroupRolePeer, TurbineUserGroupRoleModelPeerMapper) and abstract class (TorqueAbstractTurbineTurbineSecurityEntityDefault) for OM mapping. - retrieveAttachedObjects with lazy parameter Added lazy loading flag if retrieving attachedObjects, i.e. related user role or user group associations are loaded only if requested. If, where and how lazy loading occurs depends on the the manager classes. Currently only group and role manager use it. Configurable with attribute lazy per manager. As a consequence some more methods may now throw DataBackendException. - Implement revokeAll(Group) method in model manager. gk
Update Torque Fulcrum and Default schema, support for Peer interface, global group name configurable in model manager gk

Release 1.1.1 – 2017-05-12

Type Changes By
Update Updated to JUnit 4 Configurable global group in Turbine and dynamic model Optional second level permission check, i.e. TurbineRole and TurbineGroup impl are optional in Turbine ACL and Torque Manager, only TurbineUser interface implementation is required. Resolve TRB-98 gk
Update Torque Fulcrum and Default schema, support for Peer interface, global group name configurable in model manager gk

Release 1.1.0 –

Type Changes By
Update Updated to Torque 4.0 gk
Update Updated to Hibernate 3.6.7 tv
Update Moved to JDK 1.5 tv
Update Move API build to Maven-2. Fixes TRB-78. Thanks to Ludwig Magnusson. tv
Update Moved tests to src/test tv
Update Update to latest release of Torque (3.3). tv
Update Changed BasicUser, BasicGroup, DynamicUser, DynamicGroup, DynamicRole, DynamicPermission, TurbineUser, TurbineGroup, TurbineRole and TurbinePermission to interfaces. Added default implementations for existing security services. Changed all occurrences of these classes to use BasicUserImpl, BasicGroupImpl, DynamicUserImpl, DynamicGroupImpl, DynamicRoleImpl, DynamicPermissionImpl, TurbineUserImpl, TurbineGroupImpl, TurbineRoleImpl and TurbinePermissionImpl instead. tv
Add Implemented a security service based on Torque. tv
Fix Fixed hash code generation and equals() for security entities. tv
Add Updated nt impl, turbine and opensymphony adapters to use released versions of memory impl. Thanks to Kostyantyn Shchekotykhin. epugh

Release 1.0.7 – 2004-11-24

Type Changes By
Add Add test to verify that usernames bob and BOB are treated the same. Thanks to Ben Gidley. epugh
Add Properly flesh out Turbine model of security. epugh

Release 1.0.6 – in cvs

Type Changes By
Add Add to the dynamic model the ability to add delegators for users. A user can have 0..n delegatees who can assume the roles and permissions of the user. Also cleanup of docs. Thanks to Ben Gidley. epugh
Add Make serviceManager in AbstractManager class protected to facilitate extension. Thanks to Peter Courcoux. epugh
Add Expose revokeAll(Group group) to the DynamicModelManager API. Was already implemented in the Hibernate UserManager. epugh
Add Expose getUserById() to the UserManager API. Was already implemented in the Hibernate UserManager. Thanks to Michael Jones. epugh
Add In the Dynamic model, allow permissions to know about the sets they are in. Allows revokeAll(permission) to be called. Thanks to Michael Jones. epugh
Add When adding objects to SecuritySet, delegate the add to the implement RoleSet/PermissionSet etc. Thanks to Michael Jones. epugh
Add Merge the fulcrum-security-spi classes into fulcurm-security-api. The split made it too complex to handle unit testing. epugh
Add Null passwords properly dealt with in TextMatchAuthenticator. mmanner
Add Change Basic* entity objects to use Set. mmanner
Add Change Dynamic* entity objects to use Set. Refactored Hibernate implementation of Security to use more efficient deletion when doing oneshot deletes during revokeAll methods. Added get[Entity]ById() method as well. Change grants/revokes to be Synchronized. mmanner

Release 1.0-alpha-6 – in cvs

Type Changes By
Add Added getAllUsers() to UserManager epugh

Release 1.0-alpha-4 – in cvs

Type Changes By
Add Added ThreadSafe marker interface to AbstractManager. epugh
Add Added the "Basic" model and supplied implementations for memory, NT, and Hibernate. epugh
Add Added the "Basic" model and supplied implementations for memory, NT, and Hibernate. epugh
Add AccessControlLists are now pluggable via the ACLFactory implementation you supply. epugh
Update Vastly refactored the builds into multiple projects. The api related onces are /api and /spi. The implementation details are in /memory,/hibernate, and/nt. And lastly, there are two adapters: /adapters/turbine and /adapters/opensymphony. epugh
Remove Tossed the various Torque code. It isn't unit tested, and was causing lots of work that couldn't be tested.. At some point, if there is demand, we can put it back. epugh

Release 1.0-alpha-3 – n/a

Type Changes By
Add Realized the one size fits all ACL doesn't work.. ACL's are tied to models. Now, there is an AccessControlList interface, but it is just a marker. Each model implements the ACL. Added a Memory implementaiton of the Turbine model. epugh
Fix All the various SecuritySet implementations base their logic off their Name, not the ID, or Object type. Fixes problems with comparisons when you have various subclasses. epugh
Fix For a SecurityEntityImpl, if the name is null then throw an InvalidParameterException. epugh
Add Add ModelManager interface and SimpleModelManager and TurbineModelManager component that explicitly contains the relationship between the various entities. epugh

Release 1.0-alpha-2 – 10-29-2003

Type Changes By
Update Change all get(Role/Group/User/Permssion)Instance from throwing an UnknownEntityException to throwing a DataBackendException. There is no entity id when creating a new one yet! epugh
Add Added an adapter to OSUser. This allows OSUser to query Fulcrum Security for users and to authenticate them via Fulcrum Security authenticators. epugh

Release 1.0-alpha-1 – 2003-10-21

Type Changes By
Add Added an IntegerConverter so the adapter can be used with fulcrum SPI's that use Long/Integer/String (as a number) as the ID. epugh
Add Converted id to Object. Now the various SPI's cast the Object type to whatever they want to use. epugh
Add Pluggable Authenticators done. Added NT, crypto, and plain text. epugh
Add Hibernate based Simple model done. epugh
Update Converted all id's for security objects to "long" values to prevent running out of numbers. epugh