Documentation ¶
Overview ¶
Package keytab implements Kerberos keytabs: https://web.mit.edu/kerberos/krb5-devel/doc/formats/keytab_file_format.html.
Index ¶
- type Keytab
- func (kt *Keytab) AddEntriesByKeyList(principalName, realms string, ts time.Time, KVNO uint32, ...) error
- func (kt *Keytab) AddEntry(principalName, realm, password string, ts time.Time, KVNO uint8, encType int32) error
- func (kt *Keytab) AddEntryExtendedKVNO(principalName, realm, password string, ts time.Time, KVNO uint32, ...) error
- func (kt *Keytab) GetEncryptionKey(princName types.PrincipalName, realm string, kvno int, etype int32) (types.EncryptionKey, int, error)
- func (kt *Keytab) JSON() (string, error)
- func (kt *Keytab) Marshal() ([]byte, error)
- func (kt Keytab) String() string
- func (kt *Keytab) Unmarshal(b []byte) error
- func (kt *Keytab) Write(w io.Writer) (int, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Keytab ¶
type Keytab struct { Entries []entry // contains filtered or unexported fields }
Keytab struct.
func (*Keytab) AddEntriesByKeyList ¶
func (kt *Keytab) AddEntriesByKeyList(principalName, realms string, ts time.Time, KVNO uint32, keys []types.EncryptionKey) error
AddEntriesByKeyList добавляет несколько сущностей в keytab по списку заранее сгенерированных ключей. todo: Функция является доработанной версией функции AddEntry, при обновлениях необходимо следить за изменением кода оригинальной функции
func (*Keytab) AddEntry ¶
func (kt *Keytab) AddEntry(principalName, realm, password string, ts time.Time, KVNO uint8, encType int32) error
AddEntry adds an entry to the keytab. The password should be provided in plain text and it will be converted using the defined enctype to be stored.
func (*Keytab) AddEntryExtendedKVNO ¶
func (kt *Keytab) AddEntryExtendedKVNO(principalName, realm, password string, ts time.Time, KVNO uint32, encType int32) error
AddEntryExtendedKVNO Добавляет сущность в keytab. Пароль в виде текста будет преобразован с использованием указанного шифрования. todo: Функция является изменённым клоном функции AddEntry, при обновлениях необходимо следить за изменением кода оригинальной функции
func (*Keytab) GetEncryptionKey ¶
func (kt *Keytab) GetEncryptionKey(princName types.PrincipalName, realm string, kvno int, etype int32) (types.EncryptionKey, int, error)
GetEncryptionKey returns the EncryptionKey from the Keytab for the newest entry with the required kvno, etype and matching principal. If the kvno is zero then the latest kvno will be returned. The kvno is also returned for