Unless otherwise configured, the client libraries use Application Default Credentials to authenticate with Google Cloud Services. While this works for most applications, in some cases you may need to override this default. You can do so by providing the UnifiedCredentialsOption The following example shows how to explicitly load a service account key file:
[](std::string const& keyfile) {
auto is = std::ifstream(keyfile);
is.exceptions(std::ios::badbit); // Minimal error handling in examples
auto contents = std::string(std::istreambuf_iterator<char>(is.rdbuf()), {});
auto options =
google::cloud::Options{}.set<google::cloud::UnifiedCredentialsOption>(
google::cloud::MakeServiceAccountCredentials(contents));
return google::cloud::storageinsights_v1::StorageInsightsClient(
google::cloud::storageinsights_v1::MakeStorageInsightsConnection(
options));
}
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[[["\u003cp\u003eThe latest release candidate version is 2.37.0-rc, with multiple previous versions, down to 2.11.0, available for reference.\u003c/p\u003e\n"],["\u003cp\u003eThe client libraries primarily use Application Default Credentials for authentication with Google Cloud Services, but there's a feature available to override this default.\u003c/p\u003e\n"],["\u003cp\u003eAuthentication can be overridden by utilizing the UnifiedCredentialsOption, allowing users to, for example, load a service account key file for authentication.\u003c/p\u003e\n"],["\u003cp\u003eThe StorageInsightsClient uses the MakeStorageInsightsConnection function, where you can include your new authentication credentials, through the UnifiedCredentialsOption, if you decide not to go with the default.\u003c/p\u003e\n"],["\u003cp\u003eThe Authentication Components document provides additional information on the various functions to create Credentials objects.\u003c/p\u003e\n"]]],[],null,[]]