From fab2e5a41171702edd93e10232545119e086ee63 Mon Sep 17 00:00:00 2001 From: Sai Sunder Srinivasan Date: Tue, 9 Aug 2022 19:56:03 +0000 Subject: [PATCH 1/6] fix: remove leading and trailing whitespace from idtoken --- oauth2_http/java/com/google/auth/oauth2/IdToken.java | 1 + 1 file changed, 1 insertion(+) diff --git a/oauth2_http/java/com/google/auth/oauth2/IdToken.java b/oauth2_http/java/com/google/auth/oauth2/IdToken.java index ccd670bba..918bd9c35 100644 --- a/oauth2_http/java/com/google/auth/oauth2/IdToken.java +++ b/oauth2_http/java/com/google/auth/oauth2/IdToken.java @@ -77,6 +77,7 @@ public static IdToken create(String tokenValue) throws IOException { * @return returns com.google.auth.oauth2.IdToken */ public static IdToken create(String tokenValue, JsonFactory jsonFactory) throws IOException { + tokenValue = tokenValue.strip(); return new IdToken(tokenValue, JsonWebSignature.parse(jsonFactory, tokenValue)); } From ac3391a8d283e2d9109dbdc90abd17b7d5f67444 Mon Sep 17 00:00:00 2001 From: Sai Sunder Srinivasan Date: Tue, 9 Aug 2022 23:44:18 +0000 Subject: [PATCH 2/6] add import --- oauth2_http/java/com/google/auth/oauth2/IdToken.java | 1 + 1 file changed, 1 insertion(+) diff --git a/oauth2_http/java/com/google/auth/oauth2/IdToken.java b/oauth2_http/java/com/google/auth/oauth2/IdToken.java index 918bd9c35..580cea48d 100644 --- a/oauth2_http/java/com/google/auth/oauth2/IdToken.java +++ b/oauth2_http/java/com/google/auth/oauth2/IdToken.java @@ -38,6 +38,7 @@ import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; +import java.lang.String; import java.util.Date; import java.util.Objects; From a0493c7673ce6f06a3ae590cb5429757400da7ea Mon Sep 17 00:00:00 2001 From: Sai Sunder Srinivasan Date: Wed, 10 Aug 2022 00:00:50 +0000 Subject: [PATCH 3/6] strip to trim --- oauth2_http/java/com/google/auth/oauth2/IdToken.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oauth2_http/java/com/google/auth/oauth2/IdToken.java b/oauth2_http/java/com/google/auth/oauth2/IdToken.java index 580cea48d..41af8aadf 100644 --- a/oauth2_http/java/com/google/auth/oauth2/IdToken.java +++ b/oauth2_http/java/com/google/auth/oauth2/IdToken.java @@ -78,7 +78,7 @@ public static IdToken create(String tokenValue) throws IOException { * @return returns com.google.auth.oauth2.IdToken */ public static IdToken create(String tokenValue, JsonFactory jsonFactory) throws IOException { - tokenValue = tokenValue.strip(); + tokenValue = tokenValue.trim(); return new IdToken(tokenValue, JsonWebSignature.parse(jsonFactory, tokenValue)); } From 20ae5d1967b9c74db69858c1d09d642d391a5840 Mon Sep 17 00:00:00 2001 From: Sai Sunder Srinivasan Date: Wed, 10 Aug 2022 22:58:15 +0000 Subject: [PATCH 4/6] Add test for token with 0x20 --- oauth2_http/java/com/google/auth/oauth2/IdToken.java | 3 +-- .../javatests/com/google/auth/oauth2/IdTokenTest.java | 8 ++++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/oauth2_http/java/com/google/auth/oauth2/IdToken.java b/oauth2_http/java/com/google/auth/oauth2/IdToken.java index 41af8aadf..13ae564b2 100644 --- a/oauth2_http/java/com/google/auth/oauth2/IdToken.java +++ b/oauth2_http/java/com/google/auth/oauth2/IdToken.java @@ -38,7 +38,6 @@ import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; -import java.lang.String; import java.util.Date; import java.util.Objects; @@ -78,7 +77,7 @@ public static IdToken create(String tokenValue) throws IOException { * @return returns com.google.auth.oauth2.IdToken */ public static IdToken create(String tokenValue, JsonFactory jsonFactory) throws IOException { - tokenValue = tokenValue.trim(); + // tokenValue = tokenValue.trim().replaceAll("^0x20", ""); return new IdToken(tokenValue, JsonWebSignature.parse(jsonFactory, tokenValue)); } diff --git a/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java b/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java index 14c94995e..f90326be1 100644 --- a/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java +++ b/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java @@ -49,6 +49,8 @@ public class IdTokenTest extends BaseSerializationTest { "eyJhbGciOiJSUzI1NiIsImtpZCI6IjM0OTRiMWU3ODZjZGFkMDkyZTQyMzc2NmJiZTM3ZjU0ZWQ4N2IyMmQiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhdWQiOiJodHRwczovL2Zvby5iYXIiLCJhenAiOiJzdmMtMi00MjlAbWluZXJhbC1taW51dGlhLTgyMC5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIsInN1YiI6IjEwMDE0NzEwNjk5Njc2NDQ3OTA4NSIsImVtYWlsIjoic3ZjLTItNDI5QG1pbmVyYWwtbWludXRpYS04MjAuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaWF0IjoxNTY1Mzg3NTM4LCJleHAiOjE1NjUzOTExMzh9.foo"; private static final String TOKEN_2 = "eyJhbGciOiJSUzI1NiIsImtpZCI6IjM0OTRiMWU3ODZjZGFkMDkyZTQyMzc2NmJiZTM3ZjU0ZWQ4N2IyMmQiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL2FjY291bnRzLmdvb2dsZS5jb20iLCJhdWQiOiJodHRwczovL2Jhci5mb28iLCJhenAiOiJzdmMtMi00MjlAbWluZXJhbC1taW51dGlhLTgyMC5pYW0uZ3NlcnZpY2VhY2NvdW50LmNvbSIsInN1YiI6IjEwMDE0NzEwNjk5Njc2NDQ3OTA4NSIsImVtYWlsIjoic3ZjLTItNDI5QG1pbmVyYWwtbWludXRpYS04MjAuaWFtLmdzZXJ2aWNlYWNjb3VudC5jb20iLCJlbWFpbF92ZXJpZmllZCI6dHJ1ZSwiaWF0IjoxNTY1Mzg4NjM0LCJleHAiOjE1NjUzOTIyMzR9.foo"; + private static final String TOKEN_WITH_0x20 = + "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJPbmxpbmUgSldUIEJ1aWxkZXIiLCJpYXQiOjE2NjAxNjMxNjAsImV4cCI6MTY5MTY5OTE2MCwiYXVkIjoid3d3LmV4YW1wbGUuY29tIiwic3ViIjoianJvY2tldEBleGFtcGxlLmNvbSIsIkdpdmVuTmFtZSI6ImFibTHag3M0x20ifQ.foo"; private static final Date EXPIRATION_DATE = new Date((long) 1565391138 * 1000); @Test @@ -99,4 +101,10 @@ public void serialize() throws IOException, ClassNotFoundException { assertEquals(accessToken.hashCode(), deserializedAccessToken.hashCode()); assertEquals(accessToken.toString(), deserializedAccessToken.toString()); } + + @Test + void token_with_0x20() throws IOException { + IdToken accessToken = IdToken.create(TOKEN_WITH_0x20); + assertEquals(TOKEN_WITH_0x20, accessToken.getTokenValue()); + } } From 47fcfccf19fbe0f3d192256759eade25deb4aa0d Mon Sep 17 00:00:00 2001 From: Sai Sunder Srinivasan Date: Wed, 10 Aug 2022 23:35:19 +0000 Subject: [PATCH 5/6] remove commented line --- oauth2_http/java/com/google/auth/oauth2/IdToken.java | 1 - 1 file changed, 1 deletion(-) diff --git a/oauth2_http/java/com/google/auth/oauth2/IdToken.java b/oauth2_http/java/com/google/auth/oauth2/IdToken.java index 13ae564b2..ccd670bba 100644 --- a/oauth2_http/java/com/google/auth/oauth2/IdToken.java +++ b/oauth2_http/java/com/google/auth/oauth2/IdToken.java @@ -77,7 +77,6 @@ public static IdToken create(String tokenValue) throws IOException { * @return returns com.google.auth.oauth2.IdToken */ public static IdToken create(String tokenValue, JsonFactory jsonFactory) throws IOException { - // tokenValue = tokenValue.trim().replaceAll("^0x20", ""); return new IdToken(tokenValue, JsonWebSignature.parse(jsonFactory, tokenValue)); } From b030b6d36d50404b2e367ba6e26e78d2ba7d7a92 Mon Sep 17 00:00:00 2001 From: Sai Sunder Srinivasan Date: Thu, 11 Aug 2022 17:55:28 +0000 Subject: [PATCH 6/6] public test --- oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java b/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java index f90326be1..a8831a21b 100644 --- a/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java +++ b/oauth2_http/javatests/com/google/auth/oauth2/IdTokenTest.java @@ -103,7 +103,7 @@ public void serialize() throws IOException, ClassNotFoundException { } @Test - void token_with_0x20() throws IOException { + public void token_with_0x20() throws IOException { IdToken accessToken = IdToken.create(TOKEN_WITH_0x20); assertEquals(TOKEN_WITH_0x20, accessToken.getTokenValue()); }