Skip to content

Commit df53d6f

Browse files
authored
refactor(go-forwarder): delete FIPS-related logic (#1150)
1 parent b75208a commit df53d6f

12 files changed

Lines changed: 16 additions & 107 deletions

File tree

aws/logs_monitoring_go/cmd/forwarder/main.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@ func handleRequest(cfg *config.Config) func(ctx context.Context, event json.RawM
7171
Source: cfg.Source,
7272
Tags: cfg.Tags,
7373
S3MultilineLogRegex: cfg.S3MultilineLogRegex,
74-
UseFIPS: cfg.UseFIPS,
7574
}
7675

7776
forwarderCfg := forwarding.Config{
@@ -82,7 +81,7 @@ func handleRequest(cfg *config.Config) func(ctx context.Context, event json.RawM
8281

8382
var storage storing.Storage
8483
if cfg.StoreOnFail {
85-
storageOpts := storing.Options{FIPS: cfg.UseFIPS, S3Bucket: cfg.S3RetryBucketName}
84+
storageOpts := storing.Options{S3Bucket: cfg.S3RetryBucketName}
8685
if storage, err = storing.NewStorage(ctx, storageOpts); err != nil {
8786
return fmt.Errorf("new storage: %w", err)
8887
}

aws/logs_monitoring_go/internal/config/config.go

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ const (
2626
EnvURL = "DD_URL"
2727
EnvAPIURL = "DD_API_URL"
2828
EnvLogLevel = "DD_LOG_LEVEL"
29-
EnvUseFIPS = "DD_USE_FIPS"
3029
EnvPort = "DD_PORT"
3130
EnvUseHTTP = "DD_NO_SSL"
3231
EnvSkipServerCertificate = "DD_SKIP_SSL_VALIDATION"
@@ -52,7 +51,6 @@ type Config struct {
5251
IntakeURL string
5352
CompressionLevel int
5453
SkipServerCertificate bool
55-
UseFIPS bool
5654
Host string
5755
Source string
5856
Service string
@@ -118,8 +116,6 @@ func (c *Config) loadEnv() {
118116
c.IntakeURL = envOrDefault(EnvURL, protocol+"://http-intake.logs."+site+":"+port+"/api/v2/logs")
119117
c.APIURL = envOrDefault(EnvAPIURL, protocol+"://api."+site)
120118

121-
c.UseFIPS = envOrDefaultBool(EnvUseFIPS, false)
122-
123119
c.Source = envOrDefault(EnvSource, "")
124120
c.Host = envOrDefault(EnvHost, "")
125121

aws/logs_monitoring_go/internal/config/config_test.go

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,6 @@ func TestLoad(t *testing.T) {
3737
env: map[string]string{EnvSource: "custom", EnvHost: "my-host"},
3838
want: Config{IntakeURL: defaultURL, APIURL: defaultAPI, Source: "custom", Host: "my-host"},
3939
},
40-
"fips enabled": {
41-
env: map[string]string{EnvUseFIPS: "true"},
42-
want: Config{IntakeURL: defaultURL, APIURL: defaultAPI, UseFIPS: true},
43-
},
4440
"valid multiline regex": {
4541
env: map[string]string{EnvMultilineLogRegex: `\d{4}-\d{2}-\d{2}`},
4642
want: Config{IntakeURL: defaultURL, APIURL: defaultAPI},
@@ -70,7 +66,6 @@ func TestLoad(t *testing.T) {
7066
assert.Equal(t, tc.want.APIURL, got.APIURL)
7167
assert.Equal(t, tc.want.Source, got.Source)
7268
assert.Equal(t, tc.want.Host, got.Host)
73-
assert.Equal(t, tc.want.UseFIPS, got.UseFIPS)
7469
assert.Equal(t, tc.wantRegex, got.S3MultilineLogRegex != nil)
7570
})
7671
}

aws/logs_monitoring_go/internal/config/kms.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
)
1313

1414
func (c *Config) resolveAPIKeyFromKMS(ctx context.Context, ciphertext string) (string, error) {
15-
kmsClient, err := sdkclient.NewKMS(ctx, c.UseFIPS)
15+
kmsClient, err := sdkclient.NewKMS(ctx)
1616
if err != nil {
1717
return "", err
1818
}

aws/logs_monitoring_go/internal/config/secretsmanager.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
)
1313

1414
func (c *Config) resolveAPIKeyFromSecretsManager(ctx context.Context, arn string) (string, error) {
15-
smClient, err := sdkclient.NewSecretsManager(ctx, c.UseFIPS)
15+
smClient, err := sdkclient.NewSecretsManager(ctx)
1616
if err != nil {
1717
return "", err
1818
}

aws/logs_monitoring_go/internal/config/ssm.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
)
1313

1414
func (c *Config) resolveAPIKeyFromSSM(ctx context.Context, name string) (string, error) {
15-
ssmClient, err := sdkclient.NewSSM(ctx, c.UseFIPS)
15+
ssmClient, err := sdkclient.NewSSM(ctx)
1616
if err != nil {
1717
return "", err
1818
}

aws/logs_monitoring_go/internal/handling/handler.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ type Config struct {
2828
Source string
2929
Tags model.Tags
3030
S3MultilineLogRegex *regexp.Regexp
31-
UseFIPS bool
3231
}
3332

3433
func NewHandler(ctx context.Context, hcfg Config, scrubber *scrubbing.Scrubber, filterer *filtering.Filterer, ct parsing.ContentType) (Handler, error) {
@@ -38,7 +37,7 @@ func NewHandler(ctx context.Context, hcfg Config, scrubber *scrubbing.Scrubber,
3837
return newCloudwatch(&hcfg, scrubber, filterer), nil
3938

4039
case parsing.ContentTypeS3:
41-
client, err := sdkclient.GetS3(ctx, hcfg.UseFIPS)
40+
client, err := sdkclient.GetS3(ctx)
4241
if err != nil {
4342
return nil, err
4443
}

aws/logs_monitoring_go/internal/sdkclient/kms.go

Lines changed: 2 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,8 @@ import (
1111
"context"
1212
"encoding/base64"
1313
"fmt"
14-
"log/slog"
1514
"strings"
1615

17-
"github.com/aws/aws-sdk-go-v2/aws"
1816
awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
1917
awsconfig "github.com/aws/aws-sdk-go-v2/config"
2018
"github.com/aws/aws-sdk-go-v2/service/kms"
@@ -24,31 +22,13 @@ type KMS interface {
2422
Decrypt(ctx context.Context, params *kms.DecryptInput, optFns ...func(*kms.Options)) (*kms.DecryptOutput, error)
2523
}
2624

27-
func NewKMS(ctx context.Context, useFIPS bool) (KMS, error) {
25+
func NewKMS(ctx context.Context) (KMS, error) {
2826
cfg, err := awsconfig.LoadDefaultConfig(ctx, awsconfig.WithHTTPClient(awshttp.NewBuildableClient().WithTimeout(timeout)))
2927
if err != nil {
3028
return nil, err
3129
}
3230

33-
resolver := kms.NewDefaultEndpointResolverV2()
34-
params := kms.EndpointParameters{
35-
Region: aws.String(cfg.Region),
36-
UseFIPS: aws.Bool(useFIPS),
37-
}
38-
39-
endpoint, err := resolver.ResolveEndpoint(ctx, params)
40-
if err != nil && useFIPS {
41-
slog.Warn("FIPS endpoint not available, falling back to standard endpoint", slog.String("service", "kms"), slog.String("region", cfg.Region))
42-
params.UseFIPS = aws.Bool(false)
43-
endpoint, err = resolver.ResolveEndpoint(ctx, params)
44-
}
45-
if err != nil {
46-
return nil, fmt.Errorf("resolve endpoint: %w", err)
47-
}
48-
49-
return kms.NewFromConfig(cfg, func(o *kms.Options) {
50-
o.BaseEndpoint = aws.String(endpoint.URI.String())
51-
}), nil
31+
return kms.NewFromConfig(cfg), nil
5232
}
5333

5434
func DecryptKMSCiphertext(ctx context.Context, kmsClient KMS, ciphertext string) (string, error) {

aws/logs_monitoring_go/internal/sdkclient/s3.go

Lines changed: 4 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,9 @@ package sdkclient
99

1010
import (
1111
"context"
12-
"fmt"
13-
"log/slog"
1412
"sync"
1513
"time"
1614

17-
"github.com/aws/aws-sdk-go-v2/aws"
1815
awshttp "github.com/aws/aws-sdk-go-v2/aws/transport/http"
1916
awsconfig "github.com/aws/aws-sdk-go-v2/config"
2017
"github.com/aws/aws-sdk-go-v2/service/s3"
@@ -36,36 +33,18 @@ type S3 interface {
3633
DeleteObject(ctx context.Context, params *s3.DeleteObjectInput, optFns ...func(*s3.Options)) (*s3.DeleteObjectOutput, error)
3734
}
3835

39-
func GetS3(ctx context.Context, useFIPS bool) (S3, error) {
36+
func GetS3(ctx context.Context) (S3, error) {
4037
s3ClientOnce.Do(func() {
41-
s3Client, s3ClientErr = newS3(ctx, useFIPS)
38+
s3Client, s3ClientErr = newS3(ctx)
4239
})
4340
return s3Client, s3ClientErr
4441
}
4542

46-
func newS3(ctx context.Context, useFIPS bool) (S3, error) {
43+
func newS3(ctx context.Context) (S3, error) {
4744
cfg, err := awsconfig.LoadDefaultConfig(ctx, awsconfig.WithHTTPClient(awshttp.NewBuildableClient().WithTimeout(timeout)))
4845
if err != nil {
4946
return nil, err
5047
}
5148

52-
resolver := s3.NewDefaultEndpointResolverV2()
53-
params := s3.EndpointParameters{
54-
Region: aws.String(cfg.Region),
55-
UseFIPS: aws.Bool(useFIPS),
56-
}
57-
58-
endpoint, err := resolver.ResolveEndpoint(ctx, params)
59-
if err != nil && useFIPS {
60-
slog.Warn("FIPS endpoint not available, falling back to standard endpoint", slog.String("service", "s3"), slog.String("region", cfg.Region))
61-
params.UseFIPS = aws.Bool(false)
62-
endpoint, err = resolver.ResolveEndpoint(ctx, params)
63-
}
64-
if err != nil {
65-
return nil, fmt.Errorf("resolve endpoint: %w", err)
66-
}
67-
68-
return s3.NewFromConfig(cfg, func(o *s3.Options) {
69-
o.BaseEndpoint = aws.String(endpoint.URI.String())
70-
}), nil
49+
return s3.NewFromConfig(cfg), nil
7150
}

aws/logs_monitoring_go/internal/sdkclient/secrets_manager.go

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ package sdkclient
1010
import (
1111
"context"
1212
"fmt"
13-
"log/slog"
1413
"strings"
1514

1615
"github.com/aws/aws-sdk-go-v2/aws"
@@ -23,31 +22,13 @@ type SecretsManager interface {
2322
GetSecretValue(ctx context.Context, params *secretsmanager.GetSecretValueInput, optFns ...func(*secretsmanager.Options)) (*secretsmanager.GetSecretValueOutput, error)
2423
}
2524

26-
func NewSecretsManager(ctx context.Context, useFIPS bool) (SecretsManager, error) {
25+
func NewSecretsManager(ctx context.Context) (SecretsManager, error) {
2726
cfg, err := awsconfig.LoadDefaultConfig(ctx, awsconfig.WithHTTPClient(awshttp.NewBuildableClient().WithTimeout(timeout)))
2827
if err != nil {
2928
return nil, err
3029
}
3130

32-
resolver := secretsmanager.NewDefaultEndpointResolverV2()
33-
params := secretsmanager.EndpointParameters{
34-
Region: aws.String(cfg.Region),
35-
UseFIPS: aws.Bool(useFIPS),
36-
}
37-
38-
endpoint, err := resolver.ResolveEndpoint(ctx, params)
39-
if err != nil && useFIPS {
40-
slog.Warn("FIPS endpoint not available, falling back to standard endpoint", slog.String("service", "secretsmanager"), slog.String("region", cfg.Region))
41-
params.UseFIPS = aws.Bool(false)
42-
endpoint, err = resolver.ResolveEndpoint(ctx, params)
43-
}
44-
if err != nil {
45-
return nil, fmt.Errorf("resolve endpoint: %w", err)
46-
}
47-
48-
return secretsmanager.NewFromConfig(cfg, func(o *secretsmanager.Options) {
49-
o.BaseEndpoint = aws.String(endpoint.URI.String())
50-
}), nil
31+
return secretsmanager.NewFromConfig(cfg), nil
5132
}
5233

5334
func FetchSecret(ctx context.Context, smClient SecretsManager, arn string) (string, error) {

0 commit comments

Comments
 (0)