You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@airflow.apache.org by Deng Xiaodong <xd...@gmail.com> on 2019/01/31 13:08:28 UTC

Usage of airflow/contrib/auth/backends/password_auth.py

Hi folks,

As you may have noticed, the Flask-Admin based UI (non-RBAC) was already deprecated in the master branch. Some works are going on to further clean the codebase.

In the process, we found that there are some “legacy" modules in “airflow/contrib/auth/backends/ <https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>“. Most of them should be removed directly, as they’re no longer applicable for the new UI. But there is one module, “airflow/contrib/auth/backends/password_auth.py <https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>”, is used for API authentication as well.

We would like to understand from the community, if anyone is using airflow/contrib/auth/backends/password_auth.py <https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397> for API authentication? This will help estimate & decide whether we remove it directly or spend some effort to refactor it.

Thanks for your inputs in advance.


XD

Reference: https://github.com/apache/airflow/pull/4612 <https://github.com/apache/airflow/pull/4612> 

Re: Usage of airflow/contrib/auth/backends/password_auth.py

Posted by Deng Xiaodong <xd...@gmail.com>.
No, please do voice out if you have any concern or suggestion ;-)

XD

> On 31 Jan 2019, at 9:45 PM, Shah Altaf <me...@gmail.com> wrote:
> 
> My mistake, yes it's just for UI.  Not for API.  I'll be quiet now :-)
> 
> 
> 
> On Thu, Jan 31, 2019 at 1:42 PM Deng Xiaodong <xd...@gmail.com> wrote:
> 
>> Hi Shah,
>> 
>> Thanks for your reply.
>> 
>> May I confirm that you mean that you’re using it for the UI or for the API
>> authentication? What we discuss here is only the API authentication.
>> 
>> If you meant UI authentication, actually the non-RBAC UI is already
>> deprecated in master branch, as I shared (meaning from one of the future
>> release, only FAB-based RBAC UI will be supported).
>> 
>> 
>> XD
>> 
>>> On 31 Jan 2019, at 9:37 PM, Shah Altaf <me...@gmail.com> wrote:
>>> 
>>> Hello, yes we are using password_auth for all of our Airflow
>>> installations.  We specifically use it to automate creation of many
>> users.
>>> 
>>> 
>>> 
>>> On Thu, Jan 31, 2019 at 1:08 PM Deng Xiaodong <xd...@gmail.com>
>> wrote:
>>> 
>>>> Hi folks,
>>>> 
>>>> As you may have noticed, the Flask-Admin based UI (non-RBAC) was already
>>>> deprecated in the master branch. Some works are going on to further
>> clean
>>>> the codebase.
>>>> 
>>>> In the process, we found that there are some “legacy" modules in
>>>> “airflow/contrib/auth/backends/ <
>>>> 
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>> “.
>>>> Most of them should be removed directly, as they’re no longer applicable
>>>> for the new UI. But there is one module,
>>>> “airflow/contrib/auth/backends/password_auth.py <
>>>> 
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>> ”,
>>>> is used for API authentication as well.
>>>> 
>>>> We would like to understand from the community, if anyone is using
>>>> airflow/contrib/auth/backends/password_auth.py <
>>>> 
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>> 
>>>> for API authentication? This will help estimate & decide whether we
>> remove
>>>> it directly or spend some effort to refactor it.
>>>> 
>>>> Thanks for your inputs in advance.
>>>> 
>>>> 
>>>> XD
>>>> 
>>>> Reference: https://github.com/apache/airflow/pull/4612 <
>>>> https://github.com/apache/airflow/pull/4612>
>> 
>> 


Re: Usage of airflow/contrib/auth/backends/password_auth.py

Posted by Bolke de Bruin <bd...@gmail.com>.
Kerberos auth also.works with the API. So let's properly remove it. 

Sent from my iPhone

