From c1fab2061042be341470a1e191f9d1e4a791e4a4 Mon Sep 17 00:00:00 2001 From: Josh Powers Date: Tue, 2 Jan 2024 13:35:18 -0700 Subject: [PATCH 1/3] fix(common.kafka): Correctly set gssapi username/password fixes: #14514 --- plugins/common/kafka/sasl.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/common/kafka/sasl.go b/plugins/common/kafka/sasl.go index 4a7356aa88749..39f3ce5cc8011 100644 --- a/plugins/common/kafka/sasl.go +++ b/plugins/common/kafka/sasl.go @@ -34,12 +34,14 @@ func (k *SASLAuth) SetSASLConfig(cfg *sarama.Config) error { return fmt.Errorf("getting username failed: %w", err) } cfg.Net.SASL.User = username.String() + cfg.Net.SASL.GSSAPI.Username = username.String() username.Destroy() password, err := k.SASLPassword.Get() if err != nil { return fmt.Errorf("getting password failed: %w", err) } cfg.Net.SASL.Password = password.String() + cfg.Net.SASL.GSSAPI.Password = password.String() password.Destroy() if k.SASLMechanism != "" { @@ -58,8 +60,6 @@ func (k *SASLAuth) SetSASLConfig(cfg *sarama.Config) error { case sarama.SASLTypeGSSAPI: cfg.Net.SASL.GSSAPI.ServiceName = k.SASLGSSAPIServiceName cfg.Net.SASL.GSSAPI.AuthType = gssapiAuthType(k.SASLGSSAPIAuthType) - cfg.Net.SASL.GSSAPI.Username = username.String() - cfg.Net.SASL.GSSAPI.Password = password.String() cfg.Net.SASL.GSSAPI.DisablePAFXFAST = k.SASLGSSAPIDisablePAFXFAST cfg.Net.SASL.GSSAPI.KerberosConfigPath = k.SASLGSSAPIKerberosConfigPath cfg.Net.SASL.GSSAPI.KeyTabPath = k.SASLGSSAPIKeyTabPath From cd12bb4405240894e2d69e6e862f5abb5707dc0c Mon Sep 17 00:00:00 2001 From: Josh Powers Date: Tue, 2 Jan 2024 13:41:35 -0700 Subject: [PATCH 2/3] user defer instead --- plugins/common/kafka/sasl.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/plugins/common/kafka/sasl.go b/plugins/common/kafka/sasl.go index 39f3ce5cc8011..c5f963ea1dcc4 100644 --- a/plugins/common/kafka/sasl.go +++ b/plugins/common/kafka/sasl.go @@ -33,16 +33,15 @@ func (k *SASLAuth) SetSASLConfig(cfg *sarama.Config) error { if err != nil { return fmt.Errorf("getting username failed: %w", err) } + fmt.Println(username.String()) cfg.Net.SASL.User = username.String() - cfg.Net.SASL.GSSAPI.Username = username.String() - username.Destroy() + defer username.Destroy() password, err := k.SASLPassword.Get() if err != nil { return fmt.Errorf("getting password failed: %w", err) } cfg.Net.SASL.Password = password.String() - cfg.Net.SASL.GSSAPI.Password = password.String() - password.Destroy() + defer password.Destroy() if k.SASLMechanism != "" { cfg.Net.SASL.Mechanism = sarama.SASLMechanism(k.SASLMechanism) @@ -60,6 +59,8 @@ func (k *SASLAuth) SetSASLConfig(cfg *sarama.Config) error { case sarama.SASLTypeGSSAPI: cfg.Net.SASL.GSSAPI.ServiceName = k.SASLGSSAPIServiceName cfg.Net.SASL.GSSAPI.AuthType = gssapiAuthType(k.SASLGSSAPIAuthType) + cfg.Net.SASL.GSSAPI.Username = username.String() + cfg.Net.SASL.GSSAPI.Password = password.String() cfg.Net.SASL.GSSAPI.DisablePAFXFAST = k.SASLGSSAPIDisablePAFXFAST cfg.Net.SASL.GSSAPI.KerberosConfigPath = k.SASLGSSAPIKerberosConfigPath cfg.Net.SASL.GSSAPI.KeyTabPath = k.SASLGSSAPIKeyTabPath From 237852e0ad1dc7134f6cc9ea1e6f24d9c62d8ceb Mon Sep 17 00:00:00 2001 From: Josh Powers Date: Thu, 4 Jan 2024 06:37:43 -0700 Subject: [PATCH 3/3] remove print line --- plugins/common/kafka/sasl.go | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/common/kafka/sasl.go b/plugins/common/kafka/sasl.go index c5f963ea1dcc4..fc5f1f8e9ec90 100644 --- a/plugins/common/kafka/sasl.go +++ b/plugins/common/kafka/sasl.go @@ -33,7 +33,6 @@ func (k *SASLAuth) SetSASLConfig(cfg *sarama.Config) error { if err != nil { return fmt.Errorf("getting username failed: %w", err) } - fmt.Println(username.String()) cfg.Net.SASL.User = username.String() defer username.Destroy() password, err := k.SASLPassword.Get()