• Products
  • Solutions
  • Customers
  • Resources
  • Company
  • Pricing
  • Download
Try Playground
  • Security
  • Enable-NCacheTLS
Show / Hide Table of Contents
  • Command-Line Interface
  • Cmdlets in Different Editions
  • PowerShell on Windows
    • Setting Up PowerShell Environment
    • Install PowerShell without NCache Installation
  • Install-NCacheModule
  • Client Management
    • Add-ClientNode
    • Remove-ClientNode
    • Add-ClientNodeSecurity
  • Cache Management
    • New-Cache
    • Start-Cache
    • Stop-Cache
    • Set-CacheConfiguration
    • Export-CacheData
    • Export-CacheKeys
    • Export-CacheConfiguration
    • Get-CacheCount
    • Clear-Cache
    • Remove-Cache
    • Set-NCServiceConfigSetting
  • Client Cache
    • New-ClientCache
    • Add-ClientCacheRefDatatype
    • Remove-ClientCacheRefDatatype
    • Remove-ClientCache
  • Node Management
    • Add-Node
    • Remove-Node
  • Query Index
    • Add-QueryIndex
    • Remove-QueryIndex
  • Loader & Refresher
    • Add-LoaderDataSet
    • Invoke-RefresherDataset
    • Remove-LoaderDataSet
    • Add-StartupLoader
    • Remove-StartupLoader
  • DataSource Providers
    • Add-BackingSource
    • Remove-BackingSource
  • Custom Dependency
    • Add-CustomDependency
    • Remove-CustomDependency
  • Pub/Sub Messaging
    • Get-Topics
  • Bridge
    • New-Bridge
    • Add-BridgeNode
    • Add-BridgeCache
    • Start-Bridge
    • Set-BridgeCacheMode
    • Start-BridgeStateTransfer
    • Stop-Bridge
    • Remove-Bridge
    • Remove-BridgeCache
    • Remove-BridgeNode
  • Mapreduce
    • Add-MapReduce
  • Compact Serilaization
    • Add-CompactType
    • Add-PortableType
    • Remove-PortableType
    • Remove-CompactType
  • Security
    • Enable-NCacheSecurity
    • Add-NCacheUserOrGroup
    • Remove-NCacheUserOrGroup
    • Enable-NCacheTLS
    • Disable-NCacheTLS
    • Disable-NCacheSecurity
    • Enable-NCEncryption
    • Disable-NCEncryption
  • Data Persistence
    • Suspend-NCacheDataPersistence
    • Resume-NCacheDataPersistence
  • Monitoring
    • Get-Caches
    • Get-CacheLogs
    • Get-CacheLogsList
    • Get-ConnectedClients
    • Get-CacheClientStatistics
    • Get-CacheServerStatistics
    • Add-TestData
    • Test-Stress
    • Get-ClusterHealth
    • New-MemoryDump
    • Get-MemoryDumpList
    • Send-MemoryDump
    • Remove-MemoryDump
    • Measure-CachePerformance
    • Invoke-ServerLogger
    • Import-CacheData
  • Management Center
    • Start-NCacheManagementCenter
    • Stop-NCacheManagementCenter
    • Set-CacheServerPublicIP
  • NCache Playground
    • Start-NCachePlaygroundProcess
    • Stop-NCachePlaygroundProcess
  • NCache Registration
    • Register-NCache
    • Register-NCacheEvaluation
    • Unregister-NCache
    • Get-NCacheVersion

Enable-NCacheTLS - PowerShell Cmdlet

This PowerShell Cmdlet enables TLS encryption to ensure secure data exchange over the network. This encrypted data communication occurs among cluster, client, server, and bridge. To enable TLS, you can choose between the different switch types like ClientServerCommunication, ServerToServerCommunication, and BridgeCommunication as part of this PowerShell Cmdlet.

Note
  • This feature is only available in NCache Enterprise.
  • From 5.3 SP5 onwards, clients and servers can have different certificates.
Note

For the ProtocolVersion parameter, the client version should be NCache 5.3 SP5 or above. Older clients (before 5.3 SP5) are not supported for this functionality.

  • Windows PowerShell
  • Linux CLI
