You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+13-23Lines changed: 13 additions & 23 deletions
Original file line number
Diff line number
Diff line change
@@ -37,6 +37,7 @@ readonlyrest:
37
37
actions: [cluster:*, indices:data/read/*]
38
38
indices: ["<no-index>", "product_catalogue-*"] # index aliases are taken in account!
39
39
```
40
+
The `<no-index>` is for matching those generic requests that don't actually involve an index (e.g. get cluster state). More about this in the [wiki](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/wiki/Supported-Rules#a-note-on-no-index).
The users connecting from their browsers will be asked to login separately anyways.
76
77
78
+
**Now activate authenticatoin in Logstash**: [(follow the docs, it's very similar to Kibana!)](https://www.elastic.co/guide/en/shield/current/logstash.html#ls-http-auth-basic)
79
+
77
80
##### 4. restart elastic search
78
81
79
82
**For other use cases and finer access control** have a look at [the full list of supported rules](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/wiki/Supported-Rules)
80
83
81
84
82
-
### News
85
+
### Changelog
83
86
> 2016-04-26 :new: v1.9.3: Tighter Kibana access rule + Indices rule supports <no-index> (for cluster commands, etc) useful for restricting Kibana rules to certain indices only (see example 2)
84
87
85
88
> 2016-04-26 :new: v1.9.2: bugfix release
@@ -104,13 +107,7 @@ The users connecting from their browsers will be asked to login separately anywa
104
107
105
108
* v1.9.3 for Elasticsearch 2.3.2 [elasticsearch-readonlyrest-v1.9.3_es-v2.3.2.zip](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/blob/master/download/elasticsearch-readonlyrest-v1.9.3_es-v2.3.2.zip?raw=true)
106
109
107
-
* v1.9.1 for Elasticsearch 2.3.1 [elasticsearch-readonlyrest-v1.9.1_es-v2.3.1.zip](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/blob/master/download/elasticsearch-readonlyrest-v1.9.1_es-v2.3.1.zip?raw=true)
108
-
109
-
* v1.9.1 for Elasticsearch 2.3.0 [elasticsearch-readonlyrest-v1.9.1_es-v2.3.0.zip](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/blob/master/download/elasticsearch-readonlyrest-v1.9.1_es-v2.3.0.zip?raw=true)
110
-
111
-
* v1.9.1 for Elasticsearch 2.2.* is not recommended because of a [bug in ES](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/issues/35)
112
-
113
-
Plugin releases for **earlier versions of Elasticsearch** (may not include all the features) are available in the [download](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/blob/master/download) folder.
110
+
Releases for **earlier versions of Elasticsearch** (may not include all the features) are available in the [download](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/blob/master/download) folder.
114
111
115
112
**If you need a build for a specific ES version, just open an issue!**
116
113
@@ -119,18 +116,18 @@ Plugin releases for **earlier versions of Elasticsearch** (may not include all t
119
116
#### Lightweight security :rocket:
120
117
Other security plugins are replacing the high performance, Netty based, embedded REST API of Elasticsearch with Tomcat, Jetty or other cumbersome XML based JEE madness.
121
118
122
-
This plugin instead is just a lightweight HTTP request filtering layer.
119
+
This plugin instead is just a lightweight filtering layer.
123
120
124
121
#### Less moving parts
125
-
Some suggest to spin up a new HTTP proxy (Varnish, NGNix, HAProxy) between ES and clients to prevent malicious access. This is a bad idea for two reasons:
126
-
- You're introducing more moving parts, your architecure gains complexity.
127
-
- Reasoning about security at HTTP level is riskyand less granular controlling access at the internal ES protocol level.
122
+
Some suggest to spin up a new HTTP proxy (Varnish, NGNix, HAProxy) between ES and clients to prevent malicious access. This is a **bad idea** for two reasons:
123
+
- You're introducing more complexity in your architecture.
124
+
- Reasoning about security at HTTP level is risky, flaky and less granular than controlling access at the internal ElasticSearch protocol level.
128
125
129
126
> The only clean way to do the access control is AFTER ElasticSearch has parsed the queries.
130
127
131
-
Just set a few rules with this plugin and confidently open for the external world.
128
+
Just set a few rules with this plugin and confidently open it up to the external world.
132
129
133
-
#### A Simpler, flexible access control list (ACL)
130
+
#### An easy, flexible access control list
134
131
Build your ACL from simple building blocks (rules) i.e.:
135
132
136
133
##### IP level Rules
@@ -142,21 +139,14 @@ Build your ACL from simple building blocks (rules) i.e.:
142
139
* ```accept_x-forwarded-for_header``` interpret the ```X-Forwarded-For``` header as origin host (useful for AWS ELB and other reverse proxies)
143
140
* ```auth_key``` HTTP Basic auth.
144
141
145
-
##### ElasticSearch level rules
142
+
##### ElasticSearch internal protocol level rules
146
143
* ```indices``` indices (aliases and wildcards work)
147
144
* ```actions``` list of ES [actions](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/wiki/Supported-Rules#actions-and-apis) (e.g. "cluster:*" , "indices:data/write/*", "indices:data/read*")
148
145
149
146
##### ElasticSearh level macro-rules
150
147
* ```kibana_access``` captures the read-only, read-only + new visualizations/dashboards, read-write use cases of Kibana.
151
148
152
-
153
-
See the (full list of supported rules)[Supported-Rules] for more info on how to use them.
154
-
155
-
156
-
#### Custom response body
157
-
Optionally provide a string to be returned as the body of 403 (FORBIDDEN) HTTP response. If not provided, the descriptive "name" field of the matched block will be shown (good for debug!).
158
-
159
-
## Extra
149
+
## All the available rules in detail
160
150
* [List of ACL block rules supported](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/wiki/Supported-Rules)
161
151
* [List of Actions and their meaning](https://github.com/sscarduzio/elasticsearch-readonlyrest-plugin/wiki/Supported-Rules#actions-and-apis)
0 commit comments