Documentation ¶
Index ¶
- func LsaStrToString(s LsaString) string
- type AuthorizationData
- type AuthorizationDataEntry
- type EncKrbCredPart
- type EncTicketPart
- type EncryptedData
- type EncryptionKey
- type HostAddress
- type HostAddresses
- type KerbCryptoKey
- type KerbExternalTicket
- type KerbProtocolMessageType
- type KerbQueryTktCacheRequest
- type KerbQueryTktCacheResponse
- type KerbRetrieveTktRequest
- type KerbRetrieveTktResponse
- type KerbTicketCacheInfoEx
- type KrbCred
- type KrbCredInfo
- type KrbTicket
- type LogonSessionData
- type LogonType
- type LsaString
- type LsaStringOut
- type PrincipalName
- type SecurityHandle
- type SecurityLogonSessionData
- type SessionCred
- type Ticket
- type TicketFlags
- type TokenStatistics
- type TransitedEncoding
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func LsaStrToString ¶
Types ¶
type AuthorizationData ¶
type AuthorizationData []AuthorizationDataEntry
AuthorizationData implements RFC 4120 type: https://tools.ietf.org/html/rfc4120#section-5.2.6
type AuthorizationDataEntry ¶
type AuthorizationDataEntry struct { ADType int32 `asn1:"explicit,tag:0"` ADData []byte `asn1:"explicit,tag:1"` }
AuthorizationDataEntry implements RFC 4120 type: https://tools.ietf.org/html/rfc4120#section-5.2.6
type EncKrbCredPart ¶
type EncKrbCredPart struct { TicketInfo []KrbCredInfo `ans1:"explicit,tag:0"` Nonce int `ans1:"optional,explicit,tag:1"` Timestamp time.Time `asn1:"generalized,optional,explicit,tag:2"` Usec int `asn1:"optional,explicit,tag:3"` SrcAddress HostAddress `asn1:"optional,explicit,tag:4"` DstAddress HostAddress `asn1:"optional,explicit,tag:5"` }
type EncTicketPart ¶
type EncTicketPart struct { Flags asn1.BitString `asn1:"explicit,tag:0"` Key EncryptionKey `asn1:"explicit,tag:1"` CRealm string `asn1:"generalstring,explicit,tag:2"` CName PrincipalName `asn1:"explicit,tag:3"` Transited TransitedEncoding `asn1:"explicit,tag:4"` AuthTime time.Time `asn1:"generalized,explicit,tag:5"` StartTime time.Time `asn1:"generalized,explicit,optional,tag:6"` EndTime time.Time `asn1:"generalized,explicit,tag:7"` RenewTill time.Time `asn1:"generalized,explicit,optional,tag:8"` CAddr HostAddresses `asn1:"explicit,optional,tag:9"` AuthorizationData AuthorizationData `asn1:"explicit,optional,tag:10"` }
type EncryptedData ¶
type EncryptionKey ¶
type HostAddress ¶
type HostAddress struct {
// contains filtered or unexported fields
}
type HostAddresses ¶
type HostAddresses []HostAddress
type KerbCryptoKey ¶
type KerbExternalTicket ¶
type KerbExternalTicket struct { ServiceName uintptr TargetName uintptr ClientName uintptr DomainName LsaStringOut TargetDomainName LsaStringOut AltTargetDomainName LsaStringOut SessionKey KerbCryptoKey TicketFlags uint32 Flags uint32 KeyExpirationTime int64 StartTime int64 EndTime int64 RenewUntil int64 TimeSkew int64 EncodedTicketSize int32 EncodedTicket uintptr }
type KerbProtocolMessageType ¶
type KerbProtocolMessageType uint32
const ( KerbQueryTicketCacheExMessage KerbProtocolMessageType = 14 KerbRetrieveEncodedTicketMessage KerbProtocolMessageType = 8 )
type KerbQueryTktCacheRequest ¶
type KerbQueryTktCacheRequest struct { MessageType KerbProtocolMessageType LogonId windows.LUID // contains filtered or unexported fields }
type KerbQueryTktCacheResponse ¶
type KerbQueryTktCacheResponse struct { MessageType KerbProtocolMessageType CountOfTickets uint32 Tickets [1]KerbTicketCacheInfoEx }
type KerbRetrieveTktRequest ¶
type KerbRetrieveTktRequest struct { MessageType KerbProtocolMessageType LogonId windows.LUID TargetName LsaString TicketFlags uint32 CacheOptions uint32 EncryptionType int32 CredentialsHandle SecurityHandle }
type KerbRetrieveTktResponse ¶
type KerbRetrieveTktResponse struct {
Ticket KerbExternalTicket
}
type KerbTicketCacheInfoEx ¶
type KrbCred ¶
type KrbCred struct { PVNO int MsgType int Tickets []Ticket EncPart EncryptedData DecryptedEncPart EncKrbCredPart }
KrbCred is the actual type
type KrbCredInfo ¶
type KrbCredInfo struct { Key EncryptionKey `asn1:"explicit,tag:0"` PRealm string `asn1:"generalstring,optional,explicit,tag:1"` PName PrincipalName `asn1:"optional,explicit,tag:2"` Flags asn1.BitString `asn1:"optional,explicit,tag:3"` AuthTime time.Time `asn1:"generalized,optional,explicit,tag:4"` StartTime time.Time `asn1:"generalized,optional,explicit,tag:5"` EndTime time.Time `asn1:"generalized,optional,explicit,tag:6"` RenewTill time.Time `asn1:"generalized,optional,explicit,tag:7"` SRealm string `ans1:"optional,explicit,ia5,tag:8"` SName PrincipalName `asn1:"optional,explicit,tag:9"` CAddr HostAddresses `asn1:"optional,explicit,tag:10"` }
type LogonSessionData ¶
type LsaStringOut ¶
type PrincipalName ¶
type SecurityHandle ¶
type SessionCred ¶
type SessionCred struct { LogonSession LogonSessionData Tickets []KrbTicket }
type Ticket ¶
type Ticket struct { TktVNO int32 `asn1:"explicit,tag:0"` Realm string `asn1:"generalstring,explicit,tag:1"` SName PrincipalName `asn1:"explicit,tag:2"` EncPart EncryptedData `asn1:"explicit,tag:3"` DecryptedEncPart EncTicketPart `asn1:"optional"` }
type TicketFlags ¶
type TicketFlags int64
const ( TicketReserved TicketFlags = 0x80000000 TicketForwardable TicketFlags = 0x40000000 TicketForwarded TicketFlags = 0x20000000 TicketProxiable TicketFlags = 0x10000000 TicketProxy TicketFlags = 0x08000000 TicketMayPostdate TicketFlags = 0x04000000 TicketPostdated TicketFlags = 0x02000000 TicketInvalid TicketFlags = 0x01000000 TicketRenewable TicketFlags = 0x00800000 TicketInitial TicketFlags = 0x00400000 TicketPreAuthent TicketFlags = 0x00200000 TicketHWAuthent TicketFlags = 0x00100000 TicketOkAsDelegate TicketFlags = 0x00040000 TicketAnonymous TicketFlags = 0x00020000 TicketNameCanonicalize TicketFlags = 0x00010000 )
func (TicketFlags) String ¶
func (t TicketFlags) String() string
type TokenStatistics ¶
type TransitedEncoding ¶
Click to show internal directories.
Click to hide internal directories.