Enable-NCacheTLS -ServerCertificateCN  -ServerCertificateThumbprint  [-ClientCertificateCN] [-ClientCertificateThumbprint] [-ProtocolVersion] [-ServerToServerCommunication] [-BridgeCommunication] [-UseMutualTLSForClientToServer] [-UseMutualTLSForServerToServer] [-Node] [-Credentials]

Examples of Enable-NCacheTLS - PowerShell Cmdlet

  • This cmdlet enables TLS encryption on nodes 20.200.20.11 and 20.200.20.12 for enhanced security on communication types ClientServerCommunication and BridgeCommunication. UseMutualTLSForClientToServer specify whether the certificate is required at client end or not. It uses tls1.2 for secure communication by default.
Enable-NCacheTLS -Node "20.200.20.11,20.200.20.12" -ServerCertificateCN "MyCert" -ServerCertificateThumbprint "1234567890ABCDEF" -ClientCertificateCN "MyClientCert" -ClientCertificateThumbprint "1234567890EFGHIJKL" -ClientServerCommunication -BridgeCommunication -UseMutualTLSForClientToServer true
  • This cmdlet enables TLS encryption on nodes 20.200.20.11 and 20.200.20.12 for enhanced security on communication types ServerToServerCommunication. UseMutualTLSForServerToServer specify whether the certificate is required at server end or not. It lets operating system to choose it's best suited protocol for secure communication.
Enable-NCacheTLS -Node "20.200.20.11,20.200.20.12" -ServerCertificateCN "MyCert" -ServerCertificateThumbprint "1234567890ABCDEF" -ServerToServerCommunication -UseMutualTLSForClientToServer false -UseMutualTLSForServerToServer true -ProtocolVersion auto
  • This cmdlet enables TLS encryption on nodes 20.200.20.11 and 20.200.20.12 for enhanced security on communication types ServerToServerCommunication. It allows to add separate Client Certificate and Thumbprint for Clients.
 Enable-NCacheTLS -Node "20.200.20.11,20.200.20.12" -ServerCertificateCN "MyCert" -ServerCertificateThumbprint "1234567890ABCDEF" -ClientCertificateCN "MyClientCert" -ClientCertificateThumbprint "1234567890EFGHIJKL" -ServerToServerCommunication -UseMutualTLSForClientToServer false -UseMutualTLSForServerToServer true

Properties

Note

The parameters with asterisk (*) on their names are the required parameters and the rest are optional.

Parameters Data Types Description Default Value
-ServerCertificateCN* <String> The ServerCertificateCN parameter is the common Name (CN) of the server's SSL certificate, verified by clients and other servers in the cluster. -
-ServerCertificateThumbprint* <String> Specifies the unique SHA-1 thumbprint of the server's SSL certificate for identification. -
-ClientCertificateCN <String> The ClientCertificateCN parameter is the common Name (CN) of the client's SSL certificate, verified by the server. -
-ClientCertificateThumbprint <String> Specifies the unique SHA-1 thumbprint of the client's SSL certificate for mutual authentication. -
-CertificateName* (Available until 5.3 SP4) <String> The CertificateName parameter specifies the name of the TLS certificate to be used for encryption. It provides the unique name associated with the desired TLS certificate for secure communication. -
-CertificateThumbprint* (Available until 5.3 SP4) <String> Specifies the unique thumbprint of the TLS certificate to ensure its authenticity and integrity. It provides the fingerprint value associated with the desired TLS certificate for secure communication. -
-ClientServerCommunication <SwitchParameter> Enables TLS encryption for communication between client and server nodes. False
-ServerToServerCommunication <SwitchParameter> Enables TLS encryption for communication between server nodes within a cluster. False
-BridgeCommunication <SwitchParameter> Enables TLS encryption for communication between NCache bridge and geographically separate caches. False
-UseMutualTLSForClientToServer <String> Enforces client nodes to present a valid TLS certificate for authentication during communication. When enabled, all client nodes connecting to the server must present a valid TLS certificate, and it's issuing Certificate Authority must be listed in the server's Trusted Root. False
-UseMutualTLSForServerToServer <String> Enforces server nodes to present a valid TLS certificate for authentication during communication. When enabled, servers connecting to the first server must provide a valid TLS certificate. Additionally, the Certificate Authorities for all servers must be included in each server's Trusted Root. True
-Node <String> Specifies the IP addresses of cache servers, cache clients, or bridge nodes where TLS settings will be applied. Provide a comma-separated list of IP addresses to configure TLS on the desired nodes. Please ensure that client nodes with NCache installed are included; for clients without NCache installation, configure them manually. -
-Credentials <pscredential> Specifies the user credentials required to authorize access for the specified operation. These credentials should belong to a user with the appropriate permissions at the node. -
-ProtocolVersion <String> Specifies the protocol version to be used during TLS communication. There are two possible values for this parameter:
1. ProtocolVersion = TLS12: The system will function as expected when the protocol version is explicitly set to TLS 1.2.
2. ProtocolVersion = Auto: When the protocol version is set to "Auto," the system will now automatically use the highest TLS version installed and supported on the operating system.
tls12
enable-NCacheTLS -servercertificatecn -servercertificatethumbprint [-clientcertificatecn] [-clientcertificatethumbprint] [-protocolversion] [-servertoservercommunication] [-bridgecommunication] [-usemutualtlsforclienttoserver] [-usemutualtlsforservertoserver] [-node] [-pfxpath] [-pfxpassword] [-userid] [-password]

