Kaspersky Container Security

Integración a HashiCorp Vault

Kaspersky Container Security permite transferir de forma segura contraseñas, tokens y secretos mediante HashiCorp Vault, un servicio de almacenamiento externo. La solución genera anotaciones en el pod, que el inyector Vault utiliza para montar los secretos necesarios del almacenamiento en el inicio.

Kaspersky Container Security es compatible con la integración a HashiCorp Vault 1.7 o una versión posterior.

La versión 2.0 de Kaspersky Container Security es compatible con HashiCorp Vault solo en el modo secundario con contenedores secundarios. En este caso, solo se admite la autenticación de Kubernetes.

Si el servicio considera pods no definidos y se utilizan cuentas predeterminadas del servicio, no recomendamos asignar los roles específicos del almacenamiento a dichas cuentas del servicio, en cumplimiento de los requisitos de seguridad críticos.

Los valores de la configuración de HashiCorp Vault se especifican en el archivo de configuración values.yaml y se despliegan al iniciar el paquete de Helm Chart.

La configuración de HashiCorp en el archivo de configuración values.yaml es de la siguiente manera:

  • Si el parámetro enabled del bloque vault tiene el valor false, no se realizará la integración a Vault.
  • Si el parámetro enabled del bloque vault tiene el valor true, se realizará la integración a Vault y se priorizarán los valores de las variables en el bloque de la configuración de vault.

El bloque de la configuración de vault tiene las siguientes secciones:

  • secret: para especificar secretos y credenciales.
  • certificate: para especificar certificados y claves de certificados.

En la sección secret, se enumeran las rutas a los archivos que contienen los secretos para estos parámetros:

  • Secretos de los servidores proxy ante solicitudes al entorno de información externo
  • Credenciales de la base de datos de PostgreSQL
  • Credenciales de un almacenamiento compatible con S3 para los archivos que genera la solución
  • Credenciales del sistema de gestión de bases de datos ClickHouse

Los secretos se especifican con el formato key:value

donde:

  • <key> es el nombre de la variable de entorno
  • <value> es la ruta completa al secreto en el almacenamiento, seguida del símbolo @ y el nombre de la clave del secreto creado en el almacenamiento

Por ejemplo, POSTGRES_USER:kv/secret/kcs/psql@POSTGRES_USER

Para obtener un certificado, en la sección vault.certificate, debe especificar los siguientes parámetros:

  • Para obtener un certificado de CA, el parámetro ca debe tener el valor true. En este caso, la ruta para acceder al certificado se forma a partir de la ruta estándar cert/ca según el nombre de la infraestructura de clave pública (PKI). Si el certificado de CA no es un certificado raíz, use el parámetro caList para enumerar todos los certificados, incluido el certificado raíz. Por ejemplo:

    cert-ca:

    ca: true

    tls.crt: pki_kcs/cert/ca

    caList:

    - pki/cert/ca

  • Para generar certificados y claves, debe especificar la ruta del nombre de PKI con la ruta estándar issue y el nombre del rol creado. El nombre común (cn) y todos los nombres alternativos posibles (altname) se añaden automáticamente al certificado. De ser necesario, puede especificar los valores de cn, altname e ipsans de forma manual, como se muestra debajo para una base de datos externa:

    cert-pguser:

    cn: pguser

    altname: pguser,pguser.psql,pguser.psql.svc,pguser.psql.svc.cluster.local,localhost

    ipsans: 0.0.0.0,127.0.0.1

  • Para configurar la vigencia del certificado, debe especificar el valor del parámetro ttl. El valor predeterminado es 8760.

    El valor del parámetro no puede ser mayor del valor establecido en la PKI de HashiCorp Vault.

La sección certificate, también contiene las rutas a los archivos que contienen los certificados y las claves siguientes:

  • Certificado de CA y certificado del cliente para la base de datos externa de PostgreSQL
  • Certificados obligatorios para los componentes de la solución:
    • Certificado de CA y clave del certificado de CA para el controlador de admisión
    • Certificado y clave del certificado para el módulo de licencias de Kaspersky Container Security
    • Certificado y clave del certificado para el módulo que contiene la lógica corporativa principal de la solución
    • Certificado y clave del certificado para la plataforma de llamada a procedimientos externos (GRPC)
    • Certificado y clave del certificado para el servidor de análisis
    • Certificado y clave del certificado para la API del servidor de análisis
    • Certificado y clave del certificado para el servidor de archivos de actualización para redes corporativas privadas
    • Certificado y clave del certificado para el almacenamiento de archivos compatible con S3
    • Certificado y clave del certificado para el broker de eventos
    • Certificado y clave del certificado para el broker de agentes
    • Certificado y clave del certificado para el sistema de gestión de bases de datos ClickHouse

Contenido de esta sección:

Configuración del almacenamiento HashiCorp Vault

Limitaciones en cuanto al almacenamiento