Seguridad y Cifrado en NCache

NCache proporciona un conjunto sólido de seguridad Funciones diseñadas para proteger entornos de caché distribuido sin comprometer el rendimiento. Por ejemplo, los controles de acceso permiten definir permisos de usuario para cachés y nodos específicos, garantizando que solo los usuarios autorizados puedan realizar ciertas operaciones. Además, la integración con LDAP permite la autenticación centralizada, lo que facilita la gestión del acceso seguro en todo el sistema.

Además, para proteger los datos sensibles, Cifrado de datos La protege tanto en memoria como durante la transmisión mediante algoritmos como AES, 3DES y AES FIPS. Sin embargo, conlleva un coste de rendimiento adicional. Para una seguridad de red más eficiente, Cifrado TLS Asegura la comunicación entre clientes, servidores y puentes con menos sobrecarga y permite elegir qué rutas de comunicación proteger. Además, Soporte HTTPS asegura el acceso a la NCache Centro de administración en Windows y Linux que utiliza certificados TLS, lo que garantiza un acceso administrativo seguro y cifrado. Estas características de seguridad en NCache se clasifican en las siguientes tres áreas principales:

  1. Seguridad del usuario
  2. Cifrado
  3. Transport Layer Security
NCache Arquitectura de caché distribuida para .NET, Java, Node.js y Python en Windows y Linux.
Multiplataforma NCache Clúster para microservicios y datos heredados.

Control de acceso basado en roles (RBAC) y autenticación de usuarios

Seguridad del usuario en NCache Garantiza un control de acceso seguro mediante la gestión de la autenticación y autorización de los usuarios que interactúan con los clústeres de caché.

Autenticacion y autorizacion

NCache proporciona seguridad con autenticación y autorización integradas en el producto. NCache clasifica a los usuarios en función de los dos niveles diferentes de seguridad de la siguiente manera:

  1. Administradores de nodos: Los administradores de nodo son superusuarios con control total sobre la caché. Pueden crear, modificar y eliminar cachés, así como realizar cualquier tarea de gestión de caché. Tienen la capacidad de guardar o descartar configuraciones de seguridad y heredar las capacidades de los usuarios de caché para interactuar con las cachés mediante... NCache API.
  2. Usuarios de caché: Si desea restringir el acceso de los usuarios a la API de caché sin privilegios de administración de nodos, puede configurarlos como Usuarios de caché, limitándolos a operaciones de datos como Agregar, Eliminar, Actualizar y Recuperar mediante las API correspondientes en la caché a la que tienen acceso. Sin embargo, si prefiere que todos los usuarios tengan acceso total para realizar operaciones en el nodo y las cachés configuradas, no es necesario configurar Usuarios de caché, ya que los Administradores de nodo ya tienen control total sobre la caché.
NCache modelo de seguridad con LDAP, cifrado RSA y TLS.
Flujo de trabajo de autenticación LDAP integrada y cifrado RSA/TLS.

Autenticación

NCache Implementa el Control de Acceso Basado en Roles (RBAC) para garantizar que solo los usuarios autorizados accedan o administren el clúster. Al integrarse de forma nativa con servicios de directorio compatibles con LDAP (como Microsoft Active Directory), NCache Refuerza la autenticación centralizada, lo que permite a las organizaciones gestionar las políticas de seguridad dentro de su infraestructura de identidad existente. Cuando NCache Con la seguridad habilitada, todas las conexiones al clúster de caché deben autenticarse previamente mediante el directorio LDAP del servidor de caché. Durante este proceso, los usuarios deben proporcionar su nombre de usuario, nombre distinguido (DN) y contraseña. Si estas credenciales no se autentican correctamente, la solicitud de conexión se rechaza.

