tls server
tls server
The tls server binding decodes encrypted TLS protocol on the inbound network stream, producing higher level cleartext application streams for each request.
tls_server:
type: tls
kind: server
vault: server
exit: default_server
options:
keys:
- localhost
sni:
- localhost
alpn:
- echo
routes:
- when:
- alpn: echo
exit: echo_serverConfiguration (* required)
vault
string
Vault name.
options
object
The tls specific options.
options:
keys:
- localhost
sni:
- localhost
alpn:
- echooptions.version
string
Protocol version.
options.keys
arrayofstring
A list of reference names for the Vault key.
options.trust
arrayofstring
A list of reference names for the Vault certificate.
options.signers
arrayofstring
A list of reference names for the Vault signer certificate.
options.trustcacerts
boolean
Trust CA certificates. When the this property is not explicitly set it will be automatically set to true if options.trust is null.
options.sni
arrayofstring
A list of the Server Name Indications.
options.alpn
arrayofstring
Application protocols.
options.mutual
enum[required,requested,none]
Mutual authentication. When the this property is not explicitly set it will be automatically set to none if options.trust is null, otherwise it will be set to required.
routes*
arrayofobject
Conditional tls specific routes.
routes:
- when:
- alpn: echo
exit: echo_serverroutes[].guarded
objectas map of namedarrayofstring
List of roles required by each named guard to authorize this route.
routes:
- guarded:
my_guard:
- read:itemsroutes[].when
arrayofobject
List of conditions (any match) to match this route. Read more: When a route matches
routes:
- when:
- alpn: echowhen[].authority
string
Associated authority.
when[].alpn
string
Application protocol.
when[].port
integer,string,array
Port number(s), including port number ranges.
routes[].exit
string
Next binding when following this route.
routes:
- when:
...
exit: echo_serverexit
string
Default exit binding when no conditional routes are viable.
exit: echo_servertelemetry
object
Defines the desired telemetry for the binding.
telemetry.metrics
array
Telemetry metrics to track
telemetry:
metrics:
- stream.*
