mirror of https://github.com/jumpserver/jumpserver
perf: pam
parent
dac26a7416
commit
c2218a5bca
|
@ -0,0 +1,18 @@
|
|||
# Generated by Django 4.1.13 on 2024-10-12 03:20
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("accounts", "0004_alter_changesecretrecord_account_and_more"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="account",
|
||||
name="secret_reset",
|
||||
field=models.BooleanField(default=True, verbose_name="Secret reset"),
|
||||
),
|
||||
]
|
|
@ -53,6 +53,7 @@ class Account(AbsConnectivity, LabeledMixin, BaseAccount):
|
|||
on_delete=models.SET_NULL, verbose_name=_("Su from")
|
||||
)
|
||||
version = models.IntegerField(default=0, verbose_name=_('Version'))
|
||||
secret_reset = models.BooleanField(default=True, verbose_name=_('Secret reset'))
|
||||
history = AccountHistoricalRecords(included_fields=['id', '_secret', 'secret_type', 'version'])
|
||||
source = models.CharField(max_length=30, default=Source.LOCAL, verbose_name=_('Source'))
|
||||
source_id = models.CharField(max_length=128, null=True, blank=True, verbose_name=_('Source ID'))
|
||||
|
|
|
@ -202,7 +202,7 @@ class AccountCreateUpdateSerializerMixin(serializers.Serializer):
|
|||
|
||||
|
||||
class AccountAssetSerializer(serializers.ModelSerializer):
|
||||
platform = ObjectRelatedField(read_only=True)
|
||||
platform = ObjectRelatedField(read_only=True, attrs=('id', 'name', 'type'))
|
||||
category = LabeledChoiceField(choices=Category.choices, read_only=True, label=_('Category'))
|
||||
type = LabeledChoiceField(choices=AllTypes.choices(), read_only=True, label=_('Type'))
|
||||
|
||||
|
@ -238,6 +238,7 @@ class AccountSerializer(AccountCreateUpdateSerializerMixin, BaseAccountSerialize
|
|||
fields = BaseAccountSerializer.Meta.fields + [
|
||||
'su_from', 'asset', 'version',
|
||||
'source', 'source_id', 'connectivity',
|
||||
'secret_reset',
|
||||
] + AccountCreateUpdateSerializerMixin.Meta.fields
|
||||
read_only_fields = BaseAccountSerializer.Meta.read_only_fields + [
|
||||
'connectivity'
|
||||
|
|
|
@ -4,6 +4,11 @@ from .base import BaseType
|
|||
|
||||
|
||||
class DeviceTypes(BaseType):
|
||||
CISCO = 'cisco', _("Cisco")
|
||||
HUAWEI = 'huawei', _("Huawei")
|
||||
H3C = 'h3c', _("H3C")
|
||||
JUNIPER = 'juniper', _("Juniper")
|
||||
TP_LINK = 'tp_link', _("TP-Link")
|
||||
GENERAL = 'general', _("General")
|
||||
SWITCH = 'switch', _("Switch")
|
||||
ROUTER = 'router', _("Router")
|
||||
|
|
|
@ -8,6 +8,7 @@ GATEWAY_NAME = 'Gateway'
|
|||
class HostTypes(BaseType):
|
||||
LINUX = 'linux', 'Linux'
|
||||
WINDOWS = 'windows', 'Windows'
|
||||
MacOS = 'macos', 'macOS'
|
||||
UNIX = 'unix', 'Unix'
|
||||
OTHER_HOST = 'other', _("Other")
|
||||
|
||||
|
|
|
@ -14,7 +14,7 @@ from common.serializers import (
|
|||
CommonModelSerializer, MethodSerializer, ResourceLabelsMixin
|
||||
)
|
||||
from common.serializers.common import DictSerializer
|
||||
from common.serializers.fields import LabeledChoiceField
|
||||
from common.serializers.fields import LabeledChoiceField, ObjectRelatedField
|
||||
from labels.models import Label
|
||||
from orgs.mixins.serializers import BulkOrgResourceModelSerializer
|
||||
from ...const import Category, AllTypes
|
||||
|
@ -147,6 +147,7 @@ class AssetSerializer(BulkOrgResourceModelSerializer, ResourceLabelsMixin, Writa
|
|||
protocols = AssetProtocolsSerializer(many=True, required=False, label=_('Protocols'), default=())
|
||||
accounts = AssetAccountSerializer(many=True, required=False, allow_null=True, write_only=True, label=_('Accounts'))
|
||||
nodes_display = NodeDisplaySerializer(read_only=False, required=False, label=_("Node path"))
|
||||
platform = ObjectRelatedField(queryset=Platform.objects, required=True, label=_('Platform'), attrs=('id', 'name', 'type'))
|
||||
_accounts = None
|
||||
|
||||
class Meta:
|
||||
|
|
Loading…
Reference in New Issue