* added tests for revokeCollection and revokeDatabase
* optimized user permission test
* ui selection bugfix
* fixed ldap ui login
* login view
* Authentication refactoring
* localstorage fallback if user config is not available
* Fixing permission resolution test
* Adding missing import
* local storage queries now supported
* disabled collection task check for ldap
* added internal ldapEnabled function and ldap config to the ui
* more db creation tests
* removed console logs
* render fix
* Various authentication related fixes
* exec ldap test also for cluster
* Adding support to refresh user rights from external auth sources
* ldap test howto comment
* Handling roles more correctly
* jwt
* login view
* First part of rework of LDAP documentation.
* test roles in a ldap environment
* Changing role handling
* Finish revision of the LDAP chapter in the manual.
* Fixing user header
* Fixing some slight issues with LDAP users and roles
* Removing unused code
* Removing unused code
* added ldap test
* fixing a bug in restuserhandler
* more ldap tests
* ldap tests
* ldap tests
* optimized ldap testing, added cluster support, fixed some auth tests
* ldap cleanup test
* ldap tests
* auth tests
* ldap test
* Changing permission defaults
* revert change
* updated user helper test
* rm of try catch block connection
* Removing FeatureCacheFeature
* Changed permission resolution according to discussion
* updated the docs to clarify the permission resolution and the intricacies of LDAP users
* Fixing wrong permissions check in handling of PUT in ResUserHandler
* Using revision ID when replacing users
* Adding basic replace test
* tests
* Fixing some outstanding issues
* Fixing test setup, optimizing some stuff
* Fixing permission resolution rules, testsuite setup, etc
* Fix deadlock
* Adding error message for keyspace, slightly changing test setup
* Removing remaining mentions of FeatureCacheFeature
* Fix jslint
* Fixing some failed tests
* Fixing cluster authentication issue, red tests
* Fixing ldap testsuite, adding trace logging
* Fixint ldap tesuite setup and LDAP recognition
* Fixing an assert
* Cleanup, adding changelog entry
* fix typo
* Fixing dump_authentication test
* improvements found during code review
* oops
* updated CHANGELOG
* Fixing broken handling, disallowing adding of local users when disabled
* added tests for ldap search mode
* Fixing testInvalidGrants
(cherry picked from commit bc7ea2aaa29a9ed0974898f487e8a318f24912f1)
* Removing undefined auth level externally
(cherry picked from commit 70859f43ae6fd694fdbf70f669fbfdafc58e7913)
* Fixing previous commit
(cherry picked from commit 2fbcffd2ed657862ef9fb5e6d45201a6ec8ada69)
* more use of sessionstorage
* intentionally removed `after` methods from tests
because they are executed before the tests start
no cleanup is performed right now after the authentication tests
however, a cleanup is done at start of every test
* ldap tests all modes
* fix LDAP test invocation
* Added roles transformation to ldap test suite
* Fix compilation of community version.
* Imrpved the ldap testsuites by unifying their options
* fix permission problems for system collections
* Improved LDAP configuration documentation.
* Grunt.
* fixed some ro/rw display issues
* fixed some ro/rw display issues part 2
* grunt build
* bump version number
* Fixed typos in LDAP manual
* Correctly expose parsed/raw config
This makes accessing the configuration more consistent by distinguishing between the raw (assigned) and parsed (validated/default) values.
Previously there was no way to recognise default values for unset config options and the "current" value did not actually reflect what the service sees.
* Add minimal option to config/deps routes
The default values are backwards compatible with the existing behaviour but can be overridden to consistently get more/less output.
* Actually merge warnings into non-mininal response
* Fix store support in foxx-manager legacy API
* Move store refresh logic into legacy Foxx API
The 'refresh' option is not actually exposed by the new API and the behaviour was incompatible with the old implementation.
* issue #4393 part two
* let's not miss failedserver removal
* remove resetting of FailedServers in test code
* Only call abortRequestsToFailedServers at most every 3 seconds.
* fix some deadlocks found by evil lock manager (tm)
* fix duplicate lock
* fix indentation
* ensure proper lock dependencies
* fix lock acquisition
* removed useless comment
* do not lock twice
* create either a V8 transaction context or a standalone transaction context, depending on if we are called from within V8 or not
* AQL micro optimizations
* use explicit constructor
* only use V8DealerFeature's ConditionLocker for acquiring a free V8 context
entering and exiting the selected context is then done later on without having to hold the ConditionLocker
* remove some recursive locks
* Disable custom deadlock detection when Thread Sanitizer is enabled
* Changing ifdef's
* grr
* broke gcc
* Using atomic for ApplicationServer::_server
* fix premature unlock
* add some asserts
* honor collection locking in cluster
* yet one more lock fix
* removed assertion
* some more bugfixes
* Fixing assert
(cherry picked from commit 1155df173bfb67303077fbe04ee8d909517bfd21)
* Add security check in AgencyComm::sendWithFailover.
* some cleanup
* added some more tests
* add typeName() to AgencyCommTransaction to make the transaction type printable in debug messages
* improve debuggability
* any() is very slow in rocksdb with large collections.
Instead pick a random document of the first 1000 documents.
* changelog: why do we replace any()
* Special method to access configured access levels as opposed to only getting the effective access level
* Add integration test
* Allow grants on collection level
* Fixed object assignment operator for agency's key value store
* Node's toJson is now actually toJson. getString should be used for string extractions
* adjust agency's documentation (clarify precondition)
* Switching from ttl to supervision based failover mechanism
* Allowing canceling of ongoing actions
* refactored asyncjobmanager
* refactoring some code
* adding read-only flag
* Fixing some bugs
* Fixing tests
* Canceling ongoing operations
* removing some unused code + some asserts
* catching some exceptions to reduce log pollution, removing unnecessary code, removing tests for _changeMode
* fixing "createsANewDatabaseWithAnInvalidUser"
* Current work
* proper ifs
* Migrate resthandler to c++ and implement mode
* readonly server mode spec test
* Add changelog
* change code so it expects a full object and not just a string
* Fix jslint
* Added a more sophisticated test for shardDistribution format
* Updated shard distribution test to use request instead of download
* Added a cxx reporter for the shard distribuation. WIP
* Added some virtual functions/classes for Mocking
* Added a unittest for the new CXX ShardDistribution Reporter.
* The ShardDsitributionReporter now reports Plan and Current correctly. However it does not dare to find a good total/current value and just returns a default. Hence these tests are still red
* Shard distribution now uses the cxx variant
* The ShardDistribution reporter now tries to execute count on the shards
* Updated changelog
* Added error case tests. If the servers time out the mechanism will stop bothering after two seconds and just report default values.