OpenSearch/shield
jaymode 32af9610dd do not use the cache methods for loading entries into the user cache
The cache provides a get method with a callable to load the value into the cache. Our callable
performs authentication and then returns a value. The issue with this is that the cache will queue
concurrent calls if a value is already being loaded and return the result to all callers. This is
problematic since the key is only the username and we do not validate the credentials as part of
the get call. This means it is possible for valid credentials to be returned a null user and authentication
fails.

Additionally, another variant exists where it is possible for invalid credentials to be returned a valid
user, which allows an attacker to gain access by only knowing a username and issuing a large number
of concurrent requests.

Closes elastic/elasticsearch#860

Original commit: elastic/x-pack-elasticsearch@3d122d3bbb
2015-10-26 09:44:00 -04:00
..
bin/shield update CLI tools to work with spaces in the home path 2015-09-11 11:15:19 -04:00
config/shield Added missing privileges for the marvel_user role 2015-10-15 18:03:00 -07:00
dev-tools [maven] fix build issues with artifactId renaming 2015-08-18 18:03:40 +02:00
docs Shield Docs: Fixed another cross doc problem. 2015-10-21 15:49:29 -07:00
src do not use the cache methods for loading entries into the user cache 2015-10-26 09:44:00 -04:00
LICENSE.txt Update LICENSE.txt for shield and watcher with new EULA 2015-10-20 15:47:00 +02:00
NOTICE.txt initial migration of shield 2015-07-13 12:31:34 +02:00
README.asciidoc initial migration of shield 2015-07-13 12:31:34 +02:00
TESTING.asciidoc Don't redundantly run rest tests in both unit and integ tests. 2015-08-03 22:04:33 -04:00
pom.xml Add warning suppressions 2015-09-09 12:45:20 -07:00
test-signatures.txt initial migration of shield 2015-07-13 12:31:34 +02:00

README.asciidoc

= Elasticsearch Security Plugin

This plugins adds security features to elasticsearch

You can build the plugin with `mvn package`.

The documentation is put in the `docs/` directory.