sasl

package
v3.64.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 23, 2022 License: MIT Imports: 10 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrUnsupportedSASLMechanism = errors.New("unsupported SASL mechanism")
)

SASL specific error types.

SHA256 generates the SHA256 hash

SHA512 generates the SHA512 hash

Functions

func FieldSpec

func FieldSpec() docs.FieldSpec

FieldSpec returns specs for SASL fields.

Types

type Config

type Config struct {
	Enabled     bool   `json:"enabled" yaml:"enabled"` // DEPRECATED
	Mechanism   string `json:"mechanism" yaml:"mechanism"`
	User        string `json:"user" yaml:"user"`
	Password    string `json:"password" yaml:"password"`
	AccessToken string `json:"access_token" yaml:"access_token"`
	TokenCache  string `json:"token_cache" yaml:"token_cache"`
	TokenKey    string `json:"token_key" yaml:"token_key"`
}

Config contains configuration for SASL based authentication. TODO: V4 Remove "enabled" and set a default mechanism

func NewConfig

func NewConfig() Config

NewConfig returns a new SASL config for Kafka with default values.

func (Config) Apply

func (s Config) Apply(mgr types.Manager, conf *sarama.Config) error

Apply applies the SASL authentication configuration to a Sarama config object.

type XDGSCRAMClient

type XDGSCRAMClient struct {
	*scram.Client
	*scram.ClientConversation
	scram.HashGeneratorFcn
}

XDGSCRAMClient represents struct to XDG Scram client to initialize conversation

func (*XDGSCRAMClient) Begin

func (x *XDGSCRAMClient) Begin(userName, password, authzID string) (err error)

Begin initializes new client and conversation to securely transmit the provided credentials to Kafka

func (*XDGSCRAMClient) Done

func (x *XDGSCRAMClient) Done() bool

Done returns true if the conversation is completed or has errored.

func (*XDGSCRAMClient) Step

func (x *XDGSCRAMClient) Step(challenge string) (response string, err error)

Step takes a string provided from a server (or just an empty string for the very first conversation step) and attempts to move the authentication conversation forward

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL