Commit Graph

447 Commits

Author SHA1 Message Date
Dave Ward
1a481a63c2 Merged BRANCHES/DEV/DAVEW/SPRING3 to HEAD
15422: Fix deploy-virtual-tomcat macro for Spring 3
   15391: Fix ContentStoreReplicatorTest for Spring 3
   15390: Upgrade CXF to version 2.2.2 for Spring 3 compatibility
   15385: Correction to previous checkin
   15384: Fix ClassPathStore.createRelative() to work with Spring 3
      - Relative resource path resolution with directory resources has changed
   15346: Merged V3.3_SPRING3 to SPRING3
      15310: Spring 3: Change to the way that FileContentStore broadcasts its existence to interested parties (for enterprise-only monitoring)
         - Introduced new SafeEventPublisher singleton that queues up events until after the application context has finished refreshing
      15309: Use AUTODETECT_NONE auto detect mode for JMX exporters to be compatible with Spring 3
      15308: Fix IBATIS integration to be compatible with Spring 3
      15307: Added missing runtime dependencies
         - org.springframework.expression-3.0.0.RC2.jar
         - org.springframework.asm-3.0.0.RC2.jar
      15289: Move Alfresco stack to Spring 3
         - Stage 1: get it compiling in eclipse and update ant scripts
         - Still requires Web Framework contributions from Uzi


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17624 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-11-23 20:20:06 +00:00
Dave Ward
f351590801 Merged V3.2 to HEAD
17476: ETHREEOH-3374: Fixed problem when LDAP sync worker thread reaches a child group out of order from its parent
      - Used fix from ETHREEOH-3295 to force transaction retry


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17477 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-11-13 18:11:12 +00:00
Dave Ward
abe965cf15 Merged V3.2 to HEAD
17462: ETHREEOH-3346: New meaning to synchronization.synchronizeChangesOnly property
      - In the LDAP sync performance optimizations we always used the differential queries to determine the users and groups to be updated. Deletions were determined by a separate query.
      - This meant that if you ever did want to force the update of all users it wasn't possible.
      - So now when the flag is false it means don't use differential queries in the scheduled sync job.
      - The scheduled job now processes deletions regardless.
      - The default value for the property is now true.
   17431: ETHREEOH-3274: Refix NTLM support for share
      - Fixed NPE introduced by ETHREEOH-2767
      - Made web.xml validate against schema for JBoss
      - Reintroduced missing open comment in webscript-framework-config-custom.xml.sample
   17426: ETHREEOH-2997: Fix ticket parameter passing into NTLM/Kerberos WebDAV authentication filters
      - A NPE was stopping it from working
   17425: ETHREEOH-3282: Fixed NPE preventing upload from working with NTLM SSO enabled
   17368: ETHREEOH-3197: Use utf8_bin collation in MySQL out of the box to avoid problems with comparison of accented characters
   17361: ETHREEOH-3276: Don't attempt to start an LDAP sync when the repository is read only
   17347: ETHREEOH-3206: Fix LocalFeedTaskProcessor to work with JBoss 5


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17464 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-11-13 12:40:33 +00:00
Jan Vonka
1fa09a014d Merged V3.2 to HEAD
17398: Merged V3.1 to V3.2
        17396: Merged V2.2 to V3.1
            17393: Fix ETHREEOH-2912 / ETWOONE-243 - Permissions issue with Versioning enabled


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17402 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-11-10 09:50:17 +00:00
Dave Ward
f360f5fe3c Merged V3.2 to HEAD
17171: Possible fix to latest intermittent concurrency issues in V3.2 build
      - PersonTest needs to do its ref checking in a new transaction and concurrent hash map used for thread safety
      - Thread safety of ReaderManagementPool singleton


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17173 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-27 10:36:43 +00:00
Dave Ward
b8aaa9c372 Merged V3.2 to HEAD
17163: org.alfresco.repo.domain.hibernate.AclDaoComponentImpl.updateAuthority() needs to flush/dirty the session in order to work
   17160: Fix HeartBeat
      - Lazy initialization in scheduled job needed its own transaction
   17146: Fix failing unit tests
      - HibernateNodeDaoServiceImpl.moveNodeToStore() must invalidate parentAssocsCache now that it contains NodeRefs
   17145: Fixes to patches for new CRC schema changes
      - Sequenced patch.fixNameCrcValues-2 before all other patches
      - Fixed typos in schema upgrade script and added CRCs for the repository descriptor nodes, so that the descriptor service and patch service can boot up
      - HeartBeat initializes lazily so that it doesn't try to load information before the patch service has bootstrapped
      - Made FixNameCrcValuesPatch industrial strength by using BatchProcessor to handle multi threading, progress reporting and transaction delineation
   17097: Removal of spurious logs directory accidentally introduced in 17096
   17096: Performance tuning for improved throughput during high volume import from LDAP directory
      - Lucene indexer will now no longer index and then reindex the same node in the same transaction
      - lucene.indexer.mergerTargetOverlaysBlockingFactor reduced to 1 (improves indexing performance and no excessive throttling observed during 10 hour test)
      - HomeFolderManager fixed so that it pays attention to the eager home folder creation flag
      - HibernateNodeDaoServiceImpl.parentAssocsCache 'upgraded' to hold information about root nodes and node refs so that recursive methods such as prependPaths can run entirely out of the cache
      - Boolean argument added to getChildAssocs() so that preloading of all child nodes is optional
      - qname_crc column added to alf_child_assoc to allow efficient lookup and indexing of child associations by QName. CRC of (qname_namespace, qname_localname).
      - idx_alf_cass_qnln on qname_localname replaced with idx_alf_cass_qncrc (qname_crc, type_qname_id, parent_node_id)
      - All node service lookup queries involving qname_localname modified to include qname_crc in WHERE clause
      - schema patch provided
      - existing org.alfresco.repo.admin.patch.impl.FixNameCrcValuesPatch extended to also fill in qname_crc column and forced to run on newer schemas
      - Optimized ChainingUserRegistrySynchronizer so that it doesn't have to look up the entire set of authorities during  an 'empty' incremental sync
      - ChainingUserRegistrySynchronizer no longer starts an outer transaction around all its smaller transactions (used to die due to timeout)
      - rule service disabled for LDAP batch processing threads
      - org.alfresco.cache.parentAssocsCache and org.alfresco.cache.storeAndNodeIdCache size increased to 80,000
      - Fixed case sensitivity issue with person caching in PersonServiceImpl
      - Cache the people container in PersonServiceImpl for faster person lookups
      - PersonDAO removed and replaced with now more efficient node service child assoc lookup methods


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17168 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-26 15:52:59 +00:00
Dave Ward
104d6258a5 Fix failing unit test. Person cache case sensitivity issues due to fix for ETWOTWO-389.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17140 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-23 16:07:57 +00:00
Andrew Hind
ca1de03f8b Merged V3.2 to HEAD
17076: Improvements for ETHREEOH-2153: patch.updateDmPermissions takes too long to complete


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17082 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-22 10:54:25 +00:00
Derek Hulley
837608d8f3 For for InMemoryTicketComponent, which iterates over the keys in the cache
- The root issue is that some entries are null markers
 - Cache entries could disappear during the iteration anyway
 - Cleaned up some comments in the cache code


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17073 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-21 22:26:21 +00:00
Dave Ward
8f6773284f Merged V3.2 to HEAD
16939: Merged V3.1 to V3.2
      16938: ETHREEOH-622: AuthorityServiceImpl uses userNameMatcher to check for admin users according to case sensitivity settings
      16934: ETHREEOH-2584: Coding error in BaseSSOAuthenticationFilter
   16924: LDAP Performance
      - Created NodeService addChild variants that can add associations to multiple parents (groups/zones) at the same time with a single path check.
      - Created AuthorityService addAuthority variant that can add an authority to multiple groups at the same time, using the above
      - Optimized group association creation strategy. Groups and Persons created in 'depth first' order (root groups first, parents last). Prevents the nodes having to be reindexed.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17070 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-21 15:52:13 +00:00
