Agree with Yufei 100%. Making it as deprecated, as the Iceberg spec does, makes total sense. We should remove it when Iceberg 2.0 is released.
Mike On Tue, Sep 24, 2024 at 4:46 AM Jean-Baptiste Onofré <j...@nanthrax.net> wrote: > Hi Yufei > > Yes agree. > > Regards > JB > > Le mar. 24 sept. 2024 à 01:40, Yufei Gu <flyrain...@gmail.com> a écrit : > > > For the token endpoint, I recommend we stay consistent with the Iceberg > > REST spec by marking it as deprecated and aligning its removal with the > > same timeline as outlined in the Iceberg spec. Here are a few key points > to > > consider: > > > > 1. Since the endpoint is marked as deprecated, and most production > > environments already rely on third-party token endpoints, the security > risk > > remains minimal. > > 2. Per Iceberg REST spec, this endpoint is "Deprecated since Iceberg > > (Java) 1.6.0. The endpoint and related types will be removed from this > spec > > in Iceberg (Java) 2.0.", Iceberg(Java) 2.0 is still a long way to go. > There > > would be compatibility issues for dev and test raised between now and 2.0 > > if Polaris doesn't have it. > > 3. Support for third-party token endpoints was introduced about seven > > months ago in both Java and Python, which isn't too far back, as Michael > > pointed out. > > > > WDYT? > > > > Yufei > > > > > > On Mon, Sep 23, 2024 at 12:27 PM Dmitri Bourlatchkov > > <dmitri.bourlatch...@dremio.com.invalid> wrote: > > > > > > If we remove the endpoint in Polaris, clients prior to that release > > will > > > have no mechanism for generating a token. > > > > > > Missed to address this in my previous reply :) > > > > > > Existing Java REST Catalog clients (based on Iceberg's impl.) will be > > able > > > to use bearer tokens and the Client Credentials OAuth2 Flow IIRC. > > > > > > Cheers, > > > Dmitri. > > > > > > On Mon, Sep 23, 2024 at 3:23 PM Dmitri Bourlatchkov < > > > dmitri.bourlatch...@dremio.com> wrote: > > > > > > > > If we remove the endpoint in Polaris, clients prior to that release > > > will > > > > have no mechanism for generating a token. > > > > > > > > The basic problem is that producing an auth token from the /token > > > endpoint > > > > in Polaris makes it assume the role of the Authorization Server > > according > > > > to the OAth2 RFC [2]. > > > > > > > > Moreover, since Polaris is mainly a Resource Owner, assuming the > > > > Authorization Server role goes against the grain of the OAuth2 design > > > [3]. > > > > > > > > We can certainly go into more details on this, but maybe it should > be a > > > > separate discussion thread. > > > > > > > > My point about the first release is that such a concern already > exists > > > and > > > > has been discussed in the Iceberg community. I think we ought to > > consider > > > > it. > > > > > > > > Cheers, > > > > Dmitri. > > > > > > > > [2] https://www.rfc-editor.org/rfc/rfc6749 > > > > [3] > > > > > > > > > > https://docs.google.com/document/d/1Xi5MRk8WdBWFC3N_eSmVcrLhk3yu5nJ9x_wC0ec6kVQ/edit#heading=h.2xju2266i6df > > > > > > > > > > > > On Mon, Sep 23, 2024 at 3:06 PM Michael Collado < > > collado.m...@gmail.com> > > > > wrote: > > > > > > > >> +1 on Russell’s comment. > > > >> > > > >> Re: the OAuth endpoint, it seems to me that compatibility with > Iceberg > > > >> clients needs to be considered. I think that prior to Iceberg 1.5 or > > so, > > > >> there was not support for an external oauth tokens endpoint. If we > > > remove > > > >> the endpoint in Polaris, clients prior to that release will have no > > > >> mechanism for generating a token. > > > >> > > > >> How far back do we want to maintain compatibility for Iceberg > clients? > > > >> IMO, > > > >> Iceberg 1.5 isn’t that old. > > > >> > > > >> Mike > > > >> > > > >> On Mon, Sep 23, 2024 at 11:54 AM Russell Spitzer < > > > >> russell.spit...@gmail.com> > > > >> wrote: > > > >> > > > >> > My only minor feedback is I'd prefer we do a first release as > 1.0. I > > > >> think > > > >> > there is an allergy to 0.1 software in production so I'd rather we > > > just > > > >> > start at 1. > > > >> > > > > >> > On Mon, Sep 23, 2024 at 1:50 PM Jean-Baptiste Onofré < > > j...@nanthrax.net > > > > > > > >> > wrote: > > > >> > > > > >> > > Hi Dmitri > > > >> > > > > > >> > > It makes sense to me. > > > >> > > > > > >> > > Regards > > > >> > > JB > > > >> > > > > > >> > > Le lun. 23 sept. 2024 à 20:01, Dmitri Bourlatchkov > > > >> > > <dmitri.bourlatch...@dremio.com.invalid> a écrit : > > > >> > > > > > >> > > > From my POV, I'd propose to resolve the OAuth token endpoint > > > concern > > > >> > [1] > > > >> > > > before the initial release. > > > >> > > > > > > >> > > > I guess it might be a rather big refactoring, but this issue > is > > > >> already > > > >> > > > generally accepted as a security concern in the Iceberg > > community, > > > >> so I > > > >> > > > think it would be preferable to resolve it before the first > > > release. > > > >> > > WDYT? > > > >> > > > > > > >> > > > Thanks, > > > >> > > > Dmitri. > > > >> > > > > > > >> > > > [1] https://github.com/apache/polaris/issues/12 > > > >> > > > > > > >> > > > On Mon, Sep 23, 2024 at 1:22 PM Jean-Baptiste Onofré < > > > >> j...@nanthrax.net> > > > >> > > > wrote: > > > >> > > > > > > >> > > > > Hi folks, > > > >> > > > > > > > >> > > > > As we know from experience, that the first release needs > some > > > >> careful > > > >> > > > > preparation steps, I would like to propose aiming for the > > Apache > > > >> > > > > Polaris release by the end of October (after CoC NA). > > > >> > > > > > > > >> > > > > I propose to start from 0.1-incubating (currently we are > > > building > > > >> > > > > 999-SNAPSHOT :) ). > > > >> > > > > I already created 0.1 milestone on GitHub. We can rename it > if > > > >> > needed. > > > >> > > > > > > > >> > > > > The preparation steps would be: > > > >> > > > > - do the triage on the GitHub issues, assigning issues to > the > > > 0.1 > > > >> > > > milestone > > > >> > > > > - check the legal (LICENSE, NOTICE, DISCLAIMER, KEYS, etc). > I > > > will > > > >> > > > > start some new checks/updates on that (as I have some > > experience > > > >> :) > > > >> > ). > > > >> > > > > - check distribution and artifact publication ( > > dist.apache.org, > > > >> > > > > repository.apache.org, ...) > > > >> > > > > > > > >> > > > > I have several PRs in preparation, including the release > > > >> preparation > > > >> > > > > related PRs. > > > >> > > > > > > > >> > > > > As reminder about the process > > > >> > > > > (https://incubator.apache.org/guides/releasemanagement.html > ), > > > we > > > >> > need > > > >> > > > > to do release "internally" to the podling , and then start > > > "again" > > > >> > the > > > >> > > > > vote on the incubator general mailing list. So it's a > "longer" > > > >> > process > > > >> > > > > comparing to a TLP release. > > > >> > > > > > > > >> > > > > What do you think ? > > > >> > > > > > > > >> > > > > Thanks, > > > >> > > > > Regards > > > >> > > > > JB > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > > > > > > > >