from django.utils.translation import gettext_lazy as _ from rest_framework import serializers class TerminalSettingSerializer(serializers.Serializer): PREFIX_TITLE = _('Terminal') SORT_BY_CHOICES = ( ('name', _('Name')), ('ip', _('Address')) ) PAGE_SIZE_CHOICES = ( ('all', _('All')), ('auto', _('Auto')), ('10', '10'), ('15', '15'), ('25', '25'), ('50', '50'), ) SECURITY_SERVICE_ACCOUNT_REGISTRATION = serializers.BooleanField( required=True, label=_('Registration'), help_text=_( "Allow component register, after all component setup, you should disable this for security" ) ) TERMINAL_PASSWORD_AUTH = serializers.BooleanField( required=False, label=_("Password"), help_text=_( '* Allow users to log in to the KoKo component via password authentication' ) ) TERMINAL_PUBLIC_KEY_AUTH = serializers.BooleanField( required=False, label=_("Public key"), help_text=_( '* Allow users to log in to the KoKo component via Public key authentication' '
' 'If third-party authentication services, such as AD/LDAP, are enabled, you should ' 'disable this option to prevent users from logging in after being deleted from the AD/LDAP server' ) ) TERMINAL_ASSET_LIST_SORT_BY = serializers.ChoiceField( SORT_BY_CHOICES, required=False, label=_('Asset sorting') ) TERMINAL_ASSET_LIST_PAGE_SIZE = serializers.ChoiceField( PAGE_SIZE_CHOICES, required=False, label=_('Asset page size') ) TERMINAL_MAGNUS_ENABLED = serializers.BooleanField( label="Magnus", help_text=_( '* You can individually configure the service address and port in the service endpoint' '
' 'If enabled, the Luna page will display the DB client launch method when connecting to assets' ) ) TERMINAL_RAZOR_ENABLED = serializers.BooleanField( label="Razor", help_text=_( '* You can individually configure the service address and port in the service endpoint' '
' 'If enabled, the Luna page will display the download rdp file button ' 'and RDP Client launch method when connecting to assets' ) ) TERMINAL_KOKO_SSH_ENABLED = serializers.BooleanField( label=_("Client connection"), help_text=_( '* Allow connecting to the KoKo component via SSH client' '
' 'If enabled, the Luna page will display the SSH client launch method when connecting to assets' ) )