I'm really new to ES plugin development, but today I wrote my own because I
needed this feature which was not available. All the description is in the
Github page.
All in all, it's a very small RestFilter.
I'm not even sure if I structured the code correctly, so I'd really
appreciate a code review!
I'm really new to ES plugin development, but today I wrote my own because
I needed this feature which was not available. All the description is in
the Github page.
All in all, it's a very small RestFilter.
I'm not even sure if I structured the code correctly, so I'd really
appreciate a code review!
Haha thanks Ivan, did you notice you are also in the README.md as well?
Will fix the link soon, but once again thank you for taking the time to put
together the tutorial in the first place!
I have one more question though.
I'd like to allow indexing from selected hosts (localhost, mainly). I
didn't find any clear way to do this in the ResFilter.process(RestRequest
request, RestChannel channel, RestFilterChain filterChain) method. Looks
like the API is not supporting me in offering the origin IP address. Am I
missing something?
-Simone
On Friday, December 6, 2013 5:19:55 PM UTC+1, Ivan Brusic wrote:
Salve Simone,
Your installation instructions have links to my plugin. Otherwise good
job.
--
Ivan
On Fri, Dec 6, 2013 at 6:56 AM, Simone Scarduzio <scar...@gmail.com<javascript:>
wrote:
Hi all,
I'm really new to ES plugin development, but today I wrote my own because
I needed this feature which was not available. All the description is in
the Github page.
All in all, it's a very small RestFilter.
I'm not even sure if I structured the code correctly, so I'd really
appreciate a code review!
Hi Jorg, thanks for quick response.
I'm curious about the reason behind this design decision.
Or is it a sort of statement, since I understood that ES team is afraid of bloating the project with security?
From what I can imagine is that from an architectural view, it would be
rather unpleasant to have implementation dependent details exposed to
plugins using ES REST API (here: Netty 3.x socket channels, and Netty seems
not considering providing socket channel adapters https://github.com/netty/netty/pull/1050 which would ease switching
implementations without ES REST API change).
Am Samstag, 7. Dezember 2013 17:21:49 UTC+1 schrieb J枚rg Prante:
I can't speak for ES core team.
From what I can imagine is that from an architectural view, it would be
rather unpleasant to have implementation dependent details exposed to
plugins using ES REST API (here: Netty 3.x socket channels, and Netty seems
not considering providing socket channel adapters Implement socket channel adapter by md-5 路 Pull Request #1050 路 netty/netty 路 GitHub which would ease switching
implementations without ES REST API change).
I saw that plugin already. I think it's solving a different problem:
authentication and permissions. What I want to achieve is public
availability of a subset of the API.
Another thing I don't want to throw away is the Netty based HTTP stack,
especially if the alternative is Tomcat!
However, I was bored about the fact I could not have the remote address
available by ES REST module and I used reflection to obtain just what I
wanted. I evolved quite a bit my plugin during the weekend. Now supports IP
address whitelist, reject requests by regular expressions, custom reject
string and configuration via conf/elasticsearch.yml
Pretty satisfied with the result
On Saturday, December 7, 2013 11:48:00 PM UTC+1, Hendrik wrote:
Am Samstag, 7. Dezember 2013 17:21:49 UTC+1 schrieb J枚rg Prante:
I can't speak for ES core team.
From what I can imagine is that from an architectural view, it would be
rather unpleasant to have implementation dependent details exposed to
plugins using ES REST API (here: Netty 3.x socket channels, and Netty seems
not considering providing socket channel adapters Implement socket channel adapter by md-5 路 Pull Request #1050 路 netty/netty 路 GitHub which would ease switching
implementations without ES REST API change).
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.