* fix(storage): Storage Assume Role Support This commit introduces fixes to enable operators to use AWS dynamic credentials on the storage side of this plugin, namely validation, improved credential lifecycle management to allow for storage buckets to be updated from static to dynamic credentials and vice versa, and a new way to determine credential types. It also introduces new tests for dynamic credential usage for the various functions. * fix(storage): Static rotated creds being deleted on plugin err On Storage Bucket update, when we determine if the credentials are to be updated to new ones, we call `credState.ReplaceCreds`. This call, if the old credentials were managed by us (rotated at create time), will delete the old credentials and set the new ones onto credState. We called this function without validating if the incoming credentials are valid. This could get the bucket in a state where where, while we'd return an update error if the incoming credentials weren't working with S3 (err in the dry run process that happens at the end of the update), we'd also silently delete the old credentials the bucket used, rendering the bucket completely broken. --------- Co-authored-by: Hugo <hugoamvieira@users.noreply.github.com>
66 lines
3.0 KiB
AMPL
66 lines
3.0 KiB
AMPL
module github.com/hashicorp/boundary-plugin-aws
|
|
|
|
go 1.20
|
|
|
|
require (
|
|
github.com/aws/aws-sdk-go v1.44.80
|
|
github.com/aws/aws-sdk-go-v2 v1.20.1
|
|
github.com/aws/aws-sdk-go-v2/service/ec2 v1.99.0
|
|
github.com/aws/aws-sdk-go-v2/service/iam v1.22.2
|
|
github.com/aws/aws-sdk-go-v2/service/s3 v1.38.2
|
|
github.com/aws/aws-sdk-go-v2/service/sts v1.21.2
|
|
github.com/aws/smithy-go v1.14.1
|
|
github.com/google/go-cmp v0.5.9
|
|
github.com/google/uuid v1.3.0
|
|
github.com/hashicorp/boundary/sdk v0.0.33
|
|
github.com/hashicorp/go-secure-stdlib/awsutil/v2 v2.0.0
|
|
github.com/hashicorp/terraform-json v0.14.0
|
|
github.com/mitchellh/mapstructure v1.5.0
|
|
github.com/stretchr/testify v1.8.4
|
|
google.golang.org/grpc v1.53.0
|
|
google.golang.org/protobuf v1.28.1
|
|
)
|
|
|
|
require (
|
|
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.12 // indirect
|
|
github.com/aws/aws-sdk-go-v2/config v1.18.33 // indirect
|
|
github.com/aws/aws-sdk-go-v2/credentials v1.13.32 // indirect
|
|
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.8 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.38 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.32 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/ini v1.3.39 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/v4a v1.1.1 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.13 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.33 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.32 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.15.1 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/sso v1.13.2 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.15.2 // indirect
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
|
github.com/fatih/color v1.14.1 // indirect
|
|
github.com/golang/protobuf v1.5.2 // indirect
|
|
github.com/hashicorp/errwrap v1.1.0 // indirect
|
|
github.com/hashicorp/eventlogger v0.1.2-0.20230428153751-cca445805f24 // indirect
|
|
github.com/hashicorp/eventlogger/filters/encrypt v0.1.8-0.20230428153751-cca445805f24 // indirect
|
|
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
|
github.com/hashicorp/go-hclog v1.5.0 // indirect
|
|
github.com/hashicorp/go-kms-wrapping/v2 v2.0.9 // indirect
|
|
github.com/hashicorp/go-multierror v1.1.1 // indirect
|
|
github.com/hashicorp/go-uuid v1.0.3 // indirect
|
|
github.com/hashicorp/go-version v1.5.0 // indirect
|
|
github.com/jmespath/go-jmespath v0.4.0 // indirect
|
|
github.com/mattn/go-colorable v0.1.13 // indirect
|
|
github.com/mattn/go-isatty v0.0.17 // indirect
|
|
github.com/mitchellh/copystructure v1.2.0 // indirect
|
|
github.com/mitchellh/pointerstructure v1.2.1 // indirect
|
|
github.com/mitchellh/reflectwalk v1.0.2 // indirect
|
|
github.com/pmezard/go-difflib v1.0.0 // indirect
|
|
github.com/zclconf/go-cty v1.10.0 // indirect
|
|
golang.org/x/crypto v0.8.0 // indirect
|
|
golang.org/x/net v0.9.0 // indirect
|
|
golang.org/x/sys v0.7.0 // indirect
|
|
golang.org/x/text v0.9.0 // indirect
|
|
google.golang.org/genproto v0.0.0-20230303212802-e74f57abe488 // indirect
|
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
|
)
|