2017-11-09 11:16:03 +00:00
|
|
|
package tls
|
|
|
|
|
2019-03-14 08:30:04 +00:00
|
|
|
const certificateHeader = "-----BEGIN CERTIFICATE-----\n"
|
2017-11-09 11:16:03 +00:00
|
|
|
|
2017-11-10 09:30:04 +00:00
|
|
|
// ClientCA defines traefik CA files for a entryPoint
|
2019-06-17 09:48:05 +00:00
|
|
|
// and it indicates if they are mandatory or have just to be analyzed if provided.
|
2017-11-10 09:30:04 +00:00
|
|
|
type ClientCA struct {
|
2019-06-17 09:48:05 +00:00
|
|
|
Files []FileOrContent
|
2017-11-10 09:30:04 +00:00
|
|
|
Optional bool
|
|
|
|
}
|
|
|
|
|
2019-06-27 21:58:03 +00:00
|
|
|
// Options configures TLS for an entry point
|
|
|
|
type Options struct {
|
2019-03-14 08:30:04 +00:00
|
|
|
MinVersion string `export:"true"`
|
|
|
|
CipherSuites []string
|
|
|
|
ClientCA ClientCA
|
|
|
|
SniStrict bool `export:"true"`
|
|
|
|
}
|
|
|
|
|
|
|
|
// Store holds the options for a given Store
|
|
|
|
type Store struct {
|
2018-07-06 08:30:03 +00:00
|
|
|
DefaultCertificate *Certificate
|
2017-11-09 11:16:03 +00:00
|
|
|
}
|
|
|
|
|
2019-06-27 21:58:03 +00:00
|
|
|
// CertAndStores allows mapping a TLS certificate to a list of entry points.
|
|
|
|
type CertAndStores struct {
|
|
|
|
Certificate `yaml:",inline"`
|
2019-03-14 08:30:04 +00:00
|
|
|
Stores []string
|
2017-11-09 11:16:03 +00:00
|
|
|
}
|