mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-09-04 00:44:48 +00:00
refactor: 移动 PermissionsMixin 位置
This commit is contained in:
@@ -2,7 +2,6 @@
|
||||
#
|
||||
import time
|
||||
from rest_framework import permissions
|
||||
from django.contrib.auth.mixins import UserPassesTestMixin
|
||||
from django.conf import settings
|
||||
|
||||
from orgs.utils import current_org
|
||||
@@ -95,20 +94,6 @@ class WithBootstrapToken(permissions.BasePermission):
|
||||
return settings.BOOTSTRAP_TOKEN == request_bootstrap_token
|
||||
|
||||
|
||||
class PermissionsMixin(UserPassesTestMixin):
|
||||
permission_classes = [permissions.IsAuthenticated]
|
||||
|
||||
def get_permissions(self):
|
||||
return self.permission_classes
|
||||
|
||||
def test_func(self):
|
||||
permission_classes = self.get_permissions()
|
||||
for permission_class in permission_classes:
|
||||
if not permission_class().has_permission(self.request, self):
|
||||
return False
|
||||
return True
|
||||
|
||||
|
||||
class UserCanAnyPermCurrentOrg(permissions.BasePermission):
|
||||
def has_permission(self, request, view):
|
||||
return current_org.can_any_by(request.user)
|
||||
|
Reference in New Issue
Block a user