En este escenario, si se interrumpe la conexión con el controlador de dominio, falla la validación y el usuario no puede realizar ninguna operación. Para evitar esto, NCache Ofrece almacenamiento en caché de credenciales, donde las credenciales del usuario se almacenan en NCache De esta forma, un usuario ya autenticado no tendrá que autenticarse repetidamente durante la ejecución del proceso. Esta función está deshabilitada por defecto y el usuario puede habilitarla mediante el archivo de configuración del servicio. Debe especificar las credenciales de usuario en los siguientes lugares según el nivel de seguridad. Para obtener más información, consulte la documentación. NCache Documentación.

  • Administradores de nodos: Agregue los administradores de nodo de la siguiente manera:

    Add-NCacheUserOrGroup -Server 20.200.20.40 -AccessLevel Admin -AdminCredentials(Get-Credential john_smith) -UserOrGroupName john_smith -UserOrGroupDN "CN=John Smith,OU=engineers,DC=example,DC=com" -DomainController test_domain

    Entonces tú puedes habilitar la seguridad como puede ver abajo:

    Enable-NCacheSecurity -Server 20.200.20.40 -AdminCredentials(Get-Credential john_smith) -WriteCredentialsToServiceConfig

    También puede configurar la seguridad a nivel de nodo utilizando el NCache Centro de gestion.

  • Usuarios de caché:

    Ha protegido correctamente su nodo y sus cachés. Como se mencionó anteriormente, para restringir las operaciones de caché de ciertos usuarios sin permisos de administración completos, agréguelos como usuarios de caché. Use el mismo cmdlet para los administradores de nodo, especificando AccessLevel como Cache y CacheName (el nombre de la caché a la que desea que acceda el usuario). Ejecute el siguiente comando:

    Add-NCacheUserOrGroup -Server 20.200.20.40 -AccessLevel Cache -CacheName demoCache -AdminCredentials(Get-Credential john_smith) -UserOrGroupName john_smith -UserOrGroupDN "CN=John Smith,OU=engineers,DC=example,DC=com" -DomainController test_domain -EnableSecurity Yes

    También puedes configurar las credenciales programáticamenteA continuación se muestra un ejemplo de cómo llamar a este método con las credenciales de usuario requeridas:

    // Specify cache name and user credentials
    string cacheName = "demoCache";
    string userId = "userid";
    string password = "mypassword";
    
    // Initialize the CacheConnectionOptions
    var options = new CacheConnectionOptions();
    
    // Enter the credentials
    options.UserCredentials = new Credentials(userId, password);
    
    // Connect to the cache using the security credentials
    ICache cache = CacheManager.GetCache(cacheName, options);

Configuración de seguridad homogénea

Tras configurar los ajustes de seguridad para un nodo, debe asegurarse de que todos los nodos del clúster tengan ajustes de seguridad similares. El usuario que actúa como administrador de nodo en un nodo debe ser el administrador en todos los demás nodos del clúster. Del mismo modo, el usuario que actúa como usuario de caché en un nodo debe ser usuario de caché en el resto de los nodos. Si no se garantizan ajustes de seguridad homogéneos en todos los nodos del clúster, podrían surgir diversos problemas al administrar y operar la caché.

Autorización

Después NCache autentica una conexión al caché con éxito, comprueba NCache Archivos de configuración en el servidor de caché para autorizar esta conexión. Una vez autenticada una conexión con el directorio activo, se autoriza desde el seguridad.ncconf archivo o el cliente.ncconf en función de si utiliza seguridad a nivel de nodo o a nivel de caché, respectivamente.

Cifrado

Si su aplicación maneja datos confidenciales y sensibles que desea proteger y está utilizando un caché distribuida en memoria, debe asegurarse de que su caché distribuida proteja estos datos confidenciales del acceso no deseado a través del cifrado.

NCache Proceso de cifrado de datos mediante DEK y KEK con intercambio de claves seguro mediante RSA.
Arquitectura de cifrado de datos de confianza cero para entornos distribuidos.

Cifrado de datos

NCache Admite un amplio conjunto de algoritmos de cifrado estándar de la industria, como AES-256 y AES compatible con FIPS, para ayudar a las organizaciones a cumplir con requisitos normativos como PCI-DSS, HIPAA y RGPD. Esto garantiza la protección de sus datos confidenciales mediante los estándares criptográficos recomendados por el NIST. NCache Admite los siguientes algoritmos de cifrado:

  • Estándar de triple cifrado de datos (3DES)
  • Advanced Encryption Standard (AES)
  • Estándar de cifrado avanzado - Estándares federales de procesamiento de información (AES-FIPS)

A continuación se muestran detalles de cada algoritmo y sus variaciones compatibles:

Estándar de triple cifrado de datos (3DES)

El Estándar de Cifrado Triple de Datos (3DES) es un algoritmo de cifrado de bloques de clave simétrica que aplica el algoritmo DES tres veces a cada bloque de datos. Diferentes variantes del algoritmo 3DES son compatibles con... NCache son:

  • 3DES-128: 128-bit de encriptación
  • 3DES-192: 192-bit de encriptación

Advanced Encryption Standard (AES)

El Estándar de Cifrado Avanzado (AES) es un algoritmo de cifrado por bloques simétrico con un tamaño de bloque/fragmento de 128 bits. Convierte estos bloques individuales utilizando claves de 128, 192 y 256 bits. Una vez cifrados estos bloques, los une para formar el texto cifrado. Diferentes variantes del algoritmo AES son compatibles con... NCache son:

  • AES-128: 128-bit de encriptación
  • AES-192: 192-bit de encriptación
  • AES-256: 256-bit de encriptación

Flujo de trabajo de cifrado de datos

