Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Could not get DAG access permission after upgrade to 2.3.0 #23473

Closed
1 of 2 tasks
leehuwuj opened this issue May 4, 2022 · 6 comments · Fixed by #23510
Closed
1 of 2 tasks

Could not get DAG access permission after upgrade to 2.3.0 #23473

leehuwuj opened this issue May 4, 2022 · 6 comments · Fixed by #23510
Assignees
Labels
affected_version:2.3 Issues Reported for 2.3 area:core kind:bug This is a clearly a bug
Milestone

Comments

@leehuwuj
Copy link
Contributor

leehuwuj commented May 4, 2022

Apache Airflow version

2.3.0 (latest released)

What happened

I upgraded my airflow instance from version 2.1.3 to 2.3.0 but got issue that there are no permission for new DAGs.
The issue only happens in DAG which has dag_id contains dot symbol.

What you think should happen instead

There should be 3 new permissions for a DAG.

How to reproduce

  • Create a new DAG with id, lets say: dag.id_1
  • Go to the UI -> Security -> List Role
  • Edit any Role
  • Try to insert permissions of new DAG above to chosen role.
    -> Could not get any permission for created DAG above.
    There are 3 DAG permissions named can_read_DAG:dag, can_edit_DAG:dag, can_delete_DAG:dag
    There should be 3 new permissions: can_read_DAG:dag.id_1, can_edit_DAG:dag.id_1, can_delete_DAG:dag.id_1

Operating System

Kubernetes

Versions of Apache Airflow Providers

No response

Deployment

Official Apache Airflow Helm Chart

Deployment details

No response

Anything else

No response

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

@leehuwuj leehuwuj added area:core kind:bug This is a clearly a bug labels May 4, 2022
@boring-cyborg
Copy link

boring-cyborg bot commented May 4, 2022

Thanks for opening your first issue here! Be sure to follow the issue template!

@ashb ashb added the affected_version:2.3 Issues Reported for 2.3 label May 4, 2022
@ashb
Copy link
Member

ashb commented May 4, 2022

. in DAG id I thought was reserved for subdags -- is this a subdag or a normal dag with a dot in the id?

@leehuwuj
Copy link
Contributor Author

leehuwuj commented May 4, 2022

. in DAG id I thought was reserved for subdags -- is this a subdag or a normal dag with a dot in the id?

It just a normal dag with dot in the id. Since all dags in my airflow instance are all followed by this convention: team_name.dag_name
Example:
de.daily_ingest_pipeline
ds.daily_training_pipeline

@ashb ashb added this to the Airflow 2.3.1 milestone May 4, 2022
@ashb
Copy link
Member

ashb commented May 4, 2022

Gotcha.

How are you trying to insert the roles/permissions?

@leehuwuj
Copy link
Contributor Author

leehuwuj commented May 4, 2022

How are you trying to insert the roles/permissions?

Actually, I wrote a trigger script at database level which assigns DAG permissions for target role based on team_name pattern in DAG id that i mentioned above. Of course my scripts could not works since there is no new DAG id followed by that convention in ab_view_menu table.
And i also can not do it in UI as mentioned in the issue description.

By the way, i also added a pattern to the issue that there's DAG permissions which have wrong dag_id in theirs name. Please check again. I think Airflow tried to create dag permission but got issue with dot symbol in dag_id.

@ashb
Copy link
Member

ashb commented May 4, 2022

It would have the same problem with dots, but rather than a database level trigger you could use the access_control field of the DAG set automatically via a https://airflow.apache.org/docs/apache-airflow/stable/concepts/cluster-policies.html

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
affected_version:2.3 Issues Reported for 2.3 area:core kind:bug This is a clearly a bug
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants