mirror of
https://github.com/jumpserver/jumpserver.git
synced 2026-07-02 07:01:30 +00:00
fix: audit tickets filter by org
This commit is contained in:
@@ -31,6 +31,9 @@ from orgs.models import Organization
|
||||
from orgs.utils import current_org, tmp_to_root_org
|
||||
from rbac.permissions import RBACPermission
|
||||
from terminal.models import default_storage
|
||||
from tickets.filters import TicketFilter
|
||||
from tickets.models import Ticket
|
||||
from tickets.serializers.ticket import TicketSerializer
|
||||
from users.models import User
|
||||
from .backends import TYPE_ENGINE_MAPPING
|
||||
from .const import ActivityChoices, ActionChoices
|
||||
@@ -314,6 +317,25 @@ class PasswordChangeLogViewSet(ReportExportMixin, OrgReadonlyModelViewSet):
|
||||
return self.model.filter_queryset_by_org(queryset)
|
||||
|
||||
|
||||
class TicketAuditViewSet(OrgReadonlyModelViewSet):
|
||||
model = Ticket
|
||||
serializer_class = TicketSerializer
|
||||
filterset_class = TicketFilter
|
||||
search_fields = ['title', 'type', 'status']
|
||||
ordering = ('-date_created',)
|
||||
permission_classes = [RBACPermission]
|
||||
rbac_perms = {
|
||||
'list': 'tickets.view_ticket',
|
||||
'retrieve': 'tickets.view_ticket',
|
||||
}
|
||||
|
||||
def get_queryset(self):
|
||||
queryset = self.model.objects.all()
|
||||
if not current_org.is_root():
|
||||
queryset = queryset.filter(org_id=str(current_org.id))
|
||||
return queryset
|
||||
|
||||
|
||||
class UserSessionViewSet(CommonApiMixin, viewsets.ModelViewSet):
|
||||
http_method_names = ('get', 'post', 'head', 'options', 'trace')
|
||||
serializer_class = UserSessionSerializer
|
||||
|
||||
@@ -17,6 +17,7 @@ router.register(r'job-logs', api.JobLogAuditViewSet, 'job-log')
|
||||
router.register(r'jobs', api.JobsAuditViewSet, 'job')
|
||||
|
||||
router.register(r'my-login-logs', api.MyLoginLogViewSet, 'my-login-log')
|
||||
router.register(r'tickets', api.TicketAuditViewSet, 'ticket-audit')
|
||||
router.register(r'user-sessions', api.UserSessionViewSet, 'user-session')
|
||||
router.register(r'service-access-logs', api.ServiceAccessLogViewSet, 'service-access-log')
|
||||
|
||||
|
||||
Reference in New Issue
Block a user