Documentation
¶
Overview ¶
Package auth provides authentication handlers for HTTP requests. It supports Basic, Digest, and AWS Signature v4 authentication schemes.
Index ¶
- func BuildDigestAuth(username, password, method, uri string, challenge DigestChallenge) string
- func DeleteAuthHeader(request *models.HttpRequest)
- func GenerateNonce() string
- func UpdateAuthHeader(request *models.HttpRequest, value string)
- type AWSSigner
- type DigestChallenge
- type DigestCredentials
- type Processor
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildDigestAuth ¶
func BuildDigestAuth(username, password, method, uri string, challenge DigestChallenge) string
BuildDigestAuth builds the digest auth response header value
func DeleteAuthHeader ¶
func DeleteAuthHeader(request *models.HttpRequest)
DeleteAuthHeader removes the Authorization header
func GenerateNonce ¶
func GenerateNonce() string
GenerateNonce generates a random nonce for auth purposes
func UpdateAuthHeader ¶
func UpdateAuthHeader(request *models.HttpRequest, value string)
UpdateAuthHeader updates or sets the Authorization header
Types ¶
type AWSSigner ¶
type AWSSigner struct {
AccessKeyID string
SecretAccessKey string
SessionToken string
Region string
Service string
}
AWSSigner implements AWS Signature v4
type DigestChallenge ¶
DigestChallenge holds parsed digest challenge from WWW-Authenticate header
func ParseDigestChallenge ¶
func ParseDigestChallenge(header string) DigestChallenge
ParseDigestChallenge parses the WWW-Authenticate header for digest auth
type DigestCredentials ¶
DigestCredentials stores digest auth credentials
type Processor ¶
type Processor struct {
// contains filtered or unexported fields
}
Processor handles authentication processing for HTTP requests
func NewProcessor ¶
func NewProcessor() *Processor
NewProcessor creates a new authentication processor
func (*Processor) GetDigestCredentials ¶
func (p *Processor) GetDigestCredentials(urlStr string) (DigestCredentials, bool)
GetDigestCredentials returns stored digest credentials for a URL
func (*Processor) ProcessAuth ¶
func (p *Processor) ProcessAuth(request *models.HttpRequest) error
ProcessAuth processes authentication headers in the request It returns nil if no auth processing is needed or on success.