On Wed, Sep 21, 2022 at 3:10 PM Andrey Chudnovskiy
<andrey.chudnovs...@microsoft.com> wrote:
> We can support both passing the token from an upstream client and libpq 
> implementing OAUTH2 protocol to obtaining one.

Right, I agree that we could potentially do both.

> Libpq passing toked directly from an upstream client is useful in other 
> scenarios:
> 1. Enterprise clients, built with .Net / Java and using provider-specific 
> authentication libraries, like MSAL for AAD. Those can also support more 
> advance provider-specific token acquisition flows.
> 2. Resource-tight (like IoT) clients. Those can be compiled without optional 
> libpq flag not including the iddawc or other dependency.

What I don't understand is how the OAUTHBEARER mechanism helps you in
this case. You're short-circuiting the negotiation where the server
tells the client what provider to use and what scopes to request, and
instead you're saying "here's a secret string, just take it and
validate it with magic."

I realize the ability to pass an opaque token may be useful, but from
the server's perspective, I don't see what differentiates it from the
password auth method plus a custom authenticator plugin. Why pay for
the additional complexity of OAUTHBEARER if you're not going to use
it?

--Jacob


Reply via email to