Na minha opinião, a única maneira de proteger o ES na maneira como você pergunta é bloqueá-lo por trás de outra camada de aplicativo e fazer com que essa camada manipule o controle de autenticação, controle de autenticação e https / ssl.
No lado ES, havia um plug-in de segurança ES jetty desenvolvido, não sei se ele foi bem-sucedido, quando eu estava implantando a primeira vez que o plugin estava prestes a ser lançado, veja: