mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-10-23 16:58:51 +00:00
perf: 修改命令command input 长度问题 (#7996)
* perf: 修改命令command input max_length 1024 * perf: 修改命令command input 长度问题 * perf: 修改命令command input 长度问题 * perf: 修改命令command input 长度问题 * perf: 修改命令command input 长度问题 Co-authored-by: Jiangjie.Bai <bugatti_it@163.com>
This commit is contained in:
@@ -4,27 +4,19 @@ from rest_framework import serializers
|
||||
|
||||
from .models import AbstractSessionCommand
|
||||
|
||||
__all__ = ['SessionCommandSerializer', 'InsecureCommandAlertSerializer']
|
||||
|
||||
class SessionCommandSerializer(serializers.Serializer):
|
||||
"""使用这个类作为基础Command Log Serializer类, 用来序列化"""
|
||||
|
||||
id = serializers.UUIDField(read_only=True)
|
||||
class SimpleSessionCommandSerializer(serializers.Serializer):
|
||||
""" 简单Session命令序列类, 用来提取公共字段 """
|
||||
user = serializers.CharField(label=_("User")) # 限制 64 字符,见 validate_user
|
||||
asset = serializers.CharField(max_length=128, label=_("Asset"))
|
||||
system_user = serializers.CharField(max_length=64, label=_("System user"))
|
||||
input = serializers.CharField(max_length=128, label=_("Command"))
|
||||
output = serializers.CharField(max_length=1024, allow_blank=True, label=_("Output"))
|
||||
input = serializers.CharField(max_length=2048, label=_("Command"))
|
||||
session = serializers.CharField(max_length=36, label=_("Session ID"))
|
||||
risk_level = serializers.ChoiceField(required=False, label=_("Risk level"), choices=AbstractSessionCommand.RISK_LEVEL_CHOICES)
|
||||
risk_level_display = serializers.SerializerMethodField(label=_('Risk level display'))
|
||||
risk_level = serializers.ChoiceField(
|
||||
required=False, label=_("Risk level"), choices=AbstractSessionCommand.RISK_LEVEL_CHOICES
|
||||
)
|
||||
org_id = serializers.CharField(max_length=36, required=False, default='', allow_null=True, allow_blank=True)
|
||||
timestamp = serializers.IntegerField(label=_('Timestamp'))
|
||||
remote_addr = serializers.CharField(read_only=True, label=_('Remote Address'))
|
||||
|
||||
@staticmethod
|
||||
def get_risk_level_display(obj):
|
||||
risk_mapper = dict(AbstractSessionCommand.RISK_LEVEL_CHOICES)
|
||||
return risk_mapper.get(obj.risk_level)
|
||||
|
||||
def validate_user(self, value):
|
||||
if len(value) > 64:
|
||||
@@ -32,9 +24,21 @@ class SessionCommandSerializer(serializers.Serializer):
|
||||
return value
|
||||
|
||||
|
||||
class InsecureCommandAlertSerializer(serializers.Serializer):
|
||||
input = serializers.CharField()
|
||||
asset = serializers.CharField()
|
||||
user = serializers.CharField()
|
||||
risk_level = serializers.IntegerField()
|
||||
session = serializers.UUIDField()
|
||||
class InsecureCommandAlertSerializer(SimpleSessionCommandSerializer):
|
||||
pass
|
||||
|
||||
|
||||
class SessionCommandSerializer(SimpleSessionCommandSerializer):
|
||||
"""使用这个类作为基础Command Log Serializer类, 用来序列化"""
|
||||
|
||||
id = serializers.UUIDField(read_only=True)
|
||||
system_user = serializers.CharField(max_length=64, label=_("System user"))
|
||||
output = serializers.CharField(max_length=2048, allow_blank=True, label=_("Output"))
|
||||
risk_level_display = serializers.SerializerMethodField(label=_('Risk level display'))
|
||||
timestamp = serializers.IntegerField(label=_('Timestamp'))
|
||||
remote_addr = serializers.CharField(read_only=True, label=_('Remote Address'))
|
||||
|
||||
@staticmethod
|
||||
def get_risk_level_display(obj):
|
||||
risk_mapper = dict(AbstractSessionCommand.RISK_LEVEL_CHOICES)
|
||||
return risk_mapper.get(obj.risk_level)
|
||||
|
||||
Reference in New Issue
Block a user