Documentation ¶
Overview ¶
Package server implements an OpenID Connect server with federated logins.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct { Issuer string // The backing persistence layer. Storage storage.Storage // Strategies for federated identity. Connectors []Connector // Valid values are "code" to enable the code flow and "token" to enable the implicit // flow. If no response types are supplied this value defaults to "code". SupportedResponseTypes []string // If enabled, the server won't prompt the user to approve authorization requests. // Logging in implies approval. SkipApprovalScreen bool RotateKeysAfter time.Duration // Defaults to 6 hours. IDTokensValidFor time.Duration // Defaults to 24 hours GCFrequency time.Duration // Defaults to 5 minutes // If specified, the server will use this function for determining time. Now func() time.Time EnablePasswordDB bool Web WebConfig }
Config holds the server's configuration options.
Multiple servers using the same storage are expected to be configured identically.
type Connector ¶
Connector is a connector with metadata.
type Server ¶
type Server struct {
// contains filtered or unexported fields
}
Server is the top level object.
func NewServer ¶
NewServer constructs a server from the provided config.
type WebConfig ¶
type WebConfig struct { // A filepath to web static. // // It is expected to contain the following directories: // // * static - Static static served at "( issuer URL )/static". // * templates - HTML templates controlled by dex. // * themes/(theme) - Static static served at "( issuer URL )/theme". // Dir string // Defaults to "( issuer URL )/theme/logo.png" LogoURL string // Defaults to "dex" Issuer string // Defaults to "coreos" Theme string }
WebConfig holds the server's frontend templates and asset configuration.
These are currently very custom to CoreOS and it's not recommended that outside users attempt to customize these.
Click to show internal directories.
Click to hide internal directories.