struct

ECS::LogEntry::Tls::Client

Inherits JSON::Serializable < Struct < Value < Object

Constructors

new(pull : JSON::PullParser)
Source
new

Initialize all values as nil

Source
new(*, __pull_for_json_serializable pull : JSON::PullParser)
Source

Instance methods

certificate(new_value : String)

A chainable setter for certificate

Source
certificate

tls.client.certificate

PEM-encoded stand-alone certificate offered by the client. This is usually mutually-exclusive of client.certificate_chain since this value also exists in that list.

Level: Extended Type: Keyword Example:

MII...
Source
certificate=(certificate : String | Nil)

tls.client.certificate

PEM-encoded stand-alone certificate offered by the client. This is usually mutually-exclusive of client.certificate_chain since this value also exists in that list.

Level: Extended Type: Keyword Example:

MII...
Source
certificate_chain(new_value : String)

A chainable setter for certificate_chain

Source
certificate_chain

tls.client.certificate_chain

Array of PEM-encoded certificates that make up the certificate chain offered by the client. This is usually mutually-exclusive of client.certificate since that value should be the first certificate in the chain.

Level: Extended Type: Keyword Example:

["MII...", "MII..."]
Source
certificate_chain=(certificate_chain : String | Nil)

tls.client.certificate_chain

Array of PEM-encoded certificates that make up the certificate chain offered by the client. This is usually mutually-exclusive of client.certificate since that value should be the first certificate in the chain.

Level: Extended Type: Keyword Example:

["MII...", "MII..."]
Source
hash(value : Hash)

A chainable setter for hash

Source
hash

Generates an UInt64 hash value for this object.

This method must have the property that a == b implies a.hash == b.hash.

The hash value is used along with == by the Hash class to determine if two objects reference the same hash key.

Subclasses must not override this method. Instead, they must define hash(hasher), though usually the macro def_hash can be used to generate this method.

Source
hash

Initialize a new Hash, yield it to the block

Source
hash=(hash : Hash | Nil)
Source
issuer(new_value : String)

A chainable setter for issuer

Source
issuer

tls.client.issuer

Distinguished name of subject of the issuer of the x.509 certificate presented by the client.

Level: Extended Type: Keyword Example:

CN=MyDomain Root CA, OU=Infrastructure Team, DC=mydomain, DC=com
Source
issuer=(issuer : String | Nil)

tls.client.issuer

Distinguished name of subject of the issuer of the x.509 certificate presented by the client.

Level: Extended Type: Keyword Example:

CN=MyDomain Root CA, OU=Infrastructure Team, DC=mydomain, DC=com
Source
ja3(new_value : String)

A chainable setter for ja3

Source
ja3

tls.client.ja3

A hash that identifies clients based on how they perform an SSL/TLS handshake.

Level: Extended Type: Keyword Example:

d4e5b18d6b55c71272893221c96ba240
Source
ja3=(ja3 : String | Nil)

tls.client.ja3

A hash that identifies clients based on how they perform an SSL/TLS handshake.

Level: Extended Type: Keyword Example:

d4e5b18d6b55c71272893221c96ba240
Source
not_after(new_value : Time)

A chainable setter for not_after

Source
not_after

tls.client.not_after

Date/Time indicating when client certificate is no longer considered valid.

Level: Extended Type: Date Example:

2021-01-01T00:00:00.000Z
Source
not_after=(not_after : Time | Nil)

tls.client.not_after

Date/Time indicating when client certificate is no longer considered valid.

Level: Extended Type: Date Example:

2021-01-01T00:00:00.000Z
Source
not_before(new_value : Time)

A chainable setter for not_before

Source
not_before

tls.client.not_before

Date/Time indicating when client certificate is first considered valid.

Level: Extended Type: Date Example:

1970-01-01T00:00:00.000Z
Source
not_before=(not_before : Time | Nil)

tls.client.not_before

Date/Time indicating when client certificate is first considered valid.

Level: Extended Type: Date Example:

1970-01-01T00:00:00.000Z
Source
server_name(new_value : String)

A chainable setter for server_name

Source
server_name

tls.client.server_name

Also called an SNI, this tells the server which hostname to which the client is attempting to connect. When this value is available, it should get copied to destination.domain.

Level: Extended Type: Keyword Example:

www.elastic.co
Source
server_name=(server_name : String | Nil)

tls.client.server_name

Also called an SNI, this tells the server which hostname to which the client is attempting to connect. When this value is available, it should get copied to destination.domain.

Level: Extended Type: Keyword Example:

www.elastic.co
Source
subject(new_value : String)

A chainable setter for subject

Source
subject

tls.client.subject

Distinguished name of subject of the x.509 certificate presented by the client.

Level: Extended Type: Keyword Example:

CN=myclient, OU=Documentation Team, DC=mydomain, DC=com
Source
subject=(subject : String | Nil)

tls.client.subject

Distinguished name of subject of the x.509 certificate presented by the client.

Level: Extended Type: Keyword Example:

CN=myclient, OU=Documentation Team, DC=mydomain, DC=com
Source
supported_ciphers(new_value : String)

A chainable setter for supported_ciphers

Source
supported_ciphers

tls.client.supported_ciphers

Array of ciphers offered by the client during the client hello.

Level: Extended Type: Keyword Example:

["TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", "..."]
Source
supported_ciphers=(supported_ciphers : String | Nil)

tls.client.supported_ciphers

Array of ciphers offered by the client during the client hello.

Level: Extended Type: Keyword Example:

["TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384", "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384", "..."]
Source
x509(value : X509)

A chainable setter for x509

Source
x509
Source
x509

Initialize a new X509, yield it to the block

Source
x509=(x509 : X509 | Nil)
Source

Nested types