-
Notifications
You must be signed in to change notification settings - Fork 8.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Authentication and access control support #1559
Comments
+1 for this feature. |
+1 too. |
This would be very useful; |
+1 |
👍 |
+1 too |
Authorization is quite complex sometimes; external OAuth2 Adapter? Do you support OAuth2 natively? what about HTTP Authentication or using limit_get? I'm going to see people deploy this as a reverse proxy through nginx I suspect and being able to lock it down is vital. We don't want to open a new 'elasticsearch' endpoint to be abused. |
Why not using CAS ? seems to be a good candidate for that kind of job. |
Radius, LDAP, HTTP Based Authentication (http_auth, limit_get, openid, Oauth2) all seem fine Kerberos will be fun with 2 implementations or just 1? |
Why not start with simplest possible option: http-digest using .htpasswd - all the tools are there, testing is trivial. Later on things like per-tag auth, ldap and fancy oauth2-whatever could be added. The most pressing thing is to make kibana usable out-of-the-box without need for external server to babysit its insecurity. |
htpasswd isn't that secure anymore; unless you use SSL you can capture the hashed contents and reverse them with a little cpu power. |
Setting up TLS termination is trivial: you can use pound or stunnel with few lines of simple configuration. |
Really all we need here is just to have a updated example of an nginx vhost like we had in kibana 3; and let the users sort out the rest. Like I mentioned in #1559 (comment) there's lots of forms. If your provide a basic service we can lock it down ourselves. Unless there is per user Dashboards I don't see really the point of authentication in Kibana itself. Document how to secure it; sure. |
There is only one method available to limit access, not just provide authentication. That is the one that uses nginx to rewrite the query to a alias in elasticsearch. This is not a solution to go forward. I agree that we can do authentication with reverse proxies of choice, definitely a good solution. What has changed now is that we have the option to do access controls natively and for that to make sense we have to add authentication as well. |
+1 Sinatra has support natively for http authentication, ideally use this to provide role based access control that is tightly integraed with Kibana |
I feel like ElasticSearch has to be involved here. Implementing AAA for indexes would be a huge step and cover most user cases, IMO. |
Elasticsearch does not provide authentication itself. That said one way you could provide authentication is; enable the authentication plugin to ES and configure users and then make Kibana use those users. But some orgs are different; LDAP, Kerberos, Radius ... I deploy OAuth2 but I can see value in Radius or LDAP support as well. See how many buttons are on https://github.com/sahat/satellizer just imagine once we add the rest? |
@damm , but this doesn't handle authorization. There are many ways I can be authenticated. I want to control who is authorized to view what. That's the second A of AAA. |
@natefaerber that's what https://github.com/codelibs/elasticsearch-auth should be for. Standard HTTP Auth won't limit unless you do it yourself somehow. |
@damm , nice. Any idea when elasticsearch-auth and Kibana will meet? |
Maybe a shield agent may do the job ?http://www.elasticsearch.org/blog/shield-know-security-coming-soon/ |
I guess @TiNico22 answered your question @natefaerber |
I think it would be also proper to limit users, for example I have users that I want to be able to only access a limited type of logs and a defined dashboard only!! so yea, a security system is sooo much needed for kibana to turn into the ultimate tool, tanx |
+1 |
@Palmjust if you don't like to wait pls. check Logsene by Sematext http://sematext.com/logsene/ - we did already kibana4 integration and have role based access control, app and account sharing for large teams + free plan and startup program for small teams. |
+1 |
+1, and need it urgently :). |
It's so awesome (irony). Not only does Kibana have no internal authentication system, so everyone has access to it's data, but it also has a proxy to elasticsearch - enabled by default. So even if you set up elastic to use only localhost, Kibana will expose it at '/elasticsearch' (try /elasticsearch/_cat/indices?v). What happened to security by design? Maybe the 'Installation Steps' should tell people to put the server only on localhost and use an authenticating proxy like Apache. And to disable the proxy in app.js if they don't want their Kibana users to mess and potentially delete the raw data in elastic. |
@bluepuma77: that is bad! Thanks for spotting & sharing this. @rashidkpc: could you please share with us the official plans for adding authentication to Kibana4, so all open-source users can secure themselves? |
Locking down / Exposing Elasticsearch / Kibana in a Global work environment is unique. P.S. I think security by design has pretty much fallen away. Marketing / Sales trying to sell your product before you've designed it (finished it) doesn't help and pretty much rots away any good reason to be secure if your not careful. |
Closing in favor of #3904 |
Closed this issue in favor of what? The links points to this very same issue. |
I think the closing has been a mistake. There isn't any doubt about authentication need after 1 year discussing. Maybe the new issue is not 1559... I hope |
@rashidkpc created issue #3904 "Kibana authentication layer, phase 1". A design for auth-only targeted for 4.2.0. I am pretty sure he meant to link to that issue. I suggest we all read #3904 and add feedback on that design. Note: its only about authentication, so does not answer the need for limiting access to the settings. I really hope "Kibana authhorization layer, phase 1" will follow shortly. |
+1 |
1 similar comment
+1 |
+1 |
1 similar comment
+1 |
+1 |
5 similar comments
+1 |
+1 |
+1 |
+1 |
+1 |
waiting for it as well +1 |
|
I made myself a plugin for this: multi user, read only dashboards, hide indices, etc :) |
👍 |
Yes please +1 |
Now that Kibana is its own web server it would be possible to support authentication, kerberos for example.
I have not tried the beta yet so I'm not sure how the Elasticsearch integration is. Would it be possible now to create access controls based on tags? (that is if the query is reverse proxied through the Kibana webserver and not a direct http query to the Elasticsearch cluster.
The text was updated successfully, but these errors were encountered: