mirror of https://github.com/jumpserver/jumpserver
parent
3c5b459ab7
commit
4f718f9b1f
|
@ -1,6 +1,10 @@
|
|||
from orgs.mixins.api import OrgBulkModelViewSet
|
||||
from assets.models import AccountTemplate
|
||||
from assets import serializers
|
||||
from assets.models import AccountTemplate
|
||||
from rbac.permissions import RBACPermission
|
||||
from authentication.const import ConfirmType
|
||||
from common.mixins import RecordViewLogMixin
|
||||
from common.permissions import UserConfirmation
|
||||
from orgs.mixins.api import OrgBulkModelViewSet
|
||||
|
||||
|
||||
class AccountTemplateViewSet(OrgBulkModelViewSet):
|
||||
|
@ -10,3 +14,16 @@ class AccountTemplateViewSet(OrgBulkModelViewSet):
|
|||
serializer_classes = {
|
||||
'default': serializers.AccountTemplateSerializer
|
||||
}
|
||||
|
||||
|
||||
class AccountTemplateSecretsViewSet(RecordViewLogMixin, AccountTemplateViewSet):
|
||||
serializer_classes = {
|
||||
'default': serializers.AccountTemplateSecretSerializer,
|
||||
}
|
||||
http_method_names = ['get', 'options']
|
||||
# Todo: 记得打开
|
||||
# permission_classes = [RBACPermission, UserConfirmation.require(ConfirmType.MFA)]
|
||||
rbac_perms = {
|
||||
'list': 'assets.view_accounttemplatesecret',
|
||||
'retrieve': 'assets.view_accounttemplatesecret',
|
||||
}
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
from common.drf.serializers import SecretReadableMixin
|
||||
from assets.models import AccountTemplate
|
||||
from .base import BaseAccountSerializer
|
||||
|
||||
|
@ -17,3 +18,10 @@ class AccountTemplateSerializer(BaseAccountSerializer):
|
|||
# if not required_field_dict:
|
||||
# return
|
||||
# raise serializers.ValidationError(required_field_dict)
|
||||
|
||||
|
||||
class AccountTemplateSecretSerializer(SecretReadableMixin, AccountTemplateSerializer):
|
||||
class Meta(AccountTemplateSerializer.Meta):
|
||||
extra_kwargs = {
|
||||
'secret': {'write_only': False},
|
||||
}
|
||||
|
|
|
@ -16,6 +16,7 @@ router.register(r'webs', api.WebViewSet, 'web')
|
|||
router.register(r'clouds', api.CloudViewSet, 'cloud')
|
||||
router.register(r'accounts', api.AccountViewSet, 'account')
|
||||
router.register(r'account-templates', api.AccountTemplateViewSet, 'account-template')
|
||||
router.register(r'account-template-secrets', api.AccountTemplateSecretsViewSet, 'account-template-secret')
|
||||
router.register(r'account-secrets', api.AccountSecretsViewSet, 'account-secret')
|
||||
router.register(r'platforms', api.AssetPlatformViewSet, 'platform')
|
||||
router.register(r'labels', api.LabelViewSet, 'label')
|
||||
|
|
Loading…
Reference in New Issue