ashb commented on a change in pull request #9973:
URL: https://github.com/apache/airflow/pull/9973#discussion_r629501511
##########
File path: airflow/www/security.py
##########
@@ -347,19 +347,23 @@ def can_read_dag(self, dag_id, user=None) -> bool:
if not user:
user = g.user
prefixed_dag_id = self.prefixed_dag_id(dag_id)
- return self._has_view_access(
- user, permissions.ACTION_CAN_READ, permissions.RESOURCE_DAG
- ) or self._has_view_access(user, permissions.ACTION_CAN_READ,
prefixed_dag_id)
+ return (
+ self._has_view_access(user, permissions.ACTION_CAN_READ,
permissions.RESOURCE_DAG)
+ or self._has_view_access(user, permissions.ACTION_CAN_READ,
prefixed_dag_id)
+ or False
+ )
def can_edit_dag(self, dag_id, user=None) -> bool:
"""Determines whether a user has DAG edit access."""
if not user:
user = g.user
prefixed_dag_id = self.prefixed_dag_id(dag_id)
- return self._has_view_access(
- user, permissions.ACTION_CAN_EDIT, permissions.RESOURCE_DAG
- ) or self._has_view_access(user, permissions.ACTION_CAN_EDIT,
prefixed_dag_id)
+ return (
+ self._has_view_access(user, permissions.ACTION_CAN_EDIT,
permissions.RESOURCE_DAG)
+ or self._has_view_access(user, permissions.ACTION_CAN_EDIT,
prefixed_dag_id)
+ or False
Review comment:
```
def _has_view_access(self, user, action, resource):
return bool(super()._has_view_access(user, action, resource)
```
would probably be a better fix (along with a comment saying why we need it
rather than having to change every place we use this.
##########
File path: airflow/www/security.py
##########
@@ -348,19 +348,21 @@ def can_read_dag(self, dag_id, user=None) -> bool:
if not user:
user = g.user
dag_resource_name = permissions.resource_name_for_dag(dag_id)
- return self._has_view_access(
- user, permissions.ACTION_CAN_READ, permissions.RESOURCE_DAG
- ) or self._has_view_access(user, permissions.ACTION_CAN_READ,
dag_resource_name)
+ return bool(
+ self._has_view_access(user, permissions.ACTION_CAN_READ,
permissions.RESOURCE_DAG)
+ or self._has_view_access(user, permissions.ACTION_CAN_READ,
dag_resource_name)
+ )
Review comment:
Ah, see https://github.com/apache/airflow/pull/9973#discussion_r629501511
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]