Hi Jerry, I don't recall there being a strong reason for not including this in the first implementation. I expect it wasn't included because it is generally expected that default credentials [1] would serve the very common cases, and that most other cases would involve service accounts. If a use-case isn't covered I think adding it would be desirable.
Thanks, Micah [1] https://github.com/apache/arrow/blob/6b66c842eefec520d391203d205cd91d1ca0dd65/cpp/src/arrow/filesystem/gcsfs.h#L107 On Thu, Mar 13, 2025 at 11:42 AM Jerry Adair <jerry.ad...@sas.com.invalid> wrote: > Hi, > > Currently, I use the Arrow filesystem library to establish an object that > I then use to connect to a GCS server. The credentials are specified via a > Json object, using the FromServiceAccountCredentials() method within the > GcsOptions class. I have a request (an escalation actually) from a > customer to support user accounts as well as service accounts to connect to > a GCS server. However there is no equivalent method within the Arrow GCS > filesystem code. There is support for user accounts within the Google > Cloud C++ (gccpp) library, which I am assuming that the Arrow GCS > filesystem component utilizes. Assuming that to be true, my initial > reaction to the lack of a method within the GcsOptions class for user > accounts is that there must have been a reason why such a method was not > included when the Arrow GCS filesystem code was developed, or added since > that point in time. > > So can anyone tell me why there is no support for GCS user accounts within > the Arrow GCS filesystem code? I mean, there had to be a reason; what was > it? If there was no reason, I could volunteer to create code to support > user accounts, however something tells me that there is more to the story. > > Anyway, we have a customer need for this, so feedback is appreciated. > > Thanks! > Jerry >