diff --git a/secrets_manager/secrets_manager.go b/secrets_manager/secrets_manager.go
index 9a4e99bef62b2c34c1eda68ee61b3df7095a562c..102e3517474d3ed524b5f505f609666608cf067c 100644
--- a/secrets_manager/secrets_manager.go
+++ b/secrets_manager/secrets_manager.go
@@ -51,15 +51,23 @@ func GetDatabaseCredentials(secretID string, isDebug bool) (DatabaseCredentials,
 }
 
 func GetS3UploadCredentialsProvider(secretID string, isDebug bool) (credentials.StaticCredentialsProvider, error) {
-	secret, _ := GetSecret(secretID, isDebug)
 	var secretValue S3UploadCredentials
-	err := struct_utils.UnmarshalJSON([]byte(secret), &secretValue)
-	if err != nil {
-		return credentials.StaticCredentialsProvider{}, err
+	if secretID != "" {
+		secret, _ := GetSecret(secretID, isDebug)
+		err := struct_utils.UnmarshalJSON([]byte(secret), &secretValue)
+		if err != nil {
+			return credentials.StaticCredentialsProvider{}, err
+		}
+	}
+
+	// Attempt to get credentials from the environment variables if not set in the secret
+	if secretValue.AccessKeyID == "" && secretValue.SecretKey == "" {
+		secretValue.AccessKeyID = os.Getenv("AWS_ACCESS_KEY")
+		secretValue.SecretKey = os.Getenv("AWS_SECRET_KEY")
 	}
 
 	if secretValue.AccessKeyID == "" || secretValue.SecretKey == "" {
-		return credentials.StaticCredentialsProvider{}, err
+		return credentials.StaticCredentialsProvider{}, nil
 	}
 
 	return credentials.NewStaticCredentialsProvider(secretValue.AccessKeyID, secretValue.SecretKey, ""), nil