jettro / elasticsearch-gui

An angularJS client for elasticsearch as a plugin
www.gridshore.nl/esgui
Apache License 2.0
542 stars 78 forks source link

Can you add user roles and permission based searches? #100

Open kalwar opened 8 years ago

kalwar commented 8 years ago

It would be great if user roles and permission are also considered in the plugin.

jettro commented 8 years ago

Do you mean as in supporting the X-Pack shield component? Or any other ideas?

kalwar commented 8 years ago

Supporting X-Pack shield component in the GUI is one option. But it is costly and other alternative is to use search-guard.

It would be nice to use search-guard and authenticate user in the Elasticsearch-GUI .

https://github.com/floragunncom/search-guard

Hide/show search results to the user depending on certain rights: Something like this: angular.module(jcs.modules.auth.name).directive('access', [ jcs.modules.auth.services.authorization, function (authorization) { return { restrict: 'A', link: function (scope, element, attrs) { var makeVisible = function () { element.removeClass('hidden'); }, makeHidden = function () { element.addClass('hidden'); }, determineVisibility = function (resetFirst) { var result; if (resetFirst) { makeVisible(); } result = authorization.authorize(true, roles, attrs.accessPermissionType); if (result === jcs.modules.auth.enums.authorised.authorised) { makeVisible(); } else { makeHidden(); } }, roles = attrs.access.split(','); if (roles.length > 0) { determineVisibility(true); } } }; }]);

jettro commented 8 years ago

Interesting, did not know about this project yet. Currently not really planning support, but it is interesting. Going to take a good look at it.