Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Box ¶
type Box struct {
Name string
IP string
// Internal use but not in config file
Runners []checks.Runner `toml:"-" json:"-"`
// Service check definitions
Custom []*checks.Custom `toml:"Custom,omitempty" json:"custom,omitempty"`
Dns []*checks.Dns `toml:"Dns,omitempty" json:"dns,omitempty"`
Ftp []*checks.Ftp `toml:"Ftp,omitempty" json:"ftp,omitempty"`
Imap []*checks.Imap `toml:"Imap,omitempty" json:"imap,omitempty"`
Ldap []*checks.Ldap `toml:"Ldap,omitempty" json:"ldap,omitempty"`
Ping []*checks.Ping `toml:"Ping,omitempty" json:"ping,omitempty"`
Pop3 []*checks.Pop3 `toml:"Pop3,omitempty" json:"pop3,omitempty"`
Rdp []*checks.Rdp `toml:"Rdp,omitempty" json:"rdp,omitempty"`
Smb []*checks.Smb `toml:"Smb,omitempty" json:"smb,omitempty"`
Smtp []*checks.Smtp `toml:"Smtp,omitempty" json:"smtp,omitempty"`
Sql []*checks.Sql `toml:"Sql,omitempty" json:"sql,omitempty"`
Ssh []*checks.Ssh `toml:"Ssh,omitempty" json:"ssh,omitempty"`
Tcp []*checks.Tcp `toml:"Tcp,omitempty" json:"tcp,omitempty"`
Vnc []*checks.Vnc `toml:"Vnc,omitempty" json:"vnc,omitempty"`
Web []*checks.Web `toml:"Web,omitempty" json:"web,omitempty"`
WinRM []*checks.WinRM `toml:"Winrm,omitempty" json:"winrm,omitempty"`
}
type ConfigSettings ¶
type ConfigSettings struct {
// General engine settings
RequiredSettings RequiredConfig `toml:"RequiredSettings,omitempty" json:"RequiredSettings,omitempty"`
// Credlists settings
CredlistSettings CredlistConfig `toml:"CredlistSettings,omitempty" json:"CredlistSettings,omitempty"`
// LDAP settings
LdapSettings LdapAuthConfig `toml:"LdapSettings,omitempty" json:"LdapSettings,omitempty"`
// OIDC settings
OIDCSettings OIDCAuthConfig `toml:"OIDCSettings,omitempty" json:"OIDCSettings,omitempty"`
// Optional settings
SslSettings SslConfig `toml:"SslSettings,omitempty" json:"SslSettings,omitempty"`
MiscSettings MiscConfig `toml:"MiscSettings,omitempty" json:"MiscSettings,omitempty"`
// Restrict information
UISettings UIConfig `toml:"UISettings,omitempty" json:"UISettings,omitempty"`
// Inject schedule settings
InjectSettings InjectConfig `toml:"InjectSettings,omitempty" json:"InjectSettings,omitempty"`
Admin []Admin
Red []Red
Team []Team
Inject []Inject
Box []Box
}
func (*ConfigSettings) AllChecks ¶
func (conf *ConfigSettings) AllChecks() []checks.Runner
Returns a flat list of all checks across all boxes.
func (*ConfigSettings) CompetitionStart ¶
func (conf *ConfigSettings) CompetitionStart() (time.Time, error)
func (*ConfigSettings) SetConfig ¶
func (conf *ConfigSettings) SetConfig(path string) error
Load in a config
func (*ConfigSettings) WatchConfig ¶
func (conf *ConfigSettings) WatchConfig(path string) error
WatchConfig watches for changes to the config file
type CredlistConfig ¶
type CredlistConfig struct {
Credlist []Credlist `toml:"Credlist,omitempty" json:"Credlist,omitempty"`
}
type InjectConfig ¶
type LdapAuthConfig ¶
type MiscConfig ¶
type OIDCAuthConfig ¶
type OIDCAuthConfig struct {
// Provider Configuration
OIDCEnabled bool
OIDCIssuerURL string
OIDCClientID string
OIDCClientSecret string
OIDCRedirectURL string
// Security Settings
OIDCScopes []string
// Group Mapping
OIDCGroupClaim string
OIDCAdminGroups []string
OIDCRedGroups []string
OIDCTeamGroups []string
OIDCInjectGroups []string
// Token Expiration Settings (in seconds)
OIDCRefreshTokenExpiryTeam int
OIDCRefreshTokenExpiryAdmin int
OIDCRefreshTokenExpiryRed int
OIDCRefreshTokenExpiryInject int
// UI Settings
OIDCDisableLocalLogin bool
}
type RequiredConfig ¶
Click to show internal directories.
Click to hide internal directories.