private byte[] getRawBytes(String blobName) {
    Bucket bucket = storage.get(bucketName);
    Preconditions.checkNotNull(bucket, "Bucket [%s] not found", bucketName);
    Blob blob = bucket.get(blobName);
    Preconditions.checkNotNull(blob, "blob [%s] not found", blobName);
    return blob.getContent();
  }
Store keys and secrets in a cache so we can reduce load on cloud storage / KMS when reading
keys and reading/decrypting secrets several times on startup.

<p>Set the cache to reload keys/secrets periodically so that in the event of a key/secret being
compromised, we can update them without restarting our servers.
extensions/cloud/portability-cloud-google/src/main/java/org/datatransferproject/cloud/google/GoogleAppCredentialStore.java