You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "Apache Spark (JIRA)" <ji...@apache.org> on 2018/09/02 18:02:03 UTC

[jira] [Commented] (AIRFLOW-1021) Double logging required for new users with LDAP

    [ https://issues.apache.org/jira/browse/AIRFLOW-1021?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16601434#comment-16601434 ] 

Apache Spark commented on AIRFLOW-1021:
---------------------------------------

User 'wolfier' has created a pull request for this issue:
https://github.com/apache/incubator-airflow/pull/2778

> Double logging required for new users with LDAP
> -----------------------------------------------
>
>                 Key: AIRFLOW-1021
>                 URL: https://issues.apache.org/jira/browse/AIRFLOW-1021
>             Project: Apache Airflow
>          Issue Type: Bug
>          Components: contrib
>    Affects Versions: Airflow 1.8
>            Reporter: Marcelo G. Almiron
>            Assignee: Alan Ma
>            Priority: Major
>
> Every user needs to login twice to access Airflow for the first time with LDAP. 
> In the first trial the user is not persistent, so there is no `id` associated, which leads to `None` value returned by `load_user(userid)`, since `userid` is none `None`.
> A quick fix is to add the new user to the session and commit before merging.  That is, in module `airflow/contrib/auth/backends/ldap_auth.py`,  we can change
> ```
> if not user:
>     user = models.User(
>         username=username,
>         is_superuser=False)
> session.merge(user)
> session.commit()
> flask_login.login_user(LdapUser(user))
> ```
> by
> ```
> if not user:
>     user = models.User(
>         username=username,
>         is_superuser=False)
>     session.add(user)
>             
> session.commit()
> session.merge(user)
> flask_login.login_user(LdapUser(user))
> ```



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)