NCache el cifrado y descifrado de datos se produce dentro del NCache proceso de solicitud del cliente. Por lo tanto, todos los datos que viajan por la red entre su aplicación y el clúster de caché ya están encriptados. Del mismo modo, solo los datos cifrados se almacenan en el almacén de caché. Usted proporciona una clave de cifrado que NCache usos, que se guarda en el interior NCache archivos de configuración de seguridad En cada servidor de caché, de forma cifrada. La clave de cifrado se envía automáticamente a los clientes para su uso en memoria tras una conexión exitosa.

Puede habilitar el cifrado a través del NCache Centro de gestion sin ningún esfuerzo de programación de su parte. Una vez que se habilita el cifrado, el NCache El cliente comienza a cifrar automáticamente sus objetos antes de enviarlos al clúster de caché. Y descifra automáticamente los objetos extraídos del caché antes de enviarlos a su aplicación.

Gestión de claves de cifrado

Gestión de claves de cifrado en NCache implica manejar de forma segura todas las claves de cifrado, incluyendo la clave de cifrado de clave (KEK), la clave de cifrado de datos (DEK) y la clave de cifrado de credenciales (CEK), como se describe a continuación.

  • Clave de cifrado de clave (KEK): La clave de cifrado de claves (KEK), basada en el cifrado AES 256, protege la clave de cifrado de datos (DEK) mediante su cifrado. Esta clave debe configurarse en el NCache Archivo de configuración del servicio en el servidor. Para garantizar la coherencia y la seguridad en todos los servidores de caché de un entorno distribuido, se debe utilizar la misma clave de cifrado de claves (KEK) en cada servidor.
  • Clave de cifrado de datos (DEK): La clave de cifrado de datos (DEK) se encarga de cifrar los datos del usuario antes de almacenarlos en la caché. Esta DEK se cifra a su vez mediante la KEK. Este método garantiza que solo las herramientas o procesos autorizados puedan recuperar y utilizar las claves de cifrado.
  • Clave de cifrado de credenciales (CEK): NCache Encripta las credenciales de usuario almacenadas en el archivo de configuración del cliente (client.ncconf) mediante una clave de encriptación de credenciales (CEK). Esta clave debe configurarse en el archivo de configuración del cliente. NCache Archivo de configuración del servicio. Al igual que con KEK, se debe usar la misma clave de cifrado de credenciales (CEK) en cada servidor. Esto garantiza la coherencia y protege eficazmente las credenciales del cliente en entornos distribuidos.

Cifrado RSA (Transporte de clave pública/privada)

Para intercambiar de forma segura las claves de cifrado y las credenciales de usuario, NCache Utiliza cifrado de clave pública/privada basado en RSA. El cifrado RSA se utiliza únicamente para el transporte de claves y credenciales durante la comunicación entre clientes y servidores, así como en los intercambios entre servidores.

  • RSA protege la transmisión de credenciales de usuario, KEK y CEK durante el proceso de intercambio de claves.
  • Cada componente participante genera dinámicamente un par de claves RSA pública/privada en tiempo de ejecución para realizar un intercambio de claves seguro.
  • Esto garantiza que las claves y credenciales confidenciales nunca viajen en texto plano, incluso antes de que se aplique el cifrado de seguridad de la capa de transporte (TLS).

Transport Layer Security

Aunque NCache Incluye una función de cifrado de datos que protege la información en memoria y durante su transmisión por la red. Sin embargo, el cifrado de datos conlleva un mayor impacto en el rendimiento. Por otro lado, la seguridad de la capa de transporte (TLS) ofrece un enfoque más completo para proteger los datos durante la transmisión por la red, siguiendo las prácticas estándar del sector. Si bien TLS también afecta al rendimiento, suele consumir menos recursos que el cifrado de datos.

NCache Diagrama TLS que muestra TLS regular y mutuo (mTLS) para la comunicación cliente-servidor.
Integridad de red de extremo a extremo a través de TLS 1.3 y autenticación mutua.

TLS regular

Transport Layer Security El cifrado (TLS) protege el intercambio de datos entre servidores y clientes, entre diferentes servidores, cachés y puentes. Los usuarios pueden habilitar cualquier certificado emitido o autofirmado para las conexiones con los clientes o habilitar conexiones entre componentes. NCacheEsto garantiza la transmisión de datos cifrados, que están separados de los datos protegidos por TLS.

