google-cloud-cpp icon indicating copy to clipboard operation
google-cloud-cpp copied to clipboard

Support HMAC authentication for downloads and uploads

Open coryan opened this issue 4 years ago • 2 comments

The client library does not support HMAC authentication, while some customers need it. The service only supports HMAC authentication for the XML API. The client library uses the JSON API for all metadata operations, but we do use XML for downloads, and could support it for downloads.

Maybe we could expose a limited client, something like:

namespace storage_experimental {
class ReadWriteClient {
  public:
    storage::ReadObjectStream ReadObject(...);
    storage::WriteObjectStream WriteObject(...);
};

ReadWriteClient CreateClient(HmacCredentials ... , Options opts);

}

This client would support HMAC but would be limited to a subset of the operations that are supported with it. Alternatively, just return a storage::Client that always fails with kUnimplemented for operations that do not support HMAC

coryan avatar Jul 24 '21 14:07 coryan

Punt

devjgm avatar Apr 14 '22 18:04 devjgm

Strike 2

coryan avatar Aug 25 '22 18:08 coryan

We have no time for this, closing.

coryan avatar Feb 01 '23 19:02 coryan