Google Cloud Bigtable C++ Client 2.13.0
A C++ Client Library for Google Cloud Bigtable
Loading...
Searching...
No Matches
Override the authentication configuration

Some applications cannot use the default authentication mechanism (known as Application Default Credentials).

You can override this default using google::cloud::UnifiedCredentialsOption. The following example shows how to explicitly load a service account key file.

namespace bigtable = ::google::cloud::bigtable;
[](std::string const& project_id, std::string const& instance_id,
std::string const& table_id, std::string const& keyfile) {
auto is = std::ifstream(keyfile);
is.exceptions(std::ios::badbit);
auto contents = std::string(std::istreambuf_iterator<char>(is.rdbuf()), {});
auto options =
auto resource = bigtable::TableResource(project_id, instance_id, table_id);
return bigtable::Table(bigtable::MakeDataConnection(options), resource);
}
Options & set(ValueTypeT< T > v)
std::shared_ptr< Credentials > MakeServiceAccountCredentials(std::string json_object, Options opts={})

Keep in mind that we chose this as an example because it is relatively easy to understand. Consult the Best practices for managing service account keys guide for more details.

Changing the default authentication configuration for other *Client classes is very similar, as shown in these examples:

Keep in mind that we chose this as an example because it is relatively easy to understand. Consult the Best practices for managing service account keys guide for more details.

See also
Authentication Components - for more information on the factory functions to create google::cloud::Credentials objects.