NCache Proporciona una robusta seguridad de la capa de transporte (TLS 1.2 y 1.3) para proteger los datos en movimiento. Esto incluye compatibilidad con Mutual TLS (mTLS), que proporciona autenticación bidireccional entre clientes y servidores. Esto garantiza la comunicación cifrada en todos los canales, incluyendo las conexiones de cliente a servidor, de servidor a servidor y a través de puentes WAN. Para establecer estos canales seguros, TLS utiliza certificados digitales para la autenticación. Estos certificados pueden instalarse en el almacén raíz de confianza o en el almacén personal (My), lo que proporciona flexibilidad en entornos donde la política de grupo puede restringir el uso del almacén raíz. Se recomiendan los certificados públicos emitidos por CA para evitar una configuración de confianza adicional. Sin embargo, también se pueden utilizar certificados privados de CA, siempre que la autoridad emisora ​​se agregue al almacén raíz de confianza en todos los servidores y clientes.

TLS mutuo

NCache Admite tanto TLS estándar como TLS mutuo para una autenticación segura. En TLS estándar, se instala un certificado de servidor en cada servidor. NCache El servidor permite a los clientes verificar su identidad durante el protocolo de enlace. El protocolo TLS mutuo refuerza aún más este proceso al requerir también certificados de cliente, lo que garantiza que tanto el cliente como el servidor se autentiquen mutuamente antes de establecer una conexión segura. Para una comunicación segura en todo el entorno de almacenamiento en caché distribuido, TLS ahora protege no solo las interacciones entre cliente y servidor, sino también la comunicación entre servidores y los datos intercambiados a través de conexiones de puente.

Configurar TLS en todo el clúster

NCache ofrece una forma sencilla de configurar la seguridad de la capa de transporte (TLS) a través del nuevo Habilitar-NCacheTLS y Inhabilitar-NCacheTLS cmdlets. Una vez instalados los certificados y habilitado TLS, se garantiza la comunicación segura en todos los nodos participantes. Los cambios de configuración requieren un NCache El reinicio del servicio surtirá efecto y los usuarios podrán verificar el estado del cifrado a través del Centro de administración o de los registros que indiquen operaciones de negociación TLS exitosas.

Para configurar el cifrado TLS en Windows o Linux, siga la documentación en Configurar el cifrado TLS en NCache

NCache Seguridad: Matriz FIPS y RBAC

Capa de seguridad Tecnología / Estándar Objetivo
Autenticación LDAP / Directorio Activo Centraliza la gestión de identidad; verifica la identidad del usuario frente a los controladores de dominio empresarial existentes.
Autorización RBAC (Administrador vs. Usuario) Hace cumplir el principio de mínimo privilegio al restringir las tareas de gestión a roles autorizados específicos.
Privacidad de datos AES-256 / FIPS 140-2 Garantiza la confidencialidad de los datos en reposo, en memoria y en tránsito utilizando estándares criptográficos recomendados por el NIST.
Integridad de la red TLS 1.3 / mTLS Proporciona cifrado de extremo a extremo; Mutual TLS evita ataques Man-in-the-Middle (MITM) y garantiza una verificación bidireccional.
Acceso Administrativo HTTPS/TLS Asegura el NCache Centro de administración (Windows y Linux) con comunicación administrativa encriptada.

¿Qué hacer a continuación?

Preguntas frecuentes

Sí. NCache Es compatible con AES-FIPS (Estándares Federales de Procesamiento de Información), esencial para agencias gubernamentales y organizaciones en sectores altamente regulados. Esto garantiza que todos los datos en la caché distribuida cumplan con los estrictos requisitos federales de seguridad.

NCache Realiza el cifrado y descifrado de datos dentro del proceso de la aplicación cliente. Al cifrar los datos antes de enviarlos por la red, NCache Garantiza que solo el texto cifrado circule por la red y se almacene en la caché. Esto reduce la carga de procesamiento en los servidores de caché y mantiene un entorno de confianza cero.

Absolutamente. NCache Proporciona integración nativa con LDAP, lo que le permite usar su Microsoft Active Directory existente u otros servicios de directorio compatibles con LDAP para una autenticación centralizada. Esto simplifica la gestión de usuarios al aprovechar la infraestructura de identidad actual de su organización.

El TLS regular proporciona autenticación del lado del servidor, donde el cliente verifica la identidad del servidor. El TLS mutuo (mTLS) añade una capa adicional de seguridad al requerir que el cliente proporcione un certificado, lo que garantiza la verificación de ambos extremos de la conexión antes de intercambiar datos.

Sí. NCache utiliza un modelo de control de acceso basado en roles (RBAC) con dos niveles principales: administradores de nodo, que tienen privilegios completos de administración del clúster, y usuarios de caché, que están restringidos a operaciones básicas de API de datos (agregar, obtener, eliminar) según el "Principio de mínimo privilegio".

Contáctenos

TELÉFONO

+1 214-619-2601 (EE.UU.)

+44 20 7993 8327 (Reino Unido)

© Copyright Alachisoft 2002 - Todos los derechos reservados. NCache es una marca registrada de Diyatech Corp.