package config

Import Path
	github.com/jcmturner/gokrb5/v8/config (on go.dev)

Dependency Relation
	imports 17 packages, and imported by 4 packages

Involved Source Files error.go hosts.go Package config implements KRB5 client and service configuration as described at https://web.mit.edu/kerberos/krb5-latest/doc/admin/conf_files/krb5_conf.html
Package-Level Type Names (total 6)
/* sort by: | */
Config represents the KRB5 configuration. DomainRealm DomainRealm LibDefaults LibDefaults Realms []Realm GetKDCs returns the count of KDCs available and a map of KDC host names keyed on preference order. GetKpasswdServers returns the count of kpasswd servers available and a map of kpasswd host names keyed on preference order. https://web.mit.edu/kerberos/krb5-latest/doc/admin/conf_files/krb5_conf.html#realms - see kpasswd_server section JSON return details of the config in a JSON format. ResolveRealm resolves the kerberos realm for the specified domain name from the domain to realm mapping. The most specific mapping is returned. func Load(cfgPath string) (*Config, error) func New() *Config func NewFromReader(r io.Reader) (*Config, error) func NewFromScanner(scanner *bufio.Scanner) (*Config, error) func NewFromString(s string) (*Config, error) func github.com/jcmturner/gokrb5/v8/client.NewFromCCache(c *credentials.CCache, krb5conf *Config, settings ...func(*client.Settings)) (*client.Client, error) func github.com/jcmturner/gokrb5/v8/client.NewWithKeytab(username, realm string, kt *keytab.Keytab, krb5conf *Config, settings ...func(*client.Settings)) *client.Client func github.com/jcmturner/gokrb5/v8/client.NewWithPassword(username, realm, password string, krb5conf *Config, settings ...func(*client.Settings)) *client.Client func github.com/jcmturner/gokrb5/v8/messages.NewASReq(realm string, c *Config, cname, sname types.PrincipalName) (messages.ASReq, error) func github.com/jcmturner/gokrb5/v8/messages.NewASReqForChgPasswd(realm string, c *Config, cname types.PrincipalName) (messages.ASReq, error) func github.com/jcmturner/gokrb5/v8/messages.NewASReqForTGT(realm string, c *Config, cname types.PrincipalName) (messages.ASReq, error) func github.com/jcmturner/gokrb5/v8/messages.NewTGSReq(cname types.PrincipalName, kdcRealm string, c *Config, tgt messages.Ticket, sessionKey types.EncryptionKey, sname types.PrincipalName, renewal bool) (messages.TGSReq, error) func github.com/jcmturner/gokrb5/v8/messages.NewUser2UserTGSReq(cname types.PrincipalName, kdcRealm string, c *Config, clientTGT messages.Ticket, sessionKey types.EncryptionKey, sname types.PrincipalName, renewal bool, verifyingTGT messages.Ticket) (messages.TGSReq, error) func github.com/jcmturner/gokrb5/v8/messages.(*ASRep).Verify(cfg *Config, creds *credentials.Credentials, asReq messages.ASReq) (bool, error) func github.com/jcmturner/gokrb5/v8/messages.(*TGSRep).Verify(cfg *Config, tgsReq messages.TGSReq) (bool, error) func github.com/jcmturner/gokrb5/v8/service.NewKRB5BasicAuthenticator(headerVal string, krb5conf *Config, serviceSettings *service.Settings, clientSettings *client.Settings) service.KRB5BasicAuthenticator
DomainRealm maps the domains to realms representing the [domain_realm] section of the configuration.
Invalid config error. Error implements the error interface for invalid config error. Invalid : error func InvalidErrorf(format string, a ...interface{}) Invalid
LibDefaults represents the [libdefaults] section of the configuration. // default false // default is 4. unlikely to implement older ap_req_checksum_type int //unlikely to support this // default false // max allowed skew in seconds, default 300 // default true // default false DNSLookupRealm bool Default_ccache_name string // default /tmp/krb5cc_%{uid} //Not implementing as will hold in memory // default /usr/local/var/krb5/user/%{euid}/client.keytab // default /etc/krb5.keytab DefaultRealm string // default aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 des3-cbc-sha1 arcfour-hmac-md5 camellia256-cts-cmac camellia128-cts-cmac des-cbc-crc des-cbc-md5 des-cbc-md4 // default aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 des3-cbc-sha1 arcfour-hmac-md5 camellia256-cts-cmac camellia128-cts-cmac des-cbc-crc des-cbc-md5 des-cbc-md4 // default aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 des3-cbc-sha1 arcfour-hmac-md5 camellia256-cts-cmac camellia128-cts-cmac des-cbc-crc des-cbc-md5 des-cbc-md4 // default aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 des3-cbc-sha1 arcfour-hmac-md5 camellia256-cts-cmac camellia128-cts-cmac des-cbc-crc des-cbc-md5 des-cbc-md4 // Not implementing yet // default false // default false // default false // default user's home directory. Must be owned by the user or root // default 0x00000010 (KDC_OPT_RENEWABLE_OK) // default 1 kdc_req_checksum_type int //unlikely to implement as for very old KDCs // default true PermittedEnctypeIDs []int32 // default aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96 des3-cbc-sha1 arcfour-hmac-md5 camellia256-cts-cmac camellia128-cts-cmac des-cbc-crc des-cbc-md5 des-cbc-md4 plugin_base_dir string //not supporting plugins // default “17, 16, 15, 14”, which forces libkrb5 to attempt to use PKINIT if it is supported // default false // default true // default -1 // default 0 // default 8 // default 1 day // 1 means to always use tcp. MIT krb5 has a default value of 1465, and it prevents user setting more than 32700. // default false
Realm represents an entry in the [realms] section of the configuration. AdminServer []string auth_to_local //Not implementing for now auth_to_local_names //Not implementing for now KDC []string // default admin_server:464 MasterKDC []string Realm string
UnsupportedDirective error. Error implements the error interface for unsupported directives. UnsupportedDirective : error
Package-Level Functions (total 6)
InvalidErrorf creates a new Invalid error.
Load the KRB5 configuration from the specified file path.
New creates a new config struct instance.
NewFromReader creates a new Config struct from an io.Reader.
NewFromScanner creates a new Config struct from a bufio.Scanner.
NewFromString creates a new Config struct from a string.
Package-Level Constants (only one)
WeakETypeList is a list of encryption types that have been deemed weak.