Commit Graph

1068 Commits

Author SHA1 Message Date
Tuna Aksoy
edaad604fa In the user security clearance page if users cannot be found an error message should not be displayed.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105631 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-05 14:28:04 +00:00
Tuna Aksoy
35db56b736 RM-2260 (Users with read&file permissions on content can not classify it if they are not the owners)
* Fixed failing integration test

+review RM-83

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105567 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-05 09:31:43 +00:00
Tuna Aksoy
3428ce40e6 RM-2129 (Check classification before method execution)
+review RM-69

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@105565 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-05 08:51:17 +00:00
Tuna Aksoy
d9dc7c7e52 RM-2260 (Users with read&file permissions on content can not classify it if they are not the owners)
+review RM @rwetherall

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105541 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-04 15:41:00 +00:00
Tuna Aksoy
ce10e38225 RM-2247 (Add classification banner to document details)
RM-2248 (Add classification banner to record details)

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105441 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-03 09:46:09 +00:00
Tom Page
e98c269c49 Fix a few places I missed refactoring.
Hopefully this will fix the build.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105318 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-02 11:17:19 +00:00
Tom Page
ea0548bdf8 Rename ClassificationService to ClassificationSchemeService.
Also rename ClassificationServiceException to ClassificationException.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105317 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-02 10:20:37 +00:00
Tom Page
1becb69355 Fix failing test on Sonar build.
Avoid calling the I18N utility by checking the display label key directly.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105312 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-02 09:21:30 +00:00
Tuna Aksoy
7a558aa3d8 Fixed compilation issue
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@105294 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-01 16:46:59 +00:00
Tuna Aksoy
e46ec39aa7 RM-2208 (Prevent classification of shared content)
+review RM @rwetherall

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105284 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-01 13:32:12 +00:00
Roy Wetherall
0b23552722 First pass at classification interceptor
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/DEV/ENFORCE@105194 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-01 08:20:12 +00:00
Tom Page
16bde534af Use mock in unit test for ClearanceLevelManager.
Although I'm not sure exactly why this unit test failed on the Sonar build,
it seems sensible to remove the dependency on another class by using a mock.

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105192 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-06-01 07:59:10 +00:00
David Webster
6f4775a393 RM-2270: WIP: Extending QuickShareService to prevent classified content being shared. Checking in for +review @taksoy @tpage @rweatherall @nmcerlean
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@105022 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-29 10:53:36 +00:00
Tuna Aksoy
4d29332cb6 RM-2268 (If the currentPage attribute value is changed to a invalid one in the URL the Security Clearance page is not displayed in error)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104905 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-27 15:59:48 +00:00
Tom Page
587786c2de RM-2123 Ensure user has clearance to classify content.
Also add clearance check method into security profile.

+review RM-58

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104750 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-22 13:20:00 +00:00
Tom Page
3dc6ed9a71 RM-2123 Use runAsAuthentication instead of actual authentication.
Check that the user the command is run as has clearance to view the
classification levels, rather than the user that initiated the command.

+review RM-58

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104729 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-22 08:43:12 +00:00
Tom Page
90be46f97e RM-2123 Fix comparator to be the correct way around.
Also add application context tests to cover this case.

