NCache fornisce un set robusto di sicurezza Funzionalità progettate per proteggere gli ambienti di caching distribuito senza compromettere le prestazioni. Ad esempio, i controlli di accesso offerti consentono di definire le autorizzazioni utente per cache e nodi specifici, garantendo che solo gli utenti autorizzati possano eseguire determinate operazioni. Inoltre, l'integrazione LDAP consente l'autenticazione centralizzata, semplificando la gestione dell'accesso sicuro in tutto il sistema.
Inoltre, per proteggere i dati sensibili, Crittografia dei dati protegge i dati sia in memoria che durante la trasmissione utilizzando algoritmi come AES, 3DES e AES FIPS. Tuttavia, comporta un costo aggiuntivo in termini di prestazioni. Per una sicurezza di rete più efficiente, Crittografia TLS protegge la comunicazione tra client, server e bridge con meno overhead e consente di scegliere quali percorsi di comunicazione proteggere. Inoltre, Supporto HTTPS garantisce l'accesso al NCache Management Center su Windows e Linux utilizzando certificati TLS, garantendo un accesso amministrativo sicuro e crittografato. Queste funzionalità di sicurezza in NCache sono classificati nelle seguenti tre aree principali:
Sicurezza dell'utente in NCache garantisce un controllo sicuro degli accessi gestendo l'autenticazione e l'autorizzazione per gli utenti che interagiscono con i cluster di cache.
NCache fornisce sicurezza con autenticazione e autorizzazione integrate nel prodotto. NCache classifica gli utenti in base ai due diversi livelli di sicurezza come segue:
NCache Implementa il controllo degli accessi basato sui ruoli (RBAC) per garantire che solo gli utenti autorizzati accedano o amministrino il cluster. Integrandosi nativamente con i servizi di directory supportati da LDAP (come Microsoft Active Directory), NCache impone l'autenticazione centralizzata, consentendo alle organizzazioni di gestire le policy di sicurezza all'interno della loro infrastruttura di identità esistente. Quando NCache Se la sicurezza è abilitata, tutte le connessioni al cluster di cache devono essere prima autenticate tramite la directory LDAP sul server di cache. Durante questo processo, gli utenti devono fornire il proprio nome utente, nome distinto (DN) e password. Se l'autenticazione di queste credenziali fallisce, la richiesta di connessione viene rifiutata.
In questo scenario, se la connessione con il controller di dominio si interrompe, la convalida fallisce e l'utente non può eseguire alcuna operazione. Per evitare ciò, NCache offre la memorizzazione nella cache delle credenziali, in cui le credenziali dell'utente vengono memorizzate NCache In questo modo, un utente già autenticato non dovrà autenticarsi ripetutamente durante il processo. Questa opzione è disabilitata per impostazione predefinita e l'utente può abilitarla tramite il file di configurazione del servizio. È necessario specificare le credenziali utente nei seguenti punti, in base al livello di sicurezza. Per ulteriori dettagli, fare riferimento a NCache Documentazione.
Amministratori dei nodi: Aggiungere gli amministratori del nodo come segue:
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
Poi si può abilitare la sicurezza come puoi vedere qui sotto:
Enable-NCacheSecurity -Server 20.200.20.40 -AdminCredentials(Get-Credential john_smith) -WriteCredentialsToServiceConfig
È anche possibile configurare la sicurezza a livello di nodo utilizzando NCache Centro di gestione.
Hai protetto correttamente il tuo nodo e le sue cache. Come discusso in precedenza, per limitare determinati utenti alle operazioni di cache senza diritti di gestione completi, aggiungili come Utenti Cache. Utilizza lo stesso cmdlet per gli Amministratori Nodo, specificando AccessLevel come Cache e CacheName (il nome della cache a cui desideri che l'utente acceda). Esegui il seguente 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
Puoi anche configurare le credenziali programmaticamenteDi seguito è riportato un esempio di come chiamare questo metodo con le credenziali utente richieste:
// 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);
Dopo aver definito le impostazioni di sicurezza per un nodo, è necessario assicurarsi che tutti i nodi del cluster abbiano impostazioni di sicurezza simili. L'utente che funge da Amministratore Nodo su un nodo dovrebbe essere l'amministratore di tutti gli altri nodi del cluster. Allo stesso modo, l'utente che funge da Utente Cache su un nodo dovrebbe essere un Utente Cache sugli altri nodi. Se non vengono garantite impostazioni di sicurezza omogenee su tutti i nodi di un cluster, si potrebbero riscontrare diversi problemi durante la gestione e l'utilizzo della cache.
Dopo NCache autentica correttamente una connessione alla cache, verifica NCache file di configurazione sul server cache per autorizzare questa connessione. Una volta che una connessione è autenticata rispetto ad Active Directory, viene autorizzata da sicurezza.ncconf file o il client.ncconf a seconda che si utilizzi rispettivamente la sicurezza a livello di nodo o a livello di cache.
Se la tua applicazione gestisce dati riservati e sensibili che desideri proteggere e stai utilizzando un cache distribuita in memoria, devi assicurarti che la tua cache distribuita protegga questi dati sensibili da accessi indesiderati tramite la crittografia.
NCache Supporta un ampio set di algoritmi di crittografia standard del settore, tra cui AES-256 e AES conforme a FIPS, per aiutare le organizzazioni a soddisfare i requisiti normativi come PCI-DSS, HIPAA e GDPR. Ciò garantisce che i dati sensibili rimangano protetti utilizzando gli standard crittografici raccomandati dal NIST. NCache supporta i seguenti algoritmi di crittografia:
Di seguito sono riportati i dettagli di ciascun algoritmo e delle varianti supportate:
Triplo standard di crittografia dei dati (3DES)
Il Triple Data Encryption Standard (3DES) è un algoritmo di cifratura a blocchi a chiave simmetrica, che applica l'algoritmo di cifratura DES tre volte a ciascun blocco di dati. Diverse varianti dell'algoritmo 3DES sono supportate da NCache siamo:
Advanced Encryption Standard (AES)
L'Advanced Encryption Standard (AES) è un algoritmo di cifratura a blocchi simmetrico con una dimensione di blocco/chunk di 128 bit. Converte questi singoli blocchi utilizzando chiavi di 128, 192 e 256 bit. Una volta crittografati, questi blocchi vengono uniti per formare il testo cifrato. Diverse varianti dell'algoritmo AES sono supportate da NCache siamo:
NCache la crittografia e la decrittografia dei dati avvengono all'interno di NCache processo di richiesta del cliente. Pertanto, tutti i dati che viaggiano sulla rete tra l'applicazione e il cluster di cache sono già crittografati. Allo stesso modo, solo i dati crittografati vengono archiviati nel cache store. Fornisci una chiave di crittografia che NCache usi, che è tenuto all'interno NCache file di configurazione di sicurezza su ogni server cache in modo crittografato. La chiave di crittografia viene inviata automaticamente ai client per essere utilizzata in memoria in caso di connessione riuscita.
È possibile abilitare la crittografia tramite NCache Centro di gestione senza alcuno sforzo di programmazione da parte tua. Una volta abilitata la crittografia, il NCache il client inizia automaticamente a crittografare gli oggetti prima di inviarli al cluster di cache. Inoltre, decrittografa automaticamente gli oggetti recuperati dalla cache prima di consegnarli all'applicazione.
Gestione delle chiavi di crittografia in NCache comporta la gestione sicura di tutte le chiavi di crittografia, tra cui la chiave di crittografia della chiave (KEK), la chiave di crittografia dei dati (DEK) e la chiave di crittografia delle credenziali (CEK), come illustrato di seguito.
Per scambiare in modo sicuro le chiavi di crittografia e le credenziali utente, NCache Utilizza la crittografia a chiave pubblica/privata basata su RSA. La crittografia RSA viene utilizzata solo per il trasporto di chiavi e credenziali durante la comunicazione tra client e server, nonché negli scambi tra server.
Mentre NCache Include una funzionalità di crittografia dei dati, che protegge i dati in memoria e durante la trasmissione in rete. Tuttavia, la crittografia dei dati comporta un costo aggiuntivo in termini di prestazioni. D'altro canto, Transport Layer Security (TLS) offre un approccio più completo alla protezione dei dati durante la trasmissione in rete, seguendo le pratiche standard del settore. Sebbene TLS abbia anch'esso un impatto sulle prestazioni, tende a richiedere meno risorse rispetto all'alternativa, ovvero la crittografia dei dati.
Transport Layer Security La crittografia (TLS) protegge lo scambio di dati tra server e client, server diversi, cache e bridge. Gli utenti possono abilitare qualsiasi certificato emesso o autofirmato per le connessioni con i client o abilitare connessioni da componente a componente in NCacheCiò garantisce la trasmissione crittografata dei dati, separata dai dati protetti tramite TLS.
NCache Fornisce una solida sicurezza del livello di trasporto (TLS 1.2 e 1.3) per proteggere i dati in movimento. Questo include il supporto per Mutual TLS (mTLS), che fornisce l'autenticazione bidirezionale tra client e server. Ciò garantisce comunicazioni crittografate su tutti i canali, inclusi client-server, server-server e connessioni bridge WAN. Per stabilire questi canali sicuri, TLS si basa su certificati digitali per l'autenticazione. Questi certificati possono essere installati nell'archivio Trusted Root o Personal (My), offrendo flessibilità per gli ambienti in cui i criteri di gruppo potrebbero limitare l'utilizzo dell'archivio Root. Si consigliano certificati emessi da CA pubbliche per evitare ulteriori configurazioni di trust. Tuttavia, è possibile utilizzare anche certificati CA privati, a condizione che l'autorità emittente venga aggiunta all'archivio Trusted Root su tutti i server e client.
NCache supporta sia il TLS regolare che il TLS reciproco per l'autenticazione sicura. Nel TLS regolare, un certificato server è installato su ogni NCache server, consentendo ai client di verificare l'identità del server durante l'handshake. Mutual TLS rafforza ulteriormente questo processo richiedendo anche i certificati client, garantendo che sia il client che il server si autentichino a vicenda prima di stabilire una connessione sicura. Per una comunicazione sicura nell'intero ambiente di caching distribuito, TLS ora protegge non solo le interazioni client-server, ma anche le comunicazioni server-server e i dati scambiati tramite connessioni bridge.
NCache offre un modo semplice per configurare Transport Layer Security (TLS) tramite il nuovo Abilitare-NCacheTLS and Disattivare-NCacheTLS cmdlet. Una volta installati i certificati e abilitato TLS, la comunicazione sicura viene applicata a tutti i nodi partecipanti. Le modifiche alla configurazione richiedono un NCache il riavvio del servizio avrà effetto e gli utenti potranno verificare lo stato della crittografia tramite Management Center o i registri che indicano le operazioni di handshake TLS riuscite.
Per configurare la crittografia TLS in Windows o Linux, seguire la documentazione su Configura la crittografia TLS in NCache
| Livello di sicurezza | Tecnologia / Standard | Obiettivo |
|---|---|---|
| Autenticazione | LDAP/Active Directory | Centralizza la gestione delle identità; verifica l'identità dell'utente rispetto ai controller di dominio aziendali esistenti. |
| Autorizzazione | RBAC (amministratore vs. utente) | Applica il principio del privilegio minimo limitando le attività di gestione a specifici ruoli autorizzati. |
| Privacy dei dati | AES-256 / FIPS 140-2 | Garantisce la riservatezza dei dati a riposo, in memoria e in transito utilizzando gli standard crittografici raccomandati dal NIST. |
| Integrità della rete | TLS 1.3 / mTLS | Fornisce crittografia end-to-end; Mutual TLS impedisce gli attacchi Man-in-the-Middle (MITM) e garantisce la verifica bidirezionale. |
| Accesso amministrativo | HTTPS/TLS | Protegge il NCache Management Center (Windows e Linux) con comunicazione amministrativa crittografata. |
© Copyright Alachisoft 2002 - . Tutti i diritti riservati. NCache è un marchio registrato di Diyatech Corp.