From 118d33fa02d932ceccff4a51b68566a2e796d138 Mon Sep 17 00:00:00 2001 From: Eric Date: Mon, 27 Mar 2023 18:06:30 +0800 Subject: [PATCH] =?UTF-8?q?perf:=20=E6=94=AF=E6=8C=81=20super=20=E6=96=B9?= =?UTF-8?q?=E5=BC=8F=E7=9A=84=E5=88=87=E6=8D=A2=E7=94=A8=E6=88=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/assets/const/device.py | 2 +- apps/assets/serializers/platform.py | 15 +++++++++++---- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/apps/assets/const/device.py b/apps/assets/const/device.py index a3bc841a8..5e8f8f879 100644 --- a/apps/assets/const/device.py +++ b/apps/assets/const/device.py @@ -16,7 +16,7 @@ class DeviceTypes(BaseType): 'charset_enabled': False, 'domain_enabled': True, 'su_enabled': True, - 'su_methods': ['enable'] + 'su_methods': ['enable', 'super', 'super_level'] } } diff --git a/apps/assets/serializers/platform.py b/apps/assets/serializers/platform.py index 53be193a6..20824cba9 100644 --- a/apps/assets/serializers/platform.py +++ b/apps/assets/serializers/platform.py @@ -85,6 +85,14 @@ class PlatformProtocolSerializer(serializers.ModelSerializer): class PlatformSerializer(WritableNestedModelSerializer): + SU_METHOD_CHOICES = [ + ("sudo", "sudo su -"), + ("su", "su - "), + ("enable", "enable"), + ("super", "super 15"), + ("super_level", "super level 15") + ] + charset = LabeledChoiceField( choices=Platform.CharsetChoices.choices, label=_("Charset") ) @@ -94,10 +102,9 @@ class PlatformSerializer(WritableNestedModelSerializer): label=_("Protocols"), many=True, required=False ) automation = PlatformAutomationSerializer(label=_("Automation"), required=False) - su_method = LabeledChoiceField( - choices=[("sudo", "sudo su -"), ("su", "su - "), ("enable", "enable")], - label=_("Su method"), required=False, default="sudo", allow_null=True - ) + su_method = LabeledChoiceField(choices=SU_METHOD_CHOICES, + label=_("Su method"), required=False, default="sudo", allow_null=True + ) class Meta: model = Platform