+review RM-58

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104700 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-20 15:39:46 +00:00
Tom Page
80634961a9 RM-2123 Move clearance checking to SecurityClearanceService.
Refactor ContentClassificationService#hasClearance so that it calls out to
SecurityClearanceService#isCurrentUserClearedForClassification. Restrict
isCurrentUserClearedForClassification so that it only applies to the current
authenticated user (we don't need to use it for anything else).  Also
extract classification level comparison to a new class.

+review RM-58

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104568 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-20 08:28:46 +00:00
Tom Page
d4b7eaa3bc RM-2123 Don't create a user called system.
Also add special check in clearance service that gives system user maximum
clearance.

+review RM-58

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104480 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-19 09:57:02 +00:00
Tuna Aksoy
df58ce99a7 RM-2204 (Hover over classification reason id on properties page reveals nothing)
+review RM @rwetherall

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104476 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 21:22:17 +00:00
Tom Page
5f6cf2187a RM-2123 Give clearance to the admin and system users.
Make sure this is executed as a patch and also bootstrapped into a clean
system using the BootstrapImporterModuleComponent.

Also restrict access to the classification levels (via the get API) to
only the levels that the user has clearance to.

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104376 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 15:03:59 +00:00
Tom Page
582c179382 RM-2123 Create a new service for content classification.
Move methods to do with content from the ClassificationService and the
SecurityClearanceService into the ContentClassificationService.

Remove the dependency of SecurityClearanceService on ClassificationService
which will allow us to reverse this dependency in the next commit.  This is
needed in order to filter classifications by the current user's clearance.
Nb. This included adding a method in the SecurityClearanceService called
isClearedForClassification, which looks quite similar to a new API Roy
created hasClearance (see ContentClassificationService).  In the future we
should look to see if we can consolidate these.

Remove dependency of ClassificationServiceBootstrap on the services, so that
it can be passed into them. This allows us to provide access to the POJO
managers in the services (this is made harder as the POJO managers aren't
Spring beans).  In order to initialise these objects, change the POJO
managers to use setters rather than constructor arguments. This allows us
to store a reference to the manager before the data has been loaded.

Move the attribute service keys for classification levels and reasons into
the ClassifiedContentModel.

Expect NO_CLEARANCE to be passed into the ClearanceLevelManager, as
otherwise we have to have logic to exclude it (see initialise in the old
SecurityClearanceService) and then more logic to include it again (see the
old constructor for ClearanceLevelManager).

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104375 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 15:03:57 +00:00
Tuna Aksoy
36e35457ec RM-2160 (Update Classify Action config once users with security clearances exist)
+review RM-57

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104346 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-18 13:21:49 +00:00
Tuna Aksoy
31bb13aa1f RM-2160 (Update Classify Action config once users with security clearances exist)
+review RM @rwetherall @dwebster

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104308 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 16:20:16 +00:00
David Webster
be7142f439 RM-2197: restrict restrictList access, as suggested by Tom and Tuna during +review RM-56
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104305 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 16:07:20 +00:00
David Webster
e5c5b2f9b5 RM-2197: Create REST GET API to return clearance levels
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104246 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 10:04:52 +00:00
David Webster
0a20c4db5a RM-2197: Extend Java service to return a list of security clearances the user can see.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104244 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 10:02:23 +00:00
Roy Wetherall
f0a50ac432 Added 'hasClearance' method to SecurityClearanceService to support EntryVoter and AfterInvocationProvider implementations
* relates to RM-2129 & RM-2130
 * added 'getCurrentClassification" method to ClassificationService
 * added concept of system classification level "Unclassified" .. it no longer is required to be specified in the JSON bootstrap since this is a well known and alway required basic classification level
 * added concept of system security clearance level "No Clearance" .. automatically added and relates to unclassified classificaiton level
 * unit tests updated and added
 * started to move some of the logic out of unit test base class and into helper library called 'AlfMock'!



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104229 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-15 03:21:08 +00:00
David Webster
0b70bfa133 RM-2120: Add error handling (and test) as suggested by Neil during + review RM-46
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@104157 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-14 10:58:19 +00:00
Tom Page
df8bf4aa4b RM-2197 Replace "No Clearance" with "Unclassified" in list of levels.
Created a notion of clearance level distinct from (but related to)
classification level. A clearance level references the highest
classification level it has access to. A SecurityClearance now contains a
ClearanceLevel, which in turn contains a ClassificationLevel.

Created a ClearanceLevelManager and initialise it at the same time as the
ClassificationLevelManager.

+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103929 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-11 08:16:03 +00:00
Roy Wetherall
4cf80a2901 RM-2186: Complete records can not be classified
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103923 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-11 01:25:11 +00:00
Tom Page
0cf19c441c Revert RM-2123 Update Java API to filter with current user's clearance.
The circular dependency causes a problem when loading the Spring context.
Reverting to rethink the approach.

+review RM-47



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103856 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-08 09:26:27 +00:00
Tom Page
3590b9327d RM-2123 Update Java API to filter with current user's clearance.
+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103851 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-08 08:11:58 +00:00
David Webster
35afc42a8c RM-2120: Add Java backed webscript to set the security clearance for a specified user
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103827 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-07 14:01:56 +00:00
David Webster
98155a3147 RM-2119: Update Java API to return the security clearance object when setting it.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103826 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-07 13:58:16 +00:00
Tom Page
abcd43455c RM-2119 Don't need to explicitly apply the aspect.
By setting the property on the node the aspect will be applied
automatically if it hasn't already been applied.

+review RM-45

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103786 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-07 07:59:44 +00:00
Neil McErlean
10f9e47e01 Code review of RM-2113. Minor clarification in javadoc.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103783 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 16:29:06 +00:00
Neil McErlean
568a7c1dc8 Moer RM-2113 review comments. Renaming SecurityClearance.getClassificationLevel to getClearanceLevel
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103782 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 16:26:50 +00:00
Neil McErlean
52e8e73ba0 RM-2113. Acting on review comments.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103781 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 16:11:16 +00:00
Tom Page
fae0db60f0 RM-2119 Cast String to Serializable so that this compiles under Java 7.
+review RM-45

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103780 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 15:39:07 +00:00
Tom Page
07ce45fec8 RM-2119 Java API to change a user's security clearance.
+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103777 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-06 15:27:35 +00:00
Tuna Aksoy
405ff33dfc RM-2114 (REST API to GET users security clearance)
+review RM-43

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103667 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-02 15:20:52 +00:00
Tuna Aksoy
8991afd16d RM-2114 (REST API to GET users security clearance)
+review RM-43

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103502 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-01 16:46:18 +00:00
Tuna Aksoy
e7b7ae394f Removed warnings
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103492 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-01 16:32:06 +00:00
Neil McErlean
381f281e8d RM-2113. A null-valued search term in the user query is allowed.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103489 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-01 14:43:37 +00:00
Neil McErlean
812753a249 RM-2113 Ensure that the number of users returned in a query has an accurate total count.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103488 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-01 14:41:00 +00:00
Neil McErlean
648fa3001c Edits following review of RM-2113 code.
I have changed the SecurityClearanceService query API so that it accepts a single Java object containing all the configurable options for such a query. Sensible default values are set where possible. The query object follows the Builder pattern so it should be easier to use the defaults in a query and still possible to change those defaults ifnecessary.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103471 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-05-01 09:50:59 +00:00
Tuna Aksoy
8ba922a986 RM-2114 (REST API to GET users security clearance)
+review RM

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103359 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-04-30 15:24:37 +00:00
Roy Wetherall
2c3bdc01cd RM-2162: Records Management patch RMv22DODModelSeparationModulePatch taking too long with large amount of records
* added configuration property that allows existing DoD RM site to be converted to standard RM site
 * added deprecated properties back into rma namespace to avoid loss of data
 * patches to move properties into DoD namespace not executed if not required
 * removed a couple of references to moved properties that still existed
 * ensure address properties are moved if required

+review RM



git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/BRANCHES/V2.2.1.x@103185 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-04-30 04:42:25 +00:00
Neil McErlean
f7f8dcdc91 Slight refactor/improvement to SecurityClearanceService as part of reviewing RM-2113.
The API had been dealing with Pair<PersonInfo, ClassificationLevel> objects and I've extracted that out
into its own type: SecurityClearance. Should make some of the code more readable.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/modules/recordsmanagement/HEAD@103133 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2015-04-29 14:18:36 +00:00