|
|
|
@ -114,9 +114,11 @@ static const char test_refresh_token_str[] = |
|
|
|
|
static const char test_external_account_credentials_str[] = |
|
|
|
|
"{\"type\":\"external_account\",\"audience\":\"audience\",\"subject_" |
|
|
|
|
"token_type\":\"subject_token_type\",\"service_account_impersonation_" |
|
|
|
|
"url\":\"\",\"token_url\":\"https://" |
|
|
|
|
"url\":\"https://iamcredentials.googleapis.com:5555/" |
|
|
|
|
"service_account_impersonation_url\",\"token_url\":\"https://" |
|
|
|
|
"sts.googleapis.com:5555/" |
|
|
|
|
"token\",\"token_info_url\":\"\",\"credential_source\":{\"file\":" |
|
|
|
|
"token\",\"token_info_url\":\"https://sts.googleapis.com:5555/" |
|
|
|
|
"token_info\",\"credential_source\":{\"file\":" |
|
|
|
|
"\"credentials_file_path\"}," |
|
|
|
|
"\"quota_project_id\":\"quota_" |
|
|
|
|
"project_id\",\"client_id\":\"client_id\",\"client_secret\":\"client_" |
|
|
|
@ -1485,6 +1487,8 @@ static bool test_gce_tenancy_checker(void) { |
|
|
|
|
return g_test_is_on_gce; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static std::string null_well_known_creds_path_getter(void) { return ""; } |
|
|
|
|
|
|
|
|
|
TEST(CredentialsTest, TestGoogleDefaultCredsAuthKey) { |
|
|
|
|
grpc_core::ExecCtx exec_ctx; |
|
|
|
|
grpc_composite_channel_credentials* creds; |
|
|
|
@ -1495,6 +1499,8 @@ TEST(CredentialsTest, TestGoogleDefaultCredsAuthKey) { |
|
|
|
|
g_test_is_on_gce = true; |
|
|
|
|
set_google_default_creds_env_var_with_file_contents( |
|
|
|
|
"json_key_google_default_creds", json_key); |
|
|
|
|
grpc_override_well_known_credentials_path_getter( |
|
|
|
|
null_well_known_creds_path_getter); |
|
|
|
|
gpr_free(json_key); |
|
|
|
|
creds = reinterpret_cast<grpc_composite_channel_credentials*>( |
|
|
|
|
grpc_google_default_credentials_create(nullptr)); |
|
|
|
@ -1512,6 +1518,7 @@ TEST(CredentialsTest, TestGoogleDefaultCredsAuthKey) { |
|
|
|
|
GPR_ASSERT(g_test_gce_tenancy_checker_called == false); |
|
|
|
|
creds->Unref(); |
|
|
|
|
gpr_setenv(GRPC_GOOGLE_CREDENTIALS_ENV_VAR, ""); /* Reset. */ |
|
|
|
|
grpc_override_well_known_credentials_path_getter(nullptr); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
TEST(CredentialsTest, TestGoogleDefaultCredsRefreshToken) { |
|
|
|
@ -1520,6 +1527,8 @@ TEST(CredentialsTest, TestGoogleDefaultCredsRefreshToken) { |
|
|
|
|
grpc_flush_cached_google_default_credentials(); |
|
|
|
|
set_google_default_creds_env_var_with_file_contents( |
|
|
|
|
"refresh_token_google_default_creds", test_refresh_token_str); |
|
|
|
|
grpc_override_well_known_credentials_path_getter( |
|
|
|
|
null_well_known_creds_path_getter); |
|
|
|
|
creds = reinterpret_cast<grpc_composite_channel_credentials*>( |
|
|
|
|
grpc_google_default_credentials_create(nullptr)); |
|
|
|
|
auto* default_creds = |
|
|
|
@ -1533,6 +1542,7 @@ TEST(CredentialsTest, TestGoogleDefaultCredsRefreshToken) { |
|
|
|
|
"32555999999.apps.googleusercontent.com") == 0); |
|
|
|
|
creds->Unref(); |
|
|
|
|
gpr_setenv(GRPC_GOOGLE_CREDENTIALS_ENV_VAR, ""); /* Reset. */ |
|
|
|
|
grpc_override_well_known_credentials_path_getter(nullptr); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
TEST(CredentialsTest, TestGoogleDefaultCredsExternalAccountCredentials) { |
|
|
|
@ -1542,6 +1552,8 @@ TEST(CredentialsTest, TestGoogleDefaultCredsExternalAccountCredentials) { |
|
|
|
|
set_google_default_creds_env_var_with_file_contents( |
|
|
|
|
"google_default_creds_external_account_credentials", |
|
|
|
|
test_external_account_credentials_str); |
|
|
|
|
grpc_override_well_known_credentials_path_getter( |
|
|
|
|
null_well_known_creds_path_getter); |
|
|
|
|
creds = reinterpret_cast<grpc_composite_channel_credentials*>( |
|
|
|
|
grpc_google_default_credentials_create(nullptr)); |
|
|
|
|
auto* default_creds = |
|
|
|
@ -1554,6 +1566,7 @@ TEST(CredentialsTest, TestGoogleDefaultCredsExternalAccountCredentials) { |
|
|
|
|
GPR_ASSERT(external != nullptr); |
|
|
|
|
creds->Unref(); |
|
|
|
|
gpr_setenv(GRPC_GOOGLE_CREDENTIALS_ENV_VAR, ""); /* Reset. */ |
|
|
|
|
grpc_override_well_known_credentials_path_getter(nullptr); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
TEST(CredentialsTest, |
|
|
|
@ -1562,8 +1575,10 @@ TEST(CredentialsTest, |
|
|
|
|
grpc_composite_channel_credentials* creds; |
|
|
|
|
grpc_flush_cached_google_default_credentials(); |
|
|
|
|
set_google_default_creds_env_var_with_file_contents( |
|
|
|
|
"google_default_creds_external_account_credentials", |
|
|
|
|
"google_default_creds_external_account_credentials_multi_pattern_sts", |
|
|
|
|
test_external_account_credentials_multi_pattern_sts_str); |
|
|
|
|
grpc_override_well_known_credentials_path_getter( |
|
|
|
|
null_well_known_creds_path_getter); |
|
|
|
|
creds = reinterpret_cast<grpc_composite_channel_credentials*>( |
|
|
|
|
grpc_google_default_credentials_create(nullptr)); |
|
|
|
|
auto* default_creds = |
|
|
|
@ -1576,6 +1591,7 @@ TEST(CredentialsTest, |
|
|
|
|
GPR_ASSERT(external != nullptr); |
|
|
|
|
creds->Unref(); |
|
|
|
|
gpr_setenv(GRPC_GOOGLE_CREDENTIALS_ENV_VAR, ""); /* Reset. */ |
|
|
|
|
grpc_override_well_known_credentials_path_getter(nullptr); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
TEST(CredentialsTest, |
|
|
|
@ -1584,8 +1600,10 @@ TEST(CredentialsTest, |
|
|
|
|
grpc_composite_channel_credentials* creds; |
|
|
|
|
grpc_flush_cached_google_default_credentials(); |
|
|
|
|
set_google_default_creds_env_var_with_file_contents( |
|
|
|
|
"google_default_creds_external_account_credentials", |
|
|
|
|
"google_default_creds_external_account_credentials_multi_pattern_iam", |
|
|
|
|
test_external_account_credentials_multi_pattern_iam_str); |
|
|
|
|
grpc_override_well_known_credentials_path_getter( |
|
|
|
|
null_well_known_creds_path_getter); |
|
|
|
|
creds = reinterpret_cast<grpc_composite_channel_credentials*>( |
|
|
|
|
grpc_google_default_credentials_create(nullptr)); |
|
|
|
|
auto* default_creds = |
|
|
|
@ -1598,6 +1616,7 @@ TEST(CredentialsTest, |
|
|
|
|
GPR_ASSERT(external != nullptr); |
|
|
|
|
creds->Unref(); |
|
|
|
|
gpr_setenv(GRPC_GOOGLE_CREDENTIALS_ENV_VAR, ""); /* Reset. */ |
|
|
|
|
grpc_override_well_known_credentials_path_getter(nullptr); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static int default_creds_metadata_server_detection_httpcli_get_success_override( |
|
|
|
@ -1617,8 +1636,6 @@ static int default_creds_metadata_server_detection_httpcli_get_success_override( |
|
|
|
|
return 1; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
static std::string null_well_known_creds_path_getter(void) { return ""; } |
|
|
|
|
|
|
|
|
|
TEST(CredentialsTest, TestGoogleDefaultCredsGce) { |
|
|
|
|
grpc_core::ExecCtx exec_ctx; |
|
|
|
|
std::map<std::string, std::string> emd = { |
|
|
|
|