Examples of Enable-NCacheTLS

  • This cmdlet enables TLS encryption on nodes 20.200.20.11 and 20.200.20.12 for enhanced security on communication types clientservercommunication and bridgecommunication. usemutualtlsforclienttoserver specify whether the certificate is required at client end or not. It uses tls1.2 for secure communication by default.
enable-ncachetls -Node "20.200.20.11,20.200.20.12" -servercertificatecn "MyCert" -servercertificatethumbprint "1234567890ABCDEF" -clientcertificatecn "MyClientCert" -clientcertificatethumbprint "1234567890EFGHIJKL"-clientservercommunication -bridgecommunication -usemutualtlsforclienttoserver true
  • This command enables TLS encryption on nodes 20.200.20.11 and 20.200.20.12 for enhanced security on communication type servertoservercommunication. usemutualtlsforservertoserver specify whether the certificate is required at server end or not. protocolversion lets operating system to choose it's best suited protocol for secure communication.
enable-ncachetls -node "20.200.20.11,20.200.20.12" -servercertificatecn "MyCert" -servercertificatethumbprint "1234567890ABCDEF"  -servertoservercommunication -usemutualtlsforclienttoserver false -usemutualtlsforservertoserver true -protocolversion auto
  • This cmdlet enables TLS encryption on nodes 20.200.20.11 and 20.200.20.12 for enhanced security on communication types servertoservercommunication. It allows to add separate Client Certificate and Thumbprint for Clients.
 enable-ncachetls -Node "20.200.20.11,20.200.20.12" -servercertificatecn "MyCert" -servercertificatethumbprint "1234567890ABCDEF" -clientcertificatecn "MyClientCert" -clientcertificatethumbprint "1234567890EFGHIJKL" -servertoservercommunication -usemutualtlsforclienttoserver false -usemutualtlsforservertoserver true

Properties

Note

The parameters with asterisk (*) on their names are the required parameters and the rest are optional.