> On 31 Jan 2019, at 14:52, Deng Xiaodong <xd...@gmail.com> wrote:
> 
> Thanks Niels.
> 
> In this case, one solution we’re thinking of is to refactor this module to make it work with the `ab_user` table (currently it’s working based on the `user` table. It may not make much sense to maintain both `user` and `ab_user` table, at least to me personally).
> 
> XD
> 
>> On 31 Jan 2019, at 9:49 PM, Niels Zeilemaker <ni...@zeilemaker.nl> wrote:
>> 
>> We are using it to secure the API, to allow external processes to trigger
>> dags. The airflow instances have a public ip, and hence we needed to secure
>> the API in this manner.
>> 
>> Niels
>> 
>> Op do 31 jan. 2019 14:45 schreef Shah Altaf <mendhak@gmail.com:
>> 
>>> My mistake, yes it's just for UI.  Not for API.  I'll be quiet now :-)
>>> 
>>> 
>>> 
>>>> On Thu, Jan 31, 2019 at 1:42 PM Deng Xiaodong <xd...@gmail.com> wrote:
>>>> 
>>>> Hi Shah,
>>>> 
>>>> Thanks for your reply.
>>>> 
>>>> May I confirm that you mean that you’re using it for the UI or for the
>>> API
>>>> authentication? What we discuss here is only the API authentication.
>>>> 
>>>> If you meant UI authentication, actually the non-RBAC UI is already
>>>> deprecated in master branch, as I shared (meaning from one of the future
>>>> release, only FAB-based RBAC UI will be supported).
>>>> 
>>>> 
>>>> XD
>>>> 
>>>>> On 31 Jan 2019, at 9:37 PM, Shah Altaf <me...@gmail.com> wrote:
>>>>> 
>>>>> Hello, yes we are using password_auth for all of our Airflow
>>>>> installations.  We specifically use it to automate creation of many
>>>> users.
>>>>> 
>>>>> 
>>>>> 
>>>>> On Thu, Jan 31, 2019 at 1:08 PM Deng Xiaodong <xd...@gmail.com>
>>>> wrote:
>>>>> 
>>>>>> Hi folks,
>>>>>> 
>>>>>> As you may have noticed, the Flask-Admin based UI (non-RBAC) was
>>> already
>>>>>> deprecated in the master branch. Some works are going on to further
>>>> clean
>>>>>> the codebase.
>>>>>> 
>>>>>> In the process, we found that there are some “legacy" modules in
>>>>>> “airflow/contrib/auth/backends/ <
>>>>>> 
>>>> 
>>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>>>> “.
>>>>>> Most of them should be removed directly, as they’re no longer
>>> applicable
>>>>>> for the new UI. But there is one module,
>>>>>> “airflow/contrib/auth/backends/password_auth.py <
>>>>>> 
>>>> 
>>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>>>> ”,
>>>>>> is used for API authentication as well.
>>>>>> 
>>>>>> We would like to understand from the community, if anyone is using
>>>>>> airflow/contrib/auth/backends/password_auth.py <
>>>>>> 
>>>> 
>>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>>>> 
>>>>>> for API authentication? This will help estimate & decide whether we
>>>> remove
>>>>>> it directly or spend some effort to refactor it.
>>>>>> 
>>>>>> Thanks for your inputs in advance.
>>>>>> 
>>>>>> 
>>>>>> XD
>>>>>> 
>>>>>> Reference: https://github.com/apache/airflow/pull/4612 <
>>>>>> https://github.com/apache/airflow/pull/4612>
>>>> 
>>>> 
>>> 
> 

Re: Usage of airflow/contrib/auth/backends/password_auth.py

Posted by Deng Xiaodong <xd...@gmail.com>.
Thanks Niels.

In this case, one solution we’re thinking of is to refactor this module to make it work with the `ab_user` table (currently it’s working based on the `user` table. It may not make much sense to maintain both `user` and `ab_user` table, at least to me personally).

XD

> On 31 Jan 2019, at 9:49 PM, Niels Zeilemaker <ni...@zeilemaker.nl> wrote:
> 
> We are using it to secure the API, to allow external processes to trigger
> dags. The airflow instances have a public ip, and hence we needed to secure
> the API in this manner.
> 
> Niels
> 
> Op do 31 jan. 2019 14:45 schreef Shah Altaf <mendhak@gmail.com:
> 
>> My mistake, yes it's just for UI.  Not for API.  I'll be quiet now :-)
>> 
>> 
>> 
>> On Thu, Jan 31, 2019 at 1:42 PM Deng Xiaodong <xd...@gmail.com> wrote:
>> 
>>> Hi Shah,
>>> 
>>> Thanks for your reply.
>>> 
>>> May I confirm that you mean that you’re using it for the UI or for the
>> API
>>> authentication? What we discuss here is only the API authentication.
>>> 
>>> If you meant UI authentication, actually the non-RBAC UI is already
>>> deprecated in master branch, as I shared (meaning from one of the future
>>> release, only FAB-based RBAC UI will be supported).
>>> 
>>> 
>>> XD
>>> 
>>>> On 31 Jan 2019, at 9:37 PM, Shah Altaf <me...@gmail.com> wrote:
>>>> 
>>>> Hello, yes we are using password_auth for all of our Airflow
>>>> installations.  We specifically use it to automate creation of many
>>> users.
>>>> 
>>>> 
>>>> 
>>>> On Thu, Jan 31, 2019 at 1:08 PM Deng Xiaodong <xd...@gmail.com>
>>> wrote:
>>>> 
>>>>> Hi folks,
>>>>> 
>>>>> As you may have noticed, the Flask-Admin based UI (non-RBAC) was
>> already
>>>>> deprecated in the master branch. Some works are going on to further
>>> clean
>>>>> the codebase.
>>>>> 
>>>>> In the process, we found that there are some “legacy" modules in
>>>>> “airflow/contrib/auth/backends/ <
>>>>> 
>>> 
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>>> “.
>>>>> Most of them should be removed directly, as they’re no longer
>> applicable
>>>>> for the new UI. But there is one module,
>>>>> “airflow/contrib/auth/backends/password_auth.py <
>>>>> 
>>> 
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>>> ”,
>>>>> is used for API authentication as well.
>>>>> 
>>>>> We would like to understand from the community, if anyone is using
>>>>> airflow/contrib/auth/backends/password_auth.py <
>>>>> 
>>> 
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
>>>> 
>>>>> for API authentication? This will help estimate & decide whether we
>>> remove
>>>>> it directly or spend some effort to refactor it.
>>>>> 
>>>>> Thanks for your inputs in advance.
>>>>> 
>>>>> 
>>>>> XD
>>>>> 
>>>>> Reference: https://github.com/apache/airflow/pull/4612 <
>>>>> https://github.com/apache/airflow/pull/4612>
>>> 
>>> 
>> 


