You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
jumpserver/apps/settings/serializers/auth/dingtalk.py

25 lines
1021 B

from django.utils.translation import gettext_lazy as _
from rest_framework import serializers
from common.serializers.fields import EncryptedField
from .base import OrgListField
__all__ = ['DingTalkSettingSerializer']
class DingTalkSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('DingTalk')
DINGTALK_AGENTID = serializers.CharField(max_length=256, required=True, label='Agent ID')
DINGTALK_APPKEY = serializers.CharField(max_length=256, required=True, label='App Key')
DINGTALK_APPSECRET = EncryptedField(max_length=256, required=False, label='App Secret')
AUTH_DINGTALK = serializers.BooleanField(default=False, label=_('Dingtalk'))
DINGTALK_RENAME_ATTRIBUTES = serializers.JSONField(
required=False, label=_('User attribute'),
help_text=_(
'User attribute mapping, where the `key` is the JumpServer user attribute name and the '
'`value` is the DingTalk service user attribute name'
)
)
DINGTALK_ORG_IDS = OrgListField()