Kevin Roast
24792204ba Minor collection size tweaks, removal of unused oncreate node policy handler, cleanup.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17046 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-20 13:48:04 +00:00
Andrew Hind
5a0883f91c Merged V3.2 to HEAD
17002: Merged V3.2 to V3.2
        14187: (record-only) Fix for ETHREEOH-2023: LDAP import must lower case the local name of the association to person.
        14941: Merged V2.2 to V3.1
            14830: Fix for ETWOTWO-389: Alfresco will not fix up all the permissions if the UID is changed
            14849: Build Fix: Remove the constraint to avoid the creation of duplicate users (it stops permission assignment before user creation)
            14867: Build Fix: Disable tests for concurrent creation of groups and people (it leaves an odd group around and is not currently used)
            14880: More for ETWOTWO-389: restrict fix ups for uid/gid to case changes only. Other changes are rejected.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17013 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-19 10:07:49 +00:00
Andrew Hind
5b78c27360 Merged V3.2 to HEAD
16674: Fix for ETHREEOH-2867: Deadlock issues experienced with PermissionModel where CPU thrashing was observed addressed by changing ConcurrentHashMap and Collections.synchronizedMaps instead of Hashmaps
    16678: Build Fix (Remove Java 6 constructors for ConcurrentHashMap)


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17008 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-18 19:40:38 +00:00
Mark Rogers
07a0200048 ETHREEOH-2811 : logger logs the wrong user
- now clears the NDC.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16973 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-15 17:33:25 +00:00
Jan Vonka
8d2f4f8dd2 Merged V3.2 to HEAD
16652: Fix ETHREEOH-1052 - usage is not displayed (for admin & guest - after initial bootstrap, before restart)
    16778: Fix ETHREEOH-3009 - Patch required for UserUsageTrackingComponent so that new queries work on upgraded repository


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16922 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-14 14:06:40 +00:00
Dave Ward
b1433afacf Merged V3.2 to HEAD
16780: Fix failing unit test
      - HeartBeat now needs to be constructed inside a transaction.
   16765: Merged DEV/BELARUS/V3.2-2009_10_05 to V3.2
      16754: ETHREEOH-2534: SPP does not authenticate when authentication chain contains both alfrescoNtlm and passthru types.
         - NTLM Authentication handler for Sharepoint module was implemented as singleton. But after it was integrated into Alfresco Authentication Subsystem, instance of this object is created for each type of NTLM authentication. As result static field with NTLM flags was rewrited for each instance. Bug was resolved by removing static indicator.
   16751: LDAP sync improvements
      - Correction to the way retried transactional errors are reported
      - Addition of unit test for synchronization with a mock user registry generating a large volume of users, groups and associations
   16749: Removed UserUsageBootstrapJob from scheduled jobs and moved UserUsageTrackingComponent to bootstrap
      - files missed from CHK-9619
   16748: User Usage Tracking Component bootstrapped synchronously to avoid its expensive queries across all users 'stepping on top of' other bootstrap activity such as LDAP synchronization
      - Its startup messages are no longer masked out by log4j.properties
      - Logged ETHREEOH-3009 regarding upgrade impact of new faster queries
   16747: Lower impact of HeartBeat service on server performance
      - More efficient AuthorityService APIs used to determine the total number of groups and users more efficiently
      - Queries of all users and groups done synchronously at startup only
   16746: Improvements for faster user and group lookup and association on a large repository (unfortunately intertwined)
      - NodeService getChildAssocRefsByTypeQNames query rewritten to use a subquery to force a more logical evaluation order on MySQL
      - NodeService getChildAssocs method made to use more efficient getChildAssocRefsByTypeQNames DAO call when a type qname but no assoc qname is specified
      - NodeService getUsersWithoutUsage / getUsersWithUsage queries rewritten to avoid an expensive outer join on all users
      - PersonService getPersonIgnoreCase query corrected to include the type QName ID of the child associations it is querying (thus avoiding unnecessarily triggering duplicate person removal)
      - PersonService now supports an optional boolean argument to getPerson that indicates whether the auto-create + home folder creation behaviour should be triggered.
      - AuthorityDAOImpl now uses false argument to getPerson call to avoid lazy home folder creation during creation of group associations
      - AuthorityDAOImpl now specifies assoc type to getChildAssocs in getAllAuthoritiesInZone and findAuthorities calls so that the more efficient query variant is used
      - Redundant personExists() call removed from authorityServiceImpl


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16914 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-14 11:48:02 +00:00
Dave Ward
85c1b71826 Merged V3.2 to HEAD
16662: LDAP sync: improved group association filtering, referential integrity checking, deletion strategy and performance tuning of batch sizes
   16648: ETHREEOH-2752: Improved ticket validation fix
      - Invalidate user's tickets during person deletion rather than validation or it can mess up chained validation
   16647: ETHREEOH-2534: Fixed Sharepoint NTLM authentication
      - user details were never getting cached in the session
   16579: Small improvement to LDAP error reporting
      - Committed errors counted before successes in a logging interval
   16515: LDAP sync performance
      - Improved full sync strategy - run differential queries to work out required updates/additions and full queries to work out required deletions. Saves updating unchanged nodes.
      - Use a TreeSet rather than a HashSet to gather group associations in an attempt to avoid blowing the heap size
   16498: More LDAP performance improvements
      - Uses thread pool with 4 worker threads and blocking queue to process returned results. The number of worker threads can be controlled by the synchronization.workerThreads property.
      - Switched LDAP connection pooling back on again
      - Group Associations processsed individually so that errors are collated and we get a better idea of their throughput
      - Fixed potential bug. Group membership resolution done with isolated LDAP context to avoid cookies from paging creeping in.
   16424: Try switching off LDAP connection pooling to see if it works better with our flaky server.
   16414: Further LDAP fault tolerance
      - Log causes of group member resolution failures where possible
   16413: More fault tolerance for LDAP sync
      - Always commit last sync times before overall sync is complete to avoid the 'forgetting' of differential sync information
      - DN comparisons should be case insensitive to avoid issues resolving DNs to user and group IDs
   16398: Improved monitoring and fault tolerance for LDAP sync
      - When the batch is complete a summary of the number of errors and the last error stack trace will be logged at ERROR level
      - Each individual error is logged at WARN level and progress information (including % complete) is collated and logged at INFO level after a configurable interval
      - In the Enterprise Edition all metrics can be monitored in real time through JMX
      - Sanity testing to be performed by Mike!
   16319: Merged HEAD to V3.2
      16316: ALFCOM-3397: JBoss 5 compatibility fix
         - Relative paths used by LDAP subsystem configuration weren't being resolved correctly
         - See also https://jira.jboss.org/jira/browse/JBAS-6548 and https://jira.springsource.org/browse/SPR-5120
   16272: ETHREEOH-2752: Once more with feeling!
   16261: ETHREEOH-2752: Correct exception propagation.
   16260: ETHREEOH-2752: Fix ticket validation
      - Current ticket was getting forgotten by previous fix
      - Person validation in CHECK mode now done AFTER the current user is set, so that the current ticket is remembered
   16243: ETHREEOH-2752: Improve ticket validation used by all authentication filters
      - Now takes into account whether person actually exists or not
      - Tickets for non-nonexistent persons are now considered invalid and cached session information is invalidated
      - New BaseAuthenticationFilter superclass for all authentication filters
      - Improved fix to ETHREEOH-2839: WebDAV user is cached consistently using a different session attribute from the Web Client
   16233: ETHREEOH-2754: Correction to previous checkin.
      - relogin for SSO authentication, logout for normal login page
      - logout is default
   16232: ETHREEOH-2754: Log Out Action outcome passed as a parameter
      - relogin for SSO authentication, login for normal login page
      - Means the log out link always leads to the correct place, even when the session has expired
      - Also lowered ticket validation error logging to DEBUG level to avoid unnecessary noise in the logs from expired sessions
   16220: ETHREEOH-2839: Fixed potential ClassCastExceptions when Alfresco accessed via WebDAV and Web Client links in same browser
      - WebDAV side no longer directly casts session user to a WebDAVUser
      - ContextListener no longer casts session user to web client user
      - Web client side will 'promote' session user to a web client User if necessary via AuthenticationHelper
      - All authentication filters made to use appropriate AuthenticationHelper methods
   16211: ETHREEOH-2835: LDAP sync batches user and group deletions as well as creations
      - Also improved logging of sync failures
   16197: ETHREEOH-2782: LDAP subsystems now support search-based user DN resolution
      - When ldap.authentication.userNameFormat isn't set (now the default) converts a user ID to a DN by running ldap.synchronization.personQuery with an extra condition tacked on the end to find the user by ID
      - Structured directories and authentication by attributes not in the DN such as email address now supported
   16189: ALFCOM-3283: Prevent errors when user accepts an invite when not logged in
      - new isGuest attribute propagated to user object
      - header component (used by accept-invite page) needs to avoid calling prefs and site webscripts for guest user
      - Conditional stuff in header template changed to use user.isGuest


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16896 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-14 09:24:13 +00:00
Dave Ward
065fd29c52 Merged V3.2 to HEAD
15888: ETHREEOH-2617: CIFS Authenticators should not try to initialize when disabled
      - removed init-method declaration from cifsAuthenticatorBase
   15731: ENH-524: Use JobLockService to ensure that it is only possible for LDAP sync to run on one node at a time in a cluster
      - Ensures that if schedule is identical on all nodes, the LDAP sync will only be run on one
   15694: Fix TransactionServiceImplTest broken by 15685
   15685: ETHREEOH-983: Move RepoServerMgmt JMX editable capabilities into a sysAdmin subsystem for more consistent control and cluster support
      - New SysAdminParams interface exported by sysAdmin subsystem through which AuthenticationService and TransactionService get at the configured parameters
      - The repository read only flag does not apply to the system user so that we can still persist changes to that flag through JMX!
      - Removed sysAdminCache and supporting configuration.
   15684: Improvements to cluster support for subsystems
      - When a subsystem is stopped on a node for editing it is completely destroyed and deregistered from JMX on other nodes
      - Should the subsystem be reactivated on those other nodes (e.g. called into by code) it will be reinitialized from persisted properties and thus stay in sync with the node being edited!
   15683: Fixed potential concurrency issues in HeartBeat and LicenseComponent
      - Discovered during cluster testing
      - Because these components schedule triggers in a retrying transaction, they need to unschedule the triggers beforehand, just in case a retry has happened
   15617: MOB-646: JMX edits now synchronized across cluster via JGroups
      - When you stop a component or subsystem, it is stopped across the entire cluster
      - When you restart it after editing properties, the component is reinitialized from the persisted properties across the cluster


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16873 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-13 14:43:23 +00:00
Derek Hulley
e5e0d24090 Merged V3.2 to HEAD
15625: Merged V3.1 to V3.2 (record-only)
     14075: (record-only) Merged V2.2 to V3.1
        13859: (record-only) Removed dev from version label
        14003: (record-only) Updated version to 2.2.5dev
     14408: (record-only) VersionMigratorFix AMP (ETHREEOH-2102) - initial checkpoint
     14414: (record-only) ETHREEOH-2102 - fix schema (valid patch for 3.1.0)
     14501: (record-only) VersionMigratorFix AMP (ETHREEOH-2157)
     14573: (record-only) Merged V2.2 to V3.1
        14566: (record-only) ETWOTWO-1239 - remove workflow interpreter/console bootstrap
        14572: (record-only) ETWOTWO-1239 - fix PersonTest to fix JBPMEngineTest (part-sourced from r13247)
     14598: (record-only) VersionMigratorFix AMP (ETHREEOH-2192)
     14777: (record-only) Merged V2.2 to V3.1 (record-only - due to back merge)
        14776: (record-only) ETHREEOH-2225 - WCM upgrade (performance improvements for MySQL
   15632: Fix log in to Explorer client
   15697: Merged V3.1 to V3.2 (record only)
      15696: Merged V3.2 to V3.1
         15495: ETHREEOH-2149: Fix up setting of the content language filter in all authentication filters 
___________________________________________________________________
Modified: svn:mergeinfo
   Merged /alfresco/BRANCHES/V3.1:r14075,14408,14414,14501,14573,14598,14777,15696
   Merged /alfresco/BRANCHES/V3.2:r15625,15632,15697


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16872 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-13 14:09:52 +00:00
Derek Hulley
e31a8bf882 Merged V3.2 to HEAD
15586: Merged V3.1 to V3.2
      14863: Fixed ETHREEOH-2223: Oracle version-specific schema update failure in upgrading from 2.1A build to 3.1 build
      15041: Further fix for ETHREEOH-2223: Oracle version-specific schema update failure in upgrading from 2.1A build to 3.1 build
      15428: The ipAddress field of HibernateNodeDaoServiceImpl is 39 characters long (Transaction.hbm.xml modified)
      15472: Incremented schema version number for SQL patch
      15502: ETHREEOH-2292: Deployment failure in case of IPv6 on Win 2k8
             *NOTE*: Removed Derby scripts as it's no longer supported
   15588: (record only after Derby script removal) Fixed over-zelous move of Derby scripts
   15589: Removed hard-coded GUEST reference
___________________________________________________________________
Modified: svn:mergeinfo
   Merged /alfresco/BRANCHES/V3.1:r14863,15041,15428,15472,15502
   Merged /alfresco/BRANCHES/V3.2:r15586,15588-15589


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16863 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-13 13:02:56 +00:00
Derek Hulley
69249332d3 Merged V3.2 to HEAD
15579: Merged V3.1 to V3.2
      14048: Fixed ETHREEOH-1612: Unable to modify the 'guest' username(s)
      14093: Build/test fix - fallout from recent guest changes
   15581: Removed reference to 'alfresco.messages.portlets' resource bundle
   15582: Fixed merge errors after guest user changes
   15583: Merged V3.1 to V3.2
      14049: Minor addition to ETHREEOH-1612 fix: Guest and Admin usernames should not be changed AFTER INSTALLATION
      14060: Handle null username in calls to authenticate
      14086: Removed references to non-existent GROUP_ALFRESCO_GUESTS.
   15584: Merged V3.1 to V3.2
      14103: Build/test fix - fallout from recent guest changes (revert previous change + move makeHomeFolderIfRequired out of getPersonOrNull)
   15585: Merged V3.1 to V3.2
      14110: Build/test fix (CMISTest) - fallout from recent guest changes (test server ctx must be init'ed before calling runAs)
      14166: Fixed ETHREEOH-2016: Usernames with domain-name separators lead to "bad filename" errors
      14184: *RECORD ONLY* Fixed ETHREEOH-2018: NTLM SSO fails with NPE
      14495: *RECORD ONLY*
      14511: *RECORD ONLY*
      14516: ETHREEOH-2162 (DB2 script key rename)
___________________________________________________________________
Modified: svn:mergeinfo
   Merged /alfresco/BRANCHES/V3.0:r14494
   Merged /alfresco/BRANCHES/V3.1:r14048-14049,14060,14086,14093,14103,14110,14166,14184,14495,14511,14516
   Merged /alfresco/BRANCHES/V3.2:r15579,15581-15585


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16859 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-13 11:51:40 +00:00
Jan Vonka
77ccbfc507 Merged V3.2 to HEAD
15259: Fix MT startup (and MultiTDemoTest) - fallout from CHK-8160


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16855 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-13 10:59:59 +00:00
Kevin Roast
cc86399e68 Merged V3.2 to HEAD
15154: Performance optimization for AuthorityDAO - based on 3.1E Share use case analysis.
       - improves performance for create, find and general get of authorities via the DAO
       - also potentially improves LDAP import etc. - anything that goes via Zones
       - takes 3.2E performance ahead of 3.1E performance for Share use case (20,000 user and 2,000 site DB upgraded from 3.1.1E)
   15447: Static asset web filter added to web.xml for Explorer client and Share webapp.
       - Adds a 30 day public cache expiry header (configurable) to all static assets for performance and proxy usage
       - Also prevents browsers such as IE causing conditional GET requests for images etc. on restart of the browser

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16846 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-13 10:00:06 +00:00
Jan Vonka
a63369dbb7 MT - fix testCOCIandSearch (fallout from CHK-9517)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16688 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-05 12:55:06 +00:00
Kevin Roast
eab4762993 JavaScript API enhancements to support retrieval of local and inherited permissions and optional additional meta-data describing the permissions.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16286 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-09-15 20:26:03 +00:00
Dave Ward
879796355c Merged V3.2 to HEAD
16062: ETHREEOH-2792: Support login via external SSO systems (such as CAS) in Alfresco Share
      - In Alfresco, new "external" authentication subsystem maps user identity from HttpServletRequest.getRemoteUser() or configured header
      - In Share, the UserFactory also recognizes HttpServletRequest.getRemoteUser() - no special filters required
      - User ID propagated to Alfresco through X-Alfresco-Remote-User HTTP header
      - This can be done securely via the use of an SSL client certificate that identifies the Share application to Alfresco as a special 'proxy' user
      - New <keystore> section added to webscript-framework-config that allows specification of the keystore holding the client certificate and trusted CAs
      - Support for SSL authentication and propagation of Cookies through redirects added to RemoteClient so that initial redirects through sign on pages are supported
      - TODO: Wiki


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16065 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-09-03 11:16:02 +00:00
Jan Vonka
bd9fe31142 Merged V3.2 to HEAD
16029: ALFCOM-3293 - MT: group management broken with domain mismatch error (fallout from CHK-7357)


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16036 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-09-02 09:25:50 +00:00
Andrew Hind
fee50fdb9f RM Capabilities - more tests and fixes
- person service impl handles emtpy and null uids

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16011 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-09-01 14:09:57 +00:00
Andrew Hind
ffbd522cca RM Capabilities: More tests and fixes (22 to go). Added RM access to the ownable service. RM roo.es can be assigned in the UI (with no localisation for the role names)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15942 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-08-26 20:07:23 +00:00
Dave Ward
e2dff77bc6 Merged V3.2 to HEAD
15828: ETHREEOH-2601: Users dialog won't delete users who have no authentication information
      - Moved the AuthenticationService.deleteAuthentication() call inside PersonService.deletePerson() and protected with try - catch so that if there is no authentication information (for an upgraded/moved user) the person can still be deleted
      - Removed a bunch of redundant deleteAuthentication() calls


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15829 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-08-20 11:01:19 +00:00
Kevin Roast
58c074e716 Merged V3.2 to HEAD
15506: Fix for ALFCOM-3274 - removed double-encoding of webview dashlet title when set from Configure dialog.
   15543: Fixes for ETHREEOH-2596 and ETHREEOH-2392. Any Admin user now forced to enter old password when editing themselves in the Share User Admin console.
   15620:Merged V3.1 to V3.2
      15595: Merged DEV-TEMPORARY to V3.1
         15446: Appropriate JSP page was modified to align radio buttons.
      15597: Fix for ETHREEOH-2575 - all PNG files now appear in IE6, note that PNG transparency is not supported in IE6.
      15598: Merged DEV-TEMPORARY to V3.1
         15593: ETHREEOH-2445: Localization Issues [Email Templates and RSS Templates ACPs I18N]
      15599: Merged DEV-TEMPORARY to V3.1
         15491: ETHREEOH-2460: Localization Issues - Email template
      15601: *RECORD ONLY* Merged V3.2 to V3.1
         15504: ETHREEOH-2447: My Content page localisation failing. [backport from V3.2]
      15613: *RECORD ONLY* Removed reference to portlets message bundle - as per CHK-8518
   15784: Minor performance improvements to data dictionary classes relating to Permission evaluations.
   15791: Merged V3.1 to V3.2
      15693: Merged DEV-TEMPORARY to V3.1
         15648: ETHREEOH-2549: Templates in 3.1 will need localising
      15743: ETHREEOH-2586: JP:Layout error, the word "....." (cancel) should be in the same line
      15745: ETHREEOH-2493 - HTML and XML encoding fixes to Alfresco OpenSearch keyword and person search HTML/ATOM/RSS feed templates.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15793 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-08-18 15:09:08 +00:00
Dave Ward
8fa726f7df Merged V3.2 to HEAD
15636: ETHREEOH-2626: LDAP sync will no longer delete and recreate colliding users and groups in zones that aren't even in the authentication chain.
      - Instead such users and groups will be 're-zoned' to the first zone where they were found
      - Avoids losing site memberships, etc. on upgrade or change of authentication chain
      - Will continue to recreate users and groups from lower priority zones in the authentication chain
      - Updated unit tests appropriately


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15637 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-08-06 18:43:41 +00:00
Dave Ward
24f5a529c6 Merged V3.2 to HEAD
15473: ETHREEOH-2574: Fixed problem when LDAP sync attempts to delete a user who already exists but with username in a different case (e.g. guest -> Guest)
      - ACLs were getting left behind due to case issues
      - Now 'normalize' the name using getUserIdentifier()


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15474 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-29 16:22:20 +00:00
Andrew Hind
f0226fe5d1 RM: Capabilities and entry checks are now enforced for action execution
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15451 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-28 14:31:40 +00:00
Dave Ward
0d6a176f8d Merged V3.2 to HEAD
15388: ETHREEOH-1872: Better debug logging in authentication components
      - Now each authentication component logs every step of the authentication process (including reason for failure) if you switch on debug logging for that component or the entire org.alfresco.repo.security.authentication package. E.g.
      log4j.logger.org.alfresco.repo.security.authentication.ldap.LDAPAuthenticationComponentImpl=debug
      log4j.logger.org.alfresco.repo.security.authentication.AuthenticationComponentImpl=debug
      log4j.logger.org.alfresco.repo.security.authentication=debug
   15196: Further LDAP sync performance improvements
      - Bunch user and group creations into small transactions (except for differential sync on login)
      - Run a differential sync on startup (so that bulk of users are not brought over on first login)
      - Can be disabled by synchronization.syncOnStartup property
   15135: Node creation / ACL performance improvements
      - When an ACL was set on a leaf node such as a person, redundant 'shared' ACLs were created for child nodes with getInheritedAccessControlList(), even though no child nodes existed.
      - Now setInheritanceForChildren() makes a 'lazy' call to getInheritedAccessControlList(), only when it realises there are child nodes
   15133: Changes to datasource definition for improved performance
      - Enable caching and reuse of prepared statements (by default 40 for each connection)
      - Removed custom-connection-pool-context.xml.sample and instead introduced complete property set into repository.properties
      - Updated v3.2 Wiki docs http://wiki.alfresco.com/wiki/Database_Configuration#Overriding_the_Database_Connection_Properties


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15439 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-28 10:12:16 +00:00
Dave Ward
9b6cac5a74 Merged V3.2 to HEAD
15255: ETHREEOH-2484: Default behavior for LDAP sync is now not to abort on a missing UID or GUID, as it seems more robust

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15256 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-17 12:01:16 +00:00
Dave Ward
63d84b8482 Merged V3.2 to HEAD
15240: Small correction to ETHREEOH-2508 fix. Handle 'empty name' case reported in user forums.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15241 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-16 17:44:02 +00:00
Dave Ward
7e95d1e5c8 Merged V3.2 to HEAD
15236: ETHREEOH-2508: Support for posixGroup class in Fedora Directory Server
      - If group member attribute doesn't parse as a DN, assume it contains a user ID directly

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15239 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-16 17:20:55 +00:00
Dave Ward
714481a6ac Merged V3.2 to HEAD
15232: Fix failing unit test
      - Need to test against authentication manager in alfrescoNtlm subsystem

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15235 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-16 15:40:58 +00:00
Andrew Hind
65ceb8f926 Build Fix: switch back to "grant" rather than "abstain" when voters have nothing to say .... temp fix
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15191 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-15 09:45:47 +00:00
Andrew Hind
0848671c81 RM capabilities: no op impl for RM_QUERY; First cut of Action security wrappers; Tidy up for new access API and config changes to support it across all public services (except AVM)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15186 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-14 20:05:58 +00:00
Andrew Hind
8f32490847 RM capabilities: move, delete, first cut of check filing, POC for public service access tests as RM is not a simple ACL check ...
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15172 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-14 10:44:37 +00:00
Andrew Hind
ccb0df6159 Fix DM and RM afterInvocationProviders so both DM and RM permissions are not required. First cut of enforcement of create related capabilities. Added explicit abstain for RMVoter (equivalent to no RM entry condition)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15145 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-11 13:47:35 +00:00
Andrew Hind
6c2eafe88b Merged DEV/RM-DEV to HEAD
15090: Records Management Read Permissions (parts of MOB-747, MOB-815) NOTE =>RM NOW HAS READ ACCESS ENFORCEMENT  
               - permission model
               - DM and RM ignore each other for permissions - they are mutually exclusive
               - Read access enforcement (no write enforcement other than read)
               - Rolled caveat enforcement into acegi voter implementation and afterInvocation implementation
               - updated model with mandatory filePlanComponent aspect


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15111 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-08 20:36:50 +00:00
Dave Ward
a929a7fd74 Merged V3.2 to HEAD
15099: Do not allow referential integrity problems in user registry data (dangling references to users in groups) fail the whole sync operation. Just warn and continue.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15100 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-08 09:59:43 +00:00
Dave Ward
4fed6c95ee Realign AuthorityServiceTest with the new definition of 'root group in zone'
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15055 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-01 16:57:57 +00:00
Dave Ward
57cd1bfd94 ALFCOM-3110: Groups added to sites became invisible to Share client
- Root groups are now those in the default zone that are not children of groups in the same zone

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15051 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-01 11:39:37 +00:00
David Caruana
b5d4daa46a Allow 'cmis-sql-strict' query language in Node Browser.
- fix up Search Service to CMIS query engine wrappers

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15015 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-29 15:47:06 +00:00
Dave Ward
5443afbdd0 ETHREEOH-2242: New ldap-ad Authentication subsystem with defaults for Active Directory
- Fixed parsing of timestamps
- Fixed resolution of group members
- Shared Spring configuration with ldap subsystem
- Authentication still only supported with DIGEST-MD5 binding enabled - chain with passthru authentication otherwise

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14934 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-25 18:16:26 +00:00
Mark Rogers
9efa161ac3 Share interface now only shows groups in APP.DEFAULT zone.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14894 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-24 14:04:43 +00:00