Re: Usage of airflow/contrib/auth/backends/password_auth.py

Posted by Niels Zeilemaker <ni...@zeilemaker.nl>.
We are using it to secure the API, to allow external processes to trigger
dags. The airflow instances have a public ip, and hence we needed to secure
the API in this manner.

Niels

Op do 31 jan. 2019 14:45 schreef Shah Altaf <mendhak@gmail.com:

> My mistake, yes it's just for UI.  Not for API.  I'll be quiet now :-)
>
>
>
> On Thu, Jan 31, 2019 at 1:42 PM Deng Xiaodong <xd...@gmail.com> wrote:
>
> > Hi Shah,
> >
> > Thanks for your reply.
> >
> > May I confirm that you mean that you’re using it for the UI or for the
> API
> > authentication? What we discuss here is only the API authentication.
> >
> > If you meant UI authentication, actually the non-RBAC UI is already
> > deprecated in master branch, as I shared (meaning from one of the future
> > release, only FAB-based RBAC UI will be supported).
> >
> >
> > XD
> >
> > > On 31 Jan 2019, at 9:37 PM, Shah Altaf <me...@gmail.com> wrote:
> > >
> > > Hello, yes we are using password_auth for all of our Airflow
> > > installations.  We specifically use it to automate creation of many
> > users.
> > >
> > >
> > >
> > > On Thu, Jan 31, 2019 at 1:08 PM Deng Xiaodong <xd...@gmail.com>
> > wrote:
> > >
> > >> Hi folks,
> > >>
> > >> As you may have noticed, the Flask-Admin based UI (non-RBAC) was
> already
> > >> deprecated in the master branch. Some works are going on to further
> > clean
> > >> the codebase.
> > >>
> > >> In the process, we found that there are some “legacy" modules in
> > >> “airflow/contrib/auth/backends/ <
> > >>
> >
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
> > >“.
> > >> Most of them should be removed directly, as they’re no longer
> applicable
> > >> for the new UI. But there is one module,
> > >> “airflow/contrib/auth/backends/password_auth.py <
> > >>
> >
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
> > >”,
> > >> is used for API authentication as well.
> > >>
> > >> We would like to understand from the community, if anyone is using
> > >> airflow/contrib/auth/backends/password_auth.py <
> > >>
> >
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
> > >
> > >> for API authentication? This will help estimate & decide whether we
> > remove
> > >> it directly or spend some effort to refactor it.
> > >>
> > >> Thanks for your inputs in advance.
> > >>
> > >>
> > >> XD
> > >>
> > >> Reference: https://github.com/apache/airflow/pull/4612 <
> > >> https://github.com/apache/airflow/pull/4612>
> >
> >
>

Re: Usage of airflow/contrib/auth/backends/password_auth.py

Posted by Shah Altaf <me...@gmail.com>.
My mistake, yes it's just for UI.  Not for API.  I'll be quiet now :-)



On Thu, Jan 31, 2019 at 1:42 PM Deng Xiaodong <xd...@gmail.com> wrote:

