Cloud. Accés a Elasticsearch a cloud públic


06-03-2017
Darrera actualització: 06-03-2017

L’accés a un Elasticsearch (ES) a cloud públic té una sèrie de consideracions de seguretat a tenir en compte. En el cas de Compose, plataforma utilitzada a solucions de cloud públic per l’aprovisionament de DBaaS, els ES no incorporen el mòdul X-Pack el qual permet securitzar-ne l’accés. Cal incloure doncs mecanismes que impedeixin accessos no autoritzats.

Seguretat

És imprescindible que els accessos a l’ES només es realitzin des de servidors autoritzats. Serà necessari, per tant, que s’identifiquin les IPs d’accés per tal que es configurin a una whitelist a Compose.

Exemple:

Whitelist Compose

Accés des d’una aplicació a Bluemix

En el cas que l’aplicació origen que requereix accés a l’ES estigui a Bluemix, és necessari l’ús del servei Statica.

Statica

L’assignació d’una IP fixe de sortida permetrà la seva configuració a la whitelist de Compose.

Accés des d’una aplicació a CPD corporatiu

Per les aplicacions desplegades a CPD corporatiu caldrà que CPD indiqui la IP de sortida de l’aplicació a Internet. Aquesta és la IP que s’haurà de configurar a la whitelist de Compose.

Accés des d’una pàgina web

En alguns casos, com per exemple cercadors a portals web, és possible que l’accés a l’ES es realitzi des del navegador de l’usuari. Les planes web no haurien d’incorporar les credencials a l’ES donat que la sostracció d’aquestes podria derivar en un ús indegut. Pels ES que no incorporin el mòdul X-Pack és més important encara, ja que els usuaris tenen privilegis de lectura i escriptura.

Proxy

Per tal d’evitar el problema de sostracció de credencials, es recomana que l’accés a l’ES es realitzi via un proxy, per exemple, desplegat a Bluemix. Aquest proxy (Apache, Nginx, …) serà qui tindrà les credencials d’accés a l’ES. L’accés al proxy només es podrà realitzar des del domini de l’aplicació.

Per els servidors web Nginx i Apache els mòduls que permeten aquesta configuració són ngx_http_access_module i mod_authz_host respectivament.

Cas pràctic

Un escenari real seria el d’una aplicació amb un backend a CPD corporatiu el qual insereix dades a l’ES, i un cercador que les consulta des d’una plana web.

Seguretat accés a ES a cloud públic

  • Administrador: responsable d’introduïr les dades a l’ES
  • Usuari: cerca d’informació a l’ES

Existeix una altra opció que consistiria en que el backend també accedís a l’ES a través del Proxy. En aquest cas seria el Proxy quí tindria configurada a la seva whitelist la “ip_sortida_backend”, en lloc del Compose.

Referències