diff --git a/secrets_manager/secrets_manager.go b/secrets_manager/secrets_manager.go index 0f41ef0db3b570e45172508a6dc34c44a86a9929..9a4e99bef62b2c34c1eda68ee61b3df7095a562c 100644 --- a/secrets_manager/secrets_manager.go +++ b/secrets_manager/secrets_manager.go @@ -28,6 +28,11 @@ type DatabaseCredentials struct { ReadOnlyHost string `json:"aurora_read_only_host"` } +type S3UploadCredentials struct { + AccessKeyID string `json:"accessKeyID"` + SecretKey string `json:"secretKey"` +} + var ( secretCache, _ = secretcache.New() secretManagerRegion = "af-south-1" @@ -47,23 +52,17 @@ func GetDatabaseCredentials(secretID string, isDebug bool) (DatabaseCredentials, func GetS3UploadCredentialsProvider(secretID string, isDebug bool) (credentials.StaticCredentialsProvider, error) { secret, _ := GetSecret(secretID, isDebug) - var secretValue map[string]string + var secretValue S3UploadCredentials err := struct_utils.UnmarshalJSON([]byte(secret), &secretValue) if err != nil { return credentials.StaticCredentialsProvider{}, err } - accessKeyID, ok := secretValue["AccessKeyID"] - if !ok { - return credentials.StaticCredentialsProvider{}, err - } - - secretKey, ok := secretValue["SecretKey"] - if !ok { + if secretValue.AccessKeyID == "" || secretValue.SecretKey == "" { return credentials.StaticCredentialsProvider{}, err } - return credentials.NewStaticCredentialsProvider(accessKeyID, secretKey, ""), nil + return credentials.NewStaticCredentialsProvider(secretValue.AccessKeyID, secretValue.SecretKey, ""), nil } func instantiateSecretManagerClient(isDebug bool) (err error) {