Skip to content

Commit 9b5c4fa

Browse files
authored
fix(bqjdbc): add default OAuth client id/secret (#12946)
1 parent 1d7a6cf commit 9b5c4fa

3 files changed

Lines changed: 24 additions & 2 deletions

File tree

java-bigquery/google-cloud-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/BigQueryJdbcUrlUtility.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,8 @@ protected boolean removeEldestEntry(Map.Entry<String, Map<String, String>> eldes
102102
static final String OAUTH_REFRESH_TOKEN_PROPERTY_NAME = "OAuthRefreshToken";
103103
static final String OAUTH_CLIENT_ID_PROPERTY_NAME = "OAuthClientId";
104104
static final String OAUTH_CLIENT_SECRET_PROPERTY_NAME = "OAuthClientSecret";
105+
static final String DEFAULT_OAUTH_CLIENT_ID = "977385342095.apps.googleusercontent.com";
106+
static final String DEFAULT_OAUTH_CLIENT_SECRET = "wbER7576mc_1YOII0dGk7jEE";
105107
static final String ENABLE_HTAPI_PROPERTY_NAME = "EnableHighThroughputAPI";
106108
static final String PROXY_HOST_PROPERTY_NAME = "ProxyHost";
107109
static final String PROXY_PORT_PROPERTY_NAME = "ProxyPort";

java-bigquery/google-cloud-bigquery-jdbc/src/main/java/com/google/cloud/bigquery/jdbc/DataSource.java

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -960,15 +960,19 @@ public void setDestinationDatasetExpirationTime(long destinationDatasetExpiratio
960960
}
961961

962962
public String getOAuthClientId() {
963-
return oAuthClientId;
963+
return oAuthClientId != null && !oAuthClientId.trim().isEmpty()
964+
? oAuthClientId
965+
: BigQueryJdbcUrlUtility.DEFAULT_OAUTH_CLIENT_ID;
964966
}
965967

966968
public void setOAuthClientId(String oAuthClientId) {
967969
this.oAuthClientId = oAuthClientId;
968970
}
969971

970972
public String getOAuthClientSecret() {
971-
return oAuthClientSecret;
973+
return oAuthClientSecret != null && !oAuthClientSecret.trim().isEmpty()
974+
? oAuthClientSecret
975+
: BigQueryJdbcUrlUtility.DEFAULT_OAUTH_CLIENT_SECRET;
972976
}
973977

974978
public void setOAuthClientSecret(String oAuthClientSecret) {

java-bigquery/google-cloud-bigquery-jdbc/src/test/java/com/google/cloud/bigquery/jdbc/BigQueryJdbcOAuthUtilityTest.java

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,22 @@ public void testParseOAuthPropsForUserAuth() {
218218
assertThat(authProperties.get("OAuthClientSecret")).isEqualTo("secret");
219219
}
220220

221+
@Test
222+
public void testParseOAuthPropsForUserAuthDefault() {
223+
Map<String, String> authProperties =
224+
BigQueryJdbcOAuthUtility.parseOAuthProperties(
225+
DataSource.fromUrl(
226+
"jdbc:bigquery://https://www.googleapis.com/bigquery/v2:443;"
227+
+ "OAuthType=1;ProjectId=MyBigQueryProject;"),
228+
null);
229+
230+
assertThat(authProperties.get("OAuthType")).isEqualTo("GOOGLE_USER_ACCOUNT");
231+
assertThat(authProperties.get("OAuthClientId"))
232+
.isEqualTo(BigQueryJdbcUrlUtility.DEFAULT_OAUTH_CLIENT_ID);
233+
assertThat(authProperties.get("OAuthClientSecret"))
234+
.isEqualTo(BigQueryJdbcUrlUtility.DEFAULT_OAUTH_CLIENT_SECRET);
235+
}
236+
221237
@Test
222238
public void testGenerateUserAuthURL() {
223239
try {

0 commit comments

Comments
 (0)