> Hi Shah,
>
> Thanks for your reply.
>
> May I confirm that you mean that you’re using it for the UI or for the API
> authentication? What we discuss here is only the API authentication.
>
> If you meant UI authentication, actually the non-RBAC UI is already
> deprecated in master branch, as I shared (meaning from one of the future
> release, only FAB-based RBAC UI will be supported).
>
>
> XD
>
> > On 31 Jan 2019, at 9:37 PM, Shah Altaf <me...@gmail.com> wrote:
> >
> > Hello, yes we are using password_auth for all of our Airflow
> > installations.  We specifically use it to automate creation of many
> users.
> >
> >
> >
> > On Thu, Jan 31, 2019 at 1:08 PM Deng Xiaodong <xd...@gmail.com>
> wrote:
> >
> >> Hi folks,
> >>
> >> As you may have noticed, the Flask-Admin based UI (non-RBAC) was already
> >> deprecated in the master branch. Some works are going on to further
> clean
> >> the codebase.
> >>
> >> In the process, we found that there are some “legacy" modules in
> >> “airflow/contrib/auth/backends/ <
> >>
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
> >“.
> >> Most of them should be removed directly, as they’re no longer applicable
> >> for the new UI. But there is one module,
> >> “airflow/contrib/auth/backends/password_auth.py <
> >>
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
> >”,
> >> is used for API authentication as well.
> >>
> >> We would like to understand from the community, if anyone is using
> >> airflow/contrib/auth/backends/password_auth.py <
> >>
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397
> >
> >> for API authentication? This will help estimate & decide whether we
> remove
> >> it directly or spend some effort to refactor it.
> >>
> >> Thanks for your inputs in advance.
> >>
> >>
> >> XD
> >>
> >> Reference: https://github.com/apache/airflow/pull/4612 <
> >> https://github.com/apache/airflow/pull/4612>
>
>

Re: Usage of airflow/contrib/auth/backends/password_auth.py

Posted by Deng Xiaodong <xd...@gmail.com>.
Hi Shah,

Thanks for your reply.

May I confirm that you mean that you’re using it for the UI or for the API authentication? What we discuss here is only the API authentication.

If you meant UI authentication, actually the non-RBAC UI is already deprecated in master branch, as I shared (meaning from one of the future release, only FAB-based RBAC UI will be supported).


XD

> On 31 Jan 2019, at 9:37 PM, Shah Altaf <me...@gmail.com> wrote:
> 
> Hello, yes we are using password_auth for all of our Airflow
> installations.  We specifically use it to automate creation of many users.
> 
> 
> 
> On Thu, Jan 31, 2019 at 1:08 PM Deng Xiaodong <xd...@gmail.com> wrote:
> 
>> Hi folks,
>> 
>> As you may have noticed, the Flask-Admin based UI (non-RBAC) was already
>> deprecated in the master branch. Some works are going on to further clean
>> the codebase.
>> 
>> In the process, we found that there are some “legacy" modules in
>> “airflow/contrib/auth/backends/ <
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>“.
>> Most of them should be removed directly, as they’re no longer applicable
>> for the new UI. But there is one module,
>> “airflow/contrib/auth/backends/password_auth.py <
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>”,
>> is used for API authentication as well.
>> 
>> We would like to understand from the community, if anyone is using
>> airflow/contrib/auth/backends/password_auth.py <
>> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>
>> for API authentication? This will help estimate & decide whether we remove
>> it directly or spend some effort to refactor it.
>> 
>> Thanks for your inputs in advance.
>> 
>> 
>> XD
>> 
>> Reference: https://github.com/apache/airflow/pull/4612 <
>> https://github.com/apache/airflow/pull/4612>


Re: Usage of airflow/contrib/auth/backends/password_auth.py

Posted by Shah Altaf <me...@gmail.com>.
Hello, yes we are using password_auth for all of our Airflow
installations.  We specifically use it to automate creation of many users.



On Thu, Jan 31, 2019 at 1:08 PM Deng Xiaodong <xd...@gmail.com> wrote:

> Hi folks,
>
> As you may have noticed, the Flask-Admin based UI (non-RBAC) was already
> deprecated in the master branch. Some works are going on to further clean
> the codebase.
>
> In the process, we found that there are some “legacy" modules in
> “airflow/contrib/auth/backends/ <
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>“.
> Most of them should be removed directly, as they’re no longer applicable
> for the new UI. But there is one module,
> “airflow/contrib/auth/backends/password_auth.py <
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>”,
> is used for API authentication as well.
>
> We would like to understand from the community, if anyone is using
> airflow/contrib/auth/backends/password_auth.py <
> https://github.com/apache/airflow/pull/4612/files#diff-fa19b36f43ec33307cd3ffe32f8b5397>
> for API authentication? This will help estimate & decide whether we remove
> it directly or spend some effort to refactor it.
>
> Thanks for your inputs in advance.
>
>
> XD
>
> Reference: https://github.com/apache/airflow/pull/4612 <
> https://github.com/apache/airflow/pull/4612>