Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct { RA struct { cmd.ServiceConfig cmd.HostnamePolicyConfig RateLimitPoliciesFilename string `validate:"required"` MaxContactsPerRegistration int SAService *cmd.GRPCClientConfig VAService *cmd.GRPCClientConfig CAService *cmd.GRPCClientConfig OCSPService *cmd.GRPCClientConfig PublisherService *cmd.GRPCClientConfig AkamaiPurgerService *cmd.GRPCClientConfig Limiter struct { // Redis contains the configuration necessary to connect to Redis // for rate limiting. This field is required to enable rate // limiting. Redis *bredis.Config `validate:"required_with=Defaults"` // Defaults is a path to a YAML file containing default rate limits. // See: ratelimits/README.md for details. This field is required to // enable rate limiting. If any individual rate limit is not set, // that limit will be disabled. Limits passed in this file must be // identical to those in the WFE. // // Note: At this time, only the Failed Authorizations rate limit is // necessary in the RA. Defaults string `validate:"required_with=Redis"` // Overrides is a path to a YAML file containing overrides for the // default rate limits. See: ratelimits/README.md for details. If // this field is not set, all requesters will be subject to the // default rate limits. Overrides passed in this file must be // identical to those in the WFE. // // Note: At this time, only the Failed Authorizations overrides are // necessary in the RA. Overrides string } // MaxNames is the maximum number of subjectAltNames in a single cert. // The value supplied MUST be greater than 0 and no more than 100. These // limits are per section 7.1 of our combined CP/CPS, under "DV-SSL // Subscriber Certificate". The value must match the CA and WFE // configurations. MaxNames int `validate:"required,min=1,max=100"` // AuthorizationLifetimeDays defines how long authorizations will be // considered valid for. Given a value of 300 days when used with a 90-day // cert lifetime, this allows creation of certs that will cover a whole // year, plus a grace period of a month. AuthorizationLifetimeDays int `validate:"required,min=1,max=397"` // PendingAuthorizationLifetimeDays defines how long authorizations may be in // the pending state. If you can't respond to a challenge this quickly, then // you need to request a new challenge. PendingAuthorizationLifetimeDays int `validate:"required,min=1,max=29"` // GoodKey is an embedded config stanza for the goodkey library. GoodKey goodkey.Config // OrderLifetime is how far in the future an Order's expiration date should // be set when it is first created. OrderLifetime config.Duration // FinalizeTimeout is how long the RA is willing to wait for the Order // finalization process to take. This config parameter only has an effect // if the AsyncFinalization feature flag is enabled. Any systems which // manage the shutdown of an RA must be willing to wait at least this long // after sending the shutdown signal, to allow background goroutines to // complete. FinalizeTimeout config.Duration `validate:"-"` // CTLogs contains groupings of CT logs organized by what organization // operates them. When we submit precerts to logs in order to get SCTs, we // will submit the cert to one randomly-chosen log from each group, and use // the SCTs from the first two groups which reply. This allows us to comply // with various CT policies that require (for certs with short lifetimes // like ours) two SCTs from logs run by different operators. It also holds // a `Stagger` value controlling how long we wait for one operator group // to respond before trying a different one. CTLogs ctconfig.CTConfig // InformationalCTLogs are a set of CT logs we will always submit to // but won't ever use the SCTs from. This may be because we want to // test them or because they are not yet approved by a browser/root // program but we still want our certs to end up there. InformationalCTLogs []ctconfig.LogDescription // IssuerCerts are paths to all intermediate certificates which may have // been used to issue certificates in the last 90 days. These are used to // generate OCSP URLs to purge during revocation. IssuerCerts []string `validate:"min=1,dive,required"` Features features.Config } PA cmd.PAConfig Syslog cmd.SyslogConfig OpenTelemetry cmd.OpenTelemetryConfig }
Click to show internal directories.
Click to hide internal directories.