libiec61850.NET 1.6.1
IEC 61850 .NET API for libiec61850 protocol library
Loading...
Searching...
No Matches
IEC61850.TLS.TLSConfiguration Class Reference

A container for TLS configuration and certificates. More...

Inheritance diagram for IEC61850.TLS.TLSConfiguration:

Public Member Functions

void SetEventHandler (TLSEventHandler handler, object parameter)
 
 TLSConfiguration ()
 
void SetRenegotiationTime (int timeInMs)
 Set the TLS session renegotiation timeout.
 
void SetClientMode ()
 
void SetOwnCertificate (string filename)
 
void SetOwnCertificate (X509Certificate2 cert)
 
void AddAllowedCertificate (string filename)
 
void AddAllowedCertificate (X509Certificate2 cert)
 
void AddCACertificate (string filename)
 
void AddCACertificate (X509Certificate2 cert)
 
void SetOwnKey (string filename, string password=null)
 Set own private key from file.
 
void SetOwnKey (X509Certificate2 key, string password)
 
void AddCRL (string filename)
 Add a CRL from a X509 CRL file.
 
void ResetCRL ()
 Removes any CRL (certificate revocation list) currently in use.
 
void SetMinTlsVersion (TLSConfigVersion version)
 Set minimal allowed TLS version to use.
 
void SetMaxTlsVersion (TLSConfigVersion version)
 Set highest allowed TLS version to use.
 
void AddCipherSuite (int ciphersuite)
 Add an allowed ciphersuite to the list of allowed ciphersuites.
 
void ClearCipherSuiteList ()
 Clears list of allowed ciphersuites.
 
void Dispose ()
 

Properties

bool AllowOnlyKnownCertificates [get, set]
 
bool ChainValidation [get, set]
 
bool SessionResumption [get, set]
 Enable or disable session resumption (enabled by default)
 
int SessionResumptionInterval [get, set]
 Get or set the session resumption interval in seconds.
 
bool TimeValidation [get, set]
 Verify validity of times in certificates and CRLs (default: true)
 

Detailed Description

A container for TLS configuration and certificates.

Constructor & Destructor Documentation

◆ TLSConfiguration()

IEC61850.TLS.TLSConfiguration.TLSConfiguration ( )

Member Function Documentation

◆ AddAllowedCertificate() [1/2]

void IEC61850.TLS.TLSConfiguration.AddAllowedCertificate ( string filename)

◆ AddAllowedCertificate() [2/2]

void IEC61850.TLS.TLSConfiguration.AddAllowedCertificate ( X509Certificate2 cert)

◆ AddCACertificate() [1/2]

void IEC61850.TLS.TLSConfiguration.AddCACertificate ( string filename)

◆ AddCACertificate() [2/2]

void IEC61850.TLS.TLSConfiguration.AddCACertificate ( X509Certificate2 cert)

◆ AddCipherSuite()

void IEC61850.TLS.TLSConfiguration.AddCipherSuite ( int ciphersuite)

Add an allowed ciphersuite to the list of allowed ciphersuites.

Version for .NET framework that does not support TlsCipherSuite enum

Parameters
ciphersuite

◆ AddCRL()

void IEC61850.TLS.TLSConfiguration.AddCRL ( string filename)

Add a CRL from a X509 CRL file.

Parameters
filenamethe name of the CRL file

◆ ClearCipherSuiteList()

void IEC61850.TLS.TLSConfiguration.ClearCipherSuiteList ( )

Clears list of allowed ciphersuites.

Returns

◆ Dispose()

void IEC61850.TLS.TLSConfiguration.Dispose ( )

◆ ResetCRL()

void IEC61850.TLS.TLSConfiguration.ResetCRL ( )

Removes any CRL (certificate revocation list) currently in use.

◆ SetClientMode()

void IEC61850.TLS.TLSConfiguration.SetClientMode ( )

◆ SetEventHandler()

void IEC61850.TLS.TLSConfiguration.SetEventHandler ( TLSEventHandler handler,
object parameter )

◆ SetMaxTlsVersion()

void IEC61850.TLS.TLSConfiguration.SetMaxTlsVersion ( TLSConfigVersion version)

Set highest allowed TLS version to use.

Parameters
versionhighest allowed TLS version

◆ SetMinTlsVersion()

void IEC61850.TLS.TLSConfiguration.SetMinTlsVersion ( TLSConfigVersion version)

Set minimal allowed TLS version to use.

Parameters
versionlowest allowed TLS version

◆ SetOwnCertificate() [1/2]

void IEC61850.TLS.TLSConfiguration.SetOwnCertificate ( string filename)

◆ SetOwnCertificate() [2/2]

void IEC61850.TLS.TLSConfiguration.SetOwnCertificate ( X509Certificate2 cert)

◆ SetOwnKey() [1/2]

void IEC61850.TLS.TLSConfiguration.SetOwnKey ( string filename,
string password = null )

Set own private key from file.

Parameters
filenameFilename of a DER or PEM private key file
passwordPassword in case the private key is password protected
Exceptions
CryptographicException

◆ SetOwnKey() [2/2]

void IEC61850.TLS.TLSConfiguration.SetOwnKey ( X509Certificate2 key,
string password )

◆ SetRenegotiationTime()

void IEC61850.TLS.TLSConfiguration.SetRenegotiationTime ( int timeInMs)

Set the TLS session renegotiation timeout.

Parameters
timeInMssession renegotiation timeout in milliseconds

Property Documentation

◆ AllowOnlyKnownCertificates

bool IEC61850.TLS.TLSConfiguration.AllowOnlyKnownCertificates
getset

◆ ChainValidation

bool IEC61850.TLS.TLSConfiguration.ChainValidation
getset

◆ SessionResumption

bool IEC61850.TLS.TLSConfiguration.SessionResumption
getset

Enable or disable session resumption (enabled by default)

◆ SessionResumptionInterval

int IEC61850.TLS.TLSConfiguration.SessionResumptionInterval
getset

Get or set the session resumption interval in seconds.

◆ TimeValidation

bool IEC61850.TLS.TLSConfiguration.TimeValidation
getset

Verify validity of times in certificates and CRLs (default: true)


The documentation for this class was generated from the following file: