You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by ur...@apache.org on 2021/11/30 06:35:23 UTC
[airflow] branch main updated: Move class_permission_name to mixin so it applies to all auths (#18749)
This is an automated email from the ASF dual-hosted git repository.
uranusjr pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow.git
The following commit(s) were added to refs/heads/main by this push:
new c970404 Move class_permission_name to mixin so it applies to all auths (#18749)
c970404 is described below
commit c970404fa6e96a9e2d4063b69df87e76788b2457
Author: Ćukasz Wyszomirski <wy...@google.com>
AuthorDate: Tue Nov 30 07:34:56 2021 +0100
Move class_permission_name to mixin so it applies to all auths (#18749)
---
airflow/www/views.py | 32 ++++++++++++++++----------------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/airflow/www/views.py b/airflow/www/views.py
index e7f037d..77c8f62 100644
--- a/airflow/www/views.py
+++ b/airflow/www/views.py
@@ -4782,6 +4782,22 @@ class MultiResourceUserMixin:
permissions.ACTION_CAN_DELETE,
]
+ @property
+ def class_permission_name(self):
+ """Returns appropriate permission name depending on request method name."""
+ if request:
+ action_name = request.view_args.get("name")
+ _, method_name = request.url_rule.endpoint.rsplit(".", 1)
+ if method_name == 'action' and action_name:
+ return self.class_permission_name_mapping.get(action_name, self._class_permission_name)
+ if method_name:
+ return self.class_permission_name_mapping.get(method_name, self._class_permission_name)
+ return self._class_permission_name
+
+ @class_permission_name.setter
+ def class_permission_name(self, name):
+ self._class_permission_name = name
+
@expose("/show/<pk>", methods=["GET"])
@has_access
def show(self, pk):
@@ -4829,22 +4845,6 @@ class CustomUserDBModelView(MultiResourceUserMixin, UserDBModelView):
permissions.ACTION_CAN_DELETE,
]
- @property
- def class_permission_name(self):
- """Returns appropriate permission name depending on request method name."""
- if request:
- action_name = request.view_args.get("name")
- _, method_name = request.url_rule.endpoint.rsplit(".", 1)
- if method_name == 'action' and action_name:
- return self.class_permission_name_mapping.get(action_name, self._class_permission_name)
- if method_name:
- return self.class_permission_name_mapping.get(method_name, self._class_permission_name)
- return self._class_permission_name
-
- @class_permission_name.setter
- def class_permission_name(self, name):
- self._class_permission_name = name
-
class CustomUserLDAPModelView(MultiResourceUserMixin, UserLDAPModelView):
"""Customize permission names for FAB's builtin UserLDAPModelView."""