Parameters Data Types Description Default Value
-servercertificatecn* <String> The servercertificatecn parameter is the common Name (CN) of the server's SSL certificate, verified by clients and other servers in the cluster. -
-servercertificatethumbprint* <String> Specifies the unique SHA-1 thumbprint of the server's SSL certificate for identification. -
-clientcertificatecn <String> The clientcertificatecn parameter is the common Name (CN) of the client's SSL certificate, verified by the server. -
-clientcertificatethumbprint <String> Specifies the unique SHA-1 thumbprint of the client's SSL certificate for mutual authentication. -
-certificatename* (Available until 5.3 SP4) <String> The certificatename parameter specifies the name of the TLS certificate to be used for encryption. It provides the unique name associated with the desired TLS certificate for secure communication. -
-certificatethumbprint* (Available until 5.3 SP4) <String> Specifies the unique thumbprint of the TLS certificate to ensure its authenticity and integrity. It provides the fingerprint value associated with the desired TLS certificate for secure communication. -
-clientservercommunication <SwitchParameter> Enables TLS encryption for communication between client and server nodes. False
-servertoservercommunication <SwitchParameter> Enables TLS encryption for communication between server nodes within a cluster. False
-bridgecommunication <SwitchParameter> Enables TLS encryption for communication between NCache bridge and geographically separate caches. False
-usemutualtls-forclienttoserver <String> Enforces client nodes to present a valid TLS certificate for authentication during communication. When enabled, all client nodes connecting to the server must present a valid TLS certificate, and it's issuing Certificate Authority must be listed in the server's Trusted Root. False
-usemutualtlsforservertoserver <String> Enforces server nodes to present a valid TLS certificate for authentication during communication. When enabled, servers connecting to the first server must provide a valid TLS certificate. Additionally, the Certificate Authorities for all servers must be included in each server's Trusted Root. True
-node <String> Specifies the IP addresses of cache servers, cache clients, or bridge nodes where TLS settings will be applied. Provide a comma-separated list of IP addresses to configure TLS on the desired nodes. Please ensure that client nodes with NCache installed are included; for clients without NCache installation, configure them manually. -
-pfxpath <String> Specifies the path to the PFX certificate file to be used by NCache Java clients on Linux machines for mutual client-server TLS authentication. This parameter is not required for Windows-based clients or cache servers. -
-pfxpassword <String> Specifies the password associated with the PFX certificate file. This parameter is relevant only for NCache Java clients running on Linux machines and is used in conjunction with the PFXPath parameter. It is not applicable to Windows-based clients or cache servers. -
-userid <String> Specifies the user id used to authorize the user for this operation. It is required in case security is enabled on Cache Server. This user id must be the active directory user id. -
-password <String> Specifies the password of the user that is used to authorize the user for this operation. It is required in case security is enabled on Cache Server. This password must be the same as the active directory user password. -
-ProtocolVersion <String> Specifies the protocol version to be used during TLS communication. There are two possible values for this parameter:
1. ProtocolVersion = TLS12: The system will function as expected when the protocol version is explicitly set to TLS 1.2.
2. ProtocolVersion = Auto: When the protocol version is set to "Auto," the system will now automatically use the highest TLS version installed and supported on the operating system.
tls12
In This Article
  • Examples of Enable-NCacheTLS - PowerShell Cmdlet
  • Properties
  • Examples of Enable-NCacheTLS
  • Properties

Contact Us

PHONE

+1 (214) 764-6933   (US)

+44 20 7993 8327   (UK)

 
EMAIL

sales@alachisoft.com

support@alachisoft.com

NCache
  • NCache Enterprise
  • NCache Professional
  • Edition Comparison
  • NCache Architecture
  • Benchmarks
Download
Pricing
Try Playground

Deployments
  • Cloud (SaaS & Software)
  • On-Premises
  • Kubernetes
  • Docker
Technical Use Cases
  • ASP.NET Sessions
  • ASP.NET Core Sessions
  • Pub/Sub Messaging
  • Real-Time ASP.NET SignalR
  • Internet of Things (IoT)
  • NoSQL Database
  • Stream Processing
  • Microservices
Resources
  • Magazine Articles
  • Third-Party Articles
  • Articles
  • Videos
  • Whitepapers
  • Shows
  • Talks
  • Blogs
  • Docs
Customer Case Studies
  • Testimonials
  • Customers
Support
  • Schedule a Demo
  • Forum (Google Groups)
  • Tips
Company
  • Leadership
  • Partners
  • News
  • Events
  • Careers
Contact Us

  • EnglishChinese (Simplified)FrenchGermanItalianJapaneseKoreanPortugueseSpanish

  • Contact Us
  •  
  • Sitemap
  •  
  • Terms of Use
  •  
  • Privacy Policy
© Copyright Alachisoft 2002 - 2025. All rights reserved. NCache is a registered trademark of Diyatech Corp.
Back to top