OACC v2.0.0-rc.1
Pre-release
Pre-release
fspinnenhirn
released this
10 Jan 01:49
·
368 commits
to master
since this release
Release date: 2015-01-09
Summary of changes in this release:
- adds new API methods to retrieve direct permissions
- changes all permission classes to interfaces and moves factory methods to new permission factories
- fixes several bugs, as described in more detail below
- extends comprehensive test suite to essentially cover the entire API
- adds checks to API methods to assert arguments are not null or blank
- refines javaDoc comments
- refactors internal codebase (i.e. not the public-facing API)
- to be more consistent and descriptive in method and class names
- to improve readability
- updates copyright notices
Summary of API changes:
- in
AccessControlContext
, adds get-methods for direct permissions to provide round-trip symmetry with the set-methods (enhancement #13) - previously OACC only had getters for effective permissions.getResourcePermissions()
getGlobalResourcePermissions()
getResourceCreatePermissions()
getDomainPermissions()
getDomainCreatePermissions()
- changes all permission classes to interfaces and moves factory methods to the following newly added permission factories
ResourcePermissions
ResourceCreatePermissions
DomainPermissions
DomainCreatePermissions
Bug fixes:
- fixes overloaded
getResourcesByResourcePermission()
to check permissions to the accessor resource when the accessor resource is not identical to the session resource - fixes
getResourcesByResourcePermission()
to not check permissions to the accessor resource when it is identical to the session resource - fixes
impersonate()
to explicitly use the authenticated resource when checking permissions and to check for null arguments - fixes
getDomainNameByResource()
to not throw NullPointerException for non-existent resource references - fixes
getResourceClassInfo()
to not throw NullPointerException for non-existent resource class references - fixes #12 -
assertResourcePermission()
now takeswithGrant
attribute into account when asserting permission - fixes #11 -
assertGlobalResourcePermission()
now takeswithGrant
attribute into account when asserting permission - fixes #10 -
assertPostCreateResourcePermission()
now takeswithGrant
attribute into account when asserting permission - fixes #9 -
setCredentials()
now allows the authenticated resource to set its credentials without requiring explicit permissions - fixes
getAccessorResourcesByResourcePermission()
to be whitespace consistent - fixes
getResourcePermissionNames()
to be whitespace consistent - fixes
assertPostCreateResourcePermission()
to be whitespace consistent - fixes
setGlobalResourcePermissions()
to be whitespace consistent - fixes
getEffectiveGlobalResourcePermissions()
to be whitespace consistent - fixes
getEffectiveResourceCreatePermissions()
to be whitespace consistent - fixes
getEffectiveDomainPermissions()
to be whitespace consistent - fixes
createDomain()
for child domains to be whitespace consistent - fixes
getResourcesByResourcePermission()
to be whitespace consistent - fixes all effective permission getters to remove grant-equivalent duplicates from the result
- fixes #8 -
setDomainCreatePermissions()
no longer checks grant permissions on permissions that are not being changed - fixes #7 -
setDomainPermissions()
no longer checks grant permissions on permissions that are not being changed - fixes #6 -
setGlobalResourcePermissions()
no longer checks grant permissions on permissions that are not being changed and correctly handles up/downgrade of permissions with grant - fixes #4 -
setResourceCreatePermissions()
no longer checks grant permissions on permissions that are not being changed and correctly handles up/downgrade of permissions with grant - fixes #5 -
setResourceCreatePermissions()
strictly validates requested create permissions against specified resource class - fixes #3 -
setResourcePermissions()
no longer checks grant permissions on permissions that are not being changed and correctly handles up/downgrade of permissions with grant - fixes #2 -
setResourcePermissions()
no longer checks grant permissions on permissions that are not being changed and only requires the granting privileges that are necessary - fixes #1 -
getEffectiveResourcePermissions()
now includes global and domain-inherited permissions
Corresponding oacc-db release:
The version of the oacc-db database configuration scripts to be used with this release can be found here.