mirror of https://github.com/jumpserver/jumpserver
feat: 添加app 获取对应actions接口
parent
a14ebc5f0f
commit
28c8ec1fab
|
@ -1,8 +1,12 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
#
|
#
|
||||||
from applications.models import Application
|
from rest_framework.response import Response
|
||||||
from perms.models import ApplicationPermission
|
from rest_framework.generics import RetrieveAPIView
|
||||||
|
|
||||||
from perms import serializers
|
from perms import serializers
|
||||||
|
from perms.models import ApplicationPermission
|
||||||
|
from applications.models import Application
|
||||||
|
from common.permissions import IsValidUser
|
||||||
from ..base import BasePermissionViewSet
|
from ..base import BasePermissionViewSet
|
||||||
|
|
||||||
|
|
||||||
|
@ -23,7 +27,7 @@ class ApplicationPermissionViewSet(BasePermissionViewSet):
|
||||||
'application_id', 'application', 'app', 'app_name'
|
'application_id', 'application', 'app', 'app_name'
|
||||||
]
|
]
|
||||||
ordering_fields = ('name',)
|
ordering_fields = ('name',)
|
||||||
ordering = ('name', )
|
ordering = ('name',)
|
||||||
|
|
||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
queryset = super().get_queryset().prefetch_related(
|
queryset = super().get_queryset().prefetch_related(
|
||||||
|
@ -53,3 +57,11 @@ class ApplicationPermissionViewSet(BasePermissionViewSet):
|
||||||
queryset = self.filter_application(queryset)
|
queryset = self.filter_application(queryset)
|
||||||
return queryset
|
return queryset
|
||||||
|
|
||||||
|
|
||||||
|
class ApplicationPermissionActionsApi(RetrieveAPIView):
|
||||||
|
permission_classes = (IsValidUser,)
|
||||||
|
|
||||||
|
def retrieve(self, request, *args, **kwargs):
|
||||||
|
category = request.GET.get('category')
|
||||||
|
actions = ApplicationPermission.get_include_actions_choices(category=category)
|
||||||
|
return Response(data=actions)
|
||||||
|
|
|
@ -37,6 +37,8 @@ permission_urlpatterns = [
|
||||||
|
|
||||||
# 验证用户是否有某个应用的权限
|
# 验证用户是否有某个应用的权限
|
||||||
path('user/validate/', api.ValidateUserApplicationPermissionApi.as_view(), name='validate-user-application-permission'),
|
path('user/validate/', api.ValidateUserApplicationPermissionApi.as_view(), name='validate-user-application-permission'),
|
||||||
|
|
||||||
|
path('applications/actions/', api.ApplicationPermissionActionsApi.as_view(), name='application-actions'),
|
||||||
]
|
]
|
||||||
|
|
||||||
application_permission_urlpatterns = [
|
application_permission_urlpatterns = [
|
||||||
|
|
Loading…
Reference in New Issue