[
https://issues.apache.org/jira/browse/SOLR-14216?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17041674#comment-17041674
]
Jan Høydahl commented on SOLR-14216:
------------------------------------
The issue with health checks is that there is a multitude of load balancers,
monitoring solutions etc that need to act on a node's health, but do not
support all of Solr's auth schemes. It *is* possible to configure security.json
for it but that is not documented and quite hard to get right.
Currently we skip auth for static content and for /admin/info/key which serves
the (dynamically generated) public key of a node. I guess you could point your
Load Balancer to the key endpoint and use that as a health check as a
workaround, but there is nothing secret about a nodes health, so it should per
definition be public.
Could we add some interface {{implements OpenAccess}} that a Handler can
implement and have Solr exclude both its v1 and v2 endpoint automatically?
> Exclude HealthCheck from authentication
> ---------------------------------------
>
> Key: SOLR-14216
> URL: https://issues.apache.org/jira/browse/SOLR-14216
> Project: Solr
> Issue Type: Improvement
> Security Level: Public(Default Security Level. Issues are Public)
> Components: Authentication
> Reporter: Jan Høydahl
> Assignee: Jan Høydahl
> Priority: Major
> Time Spent: 10m
> Remaining Estimate: 0h
>
> The {{HealthCheckHandler}} on {{/api/node/health}} and
> {{/solr/admin/info/health}} should by default not be subject to
> authentication, but be open for all. This allows for load balancers and
> various monitoring to probe Solr's health without having to support the auth
> scheme in place. I can't see any reason we need auth on the health endpoint.
> It is possible to achieve the same by setting blockUnknown=false and
> configuring three RBAC permissions: One for v1 endpoint, one for v2 endpoint
> and one "all" catch all at the end of the chain. But this is cumbersome so
> better have this ootb.
> An alternative solution is to create a separate HttpServer for health check,
> listening on a different port, just like embedded ZK and JMX.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]