From 631741df96a6dddd31a38dce099f3d3ff09ca7cf Mon Sep 17 00:00:00 2001 From: JesseLovelace <43148100+JesseLovelace@users.noreply.github.com> Date: Tue, 25 Jan 2022 12:34:35 -0800 Subject: [PATCH] fix: Remove post policy v4 client side validation (#1210) --- .../google/cloud/storage/PostPolicyV4.java | 31 ------------------- .../cloud/storage/PostPolicyV4Test.java | 24 -------------- 2 files changed, 55 deletions(-) diff --git a/google-cloud-storage/src/main/java/com/google/cloud/storage/PostPolicyV4.java b/google-cloud-storage/src/main/java/com/google/cloud/storage/PostPolicyV4.java index 4abcb4fd3..2cd231147 100644 --- a/google-cloud-storage/src/main/java/com/google/cloud/storage/PostPolicyV4.java +++ b/google-cloud-storage/src/main/java/com/google/cloud/storage/PostPolicyV4.java @@ -21,11 +21,9 @@ import java.net.URI; import java.net.URISyntaxException; import java.text.SimpleDateFormat; -import java.util.Arrays; import java.util.Collections; import java.util.HashMap; import java.util.LinkedHashSet; -import java.util.List; import java.util.Map; import java.util.Objects; import java.util.Set; @@ -54,7 +52,6 @@ private PostPolicyV4(String url, Map fields) { } catch (URISyntaxException e) { throw new IllegalArgumentException(e); } - PostFieldsV4.validateFields(fields); this.url = url; this.fields = Collections.unmodifiableMap(fields); @@ -93,40 +90,12 @@ public Map getFields() { */ public static final class PostFieldsV4 { private final Map fieldsMap; - private static final List VALID_FIELDS = - Arrays.asList( - "acl", - "bucket", - "cache-control", - "content-disposition", - "content-encoding", - "content-type", - "expires", - "file", - "key", - "policy", - "success_action_redirect", - "success_action_status", - "x-goog-algorithm", - "x-goog-credential", - "x-goog-date", - "x-goog-signature"); - - private static void validateFields(Map fields) { - for (String key : fields.keySet()) { - if (!VALID_FIELDS.contains(key.toLowerCase()) - && !key.startsWith(Builder.CUSTOM_FIELD_PREFIX)) { - throw new IllegalArgumentException("Invalid key: " + key); - } - } - } private PostFieldsV4(Builder builder) { this(builder.fieldsMap); } private PostFieldsV4(Map fields) { - validateFields(fields); this.fieldsMap = Collections.unmodifiableMap(fields); } diff --git a/google-cloud-storage/src/test/java/com/google/cloud/storage/PostPolicyV4Test.java b/google-cloud-storage/src/test/java/com/google/cloud/storage/PostPolicyV4Test.java index eed13cd3e..6d7946cd8 100644 --- a/google-cloud-storage/src/test/java/com/google/cloud/storage/PostPolicyV4Test.java +++ b/google-cloud-storage/src/test/java/com/google/cloud/storage/PostPolicyV4Test.java @@ -98,36 +98,12 @@ public void testPostPolicyV4_ofMalformedURL() { } } - @Test - public void testPostPolicyV4_ofInvalidField() { - Map fields = new HashMap<>(ALL_FIELDS); - fields.put("$file", "file.txt"); - try { - PostPolicyV4.of("http://google.com", fields); - fail(); - } catch (IllegalArgumentException e) { - assertEquals("Invalid key: $file", e.getMessage()); - } - } - @Test public void testPostFieldsV4_of() { PostPolicyV4.PostFieldsV4 fields = PostPolicyV4.PostFieldsV4.of(ALL_FIELDS); assertMapsEquals(ALL_FIELDS, fields.getFieldsMap()); } - @Test - public void testPostFieldsV4_ofInvalidField() { - Map map = new HashMap<>(); - map.put("$file", "file.txt"); - try { - PostPolicyV4.PostFieldsV4.of(map); - fail(); - } catch (IllegalArgumentException e) { - assertEquals("Invalid key: $file", e.getMessage()); - } - } - @Test public void testPostPolicyV4_builder() { PostPolicyV4.PostFieldsV4.Builder builder = PostPolicyV4.PostFieldsV4.newBuilder();