perf: 再次修改 setting

pull/11285/head
ibuler 2023-08-15 16:58:41 +08:00
parent 5e29c7e7bf
commit 9e6221443e
6 changed files with 17 additions and 11 deletions

View File

@ -44,7 +44,6 @@ class SettingsApi(generics.RetrieveUpdateAPIView):
'keycloak': serializers.KeycloakSettingSerializer, 'keycloak': serializers.KeycloakSettingSerializer,
'radius': serializers.RadiusSettingSerializer, 'radius': serializers.RadiusSettingSerializer,
'cas': serializers.CASSettingSerializer, 'cas': serializers.CASSettingSerializer,
'sso': serializers.SSOSettingSerializer,
'saml2': serializers.SAML2SettingSerializer, 'saml2': serializers.SAML2SettingSerializer,
'oauth2': serializers.OAuth2SettingSerializer, 'oauth2': serializers.OAuth2SettingSerializer,
'clean': serializers.CleaningSerializer, 'clean': serializers.CleaningSerializer,
@ -58,7 +57,7 @@ class SettingsApi(generics.RetrieveUpdateAPIView):
'vault': serializers.VaultSettingSerializer, 'vault': serializers.VaultSettingSerializer,
'announcement': serializers.AnnouncementSettingSerializer, 'announcement': serializers.AnnouncementSettingSerializer,
'ticket': serializers.TicketSettingSerializer, 'ticket': serializers.TicketSettingSerializer,
'ops': serializers.OpsSettingSerializer,
} }
rbac_category_permissions = { rbac_category_permissions = {

View File

@ -9,14 +9,16 @@ __all__ = [
class AuthSettingSerializer(serializers.Serializer): class AuthSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Authentication') PREFIX_TITLE = _('Authentication')
AUTH_LDAP = serializers.BooleanField(required=False, label=_('LDAP Auth'))
AUTH_CAS = serializers.BooleanField(required=False, label=_('CAS Auth')) AUTH_CAS = serializers.BooleanField(required=False, label=_('CAS Auth'))
AUTH_OPENID = serializers.BooleanField(required=False, label=_('OPENID Auth')) AUTH_OPENID = serializers.BooleanField(required=False, label=_('OPENID Auth'))
AUTH_SAML2 = serializers.BooleanField(default=False, label=_("SAML2 Auth"))
AUTH_OAUTH2 = serializers.BooleanField(default=False, label=_("OAuth2 Auth"))
AUTH_RADIUS = serializers.BooleanField(required=False, label=_('RADIUS Auth')) AUTH_RADIUS = serializers.BooleanField(required=False, label=_('RADIUS Auth'))
AUTH_DINGTALK = serializers.BooleanField(default=False, label=_('DingTalk Auth')) AUTH_DINGTALK = serializers.BooleanField(default=False, label=_('DingTalk Auth'))
AUTH_FEISHU = serializers.BooleanField(default=False, label=_('FeiShu Auth')) AUTH_FEISHU = serializers.BooleanField(default=False, label=_('FeiShu Auth'))
AUTH_WECOM = serializers.BooleanField(default=False, label=_('WeCom Auth')) AUTH_WECOM = serializers.BooleanField(default=False, label=_('WeCom Auth'))
AUTH_SSO = serializers.BooleanField(default=False, label=_("SSO Auth")) AUTH_SSO = serializers.BooleanField(default=False, label=_("SSO Auth"))
AUTH_SAML2 = serializers.BooleanField(default=False, label=_("SAML2 Auth"))
FORGOT_PASSWORD_URL = serializers.CharField( FORGOT_PASSWORD_URL = serializers.CharField(
required=False, allow_blank=True, max_length=1024, required=False, allow_blank=True, max_length=1024,
label=_("Forgot password url") label=_("Forgot password url")

View File

@ -7,6 +7,9 @@ __all__ = [
class SSOSettingSerializer(serializers.Serializer): class SSOSettingSerializer(serializers.Serializer):
"""
不对外开放了只能通过配置文件修改比较这个稍微有点危险
"""
PREFIX_TITLE = _('SSO') PREFIX_TITLE = _('SSO')
AUTH_SSO = serializers.BooleanField( AUTH_SSO = serializers.BooleanField(

View File

@ -13,11 +13,6 @@ class BasicSettingSerializer(serializers.Serializer):
required=False, allow_blank=True, allow_null=True, label=_("User guide url"), required=False, allow_blank=True, allow_null=True, label=_("User guide url"),
help_text=_('User first login update profile done redirect to it') help_text=_('User first login update profile done redirect to it')
) )
FORGOT_PASSWORD_URL = serializers.URLField(
required=False, allow_blank=True, allow_null=True, label=_("Forgot password url"),
help_text=_('The forgot password url on login page, If you use '
'ldap or cas external authentication, you can set it')
)
GLOBAL_ORG_DISPLAY_NAME = serializers.CharField( GLOBAL_ORG_DISPLAY_NAME = serializers.CharField(
required=False, max_length=1024, allow_blank=True, allow_null=True, label=_("Global organization name"), required=False, max_length=1024, allow_blank=True, allow_null=True, label=_("Global organization name"),
help_text=_('The name of global organization to display') help_text=_('The name of global organization to display')

View File

@ -7,7 +7,7 @@ from accounts.const import VaultTypeChoices
from common.serializers.fields import EncryptedField from common.serializers.fields import EncryptedField
__all__ = [ __all__ = [
'AnnouncementSettingSerializer', 'AnnouncementSettingSerializer', 'OpsSettingSerializer',
'VaultSettingSerializer', 'TicketSettingSerializer' 'VaultSettingSerializer', 'TicketSettingSerializer'
] ]
@ -32,11 +32,15 @@ class AnnouncementSerializer(serializers.Serializer):
class AnnouncementSettingSerializer(serializers.Serializer): class AnnouncementSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Announcement')
ANNOUNCEMENT_ENABLED = serializers.BooleanField(label=_('Enable announcement'), default=True) ANNOUNCEMENT_ENABLED = serializers.BooleanField(label=_('Enable announcement'), default=True)
ANNOUNCEMENT = AnnouncementSerializer(label=_("Announcement")) ANNOUNCEMENT = AnnouncementSerializer(label=_("Announcement"))
class VaultSettingSerializer(serializers.Serializer): class VaultSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Vault')
VAULT_TYPE = serializers.ChoiceField( VAULT_TYPE = serializers.ChoiceField(
default=VaultTypeChoices.local, choices=VaultTypeChoices.choices, default=VaultTypeChoices.local, choices=VaultTypeChoices.choices,
required=False, label=_('Type') required=False, label=_('Type')
@ -57,6 +61,8 @@ class VaultSettingSerializer(serializers.Serializer):
class TicketSettingSerializer(serializers.Serializer): class TicketSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Ticket')
TICKETS_ENABLED = serializers.BooleanField(required=False, default=True, label=_("Enable tickets")) TICKETS_ENABLED = serializers.BooleanField(required=False, default=True, label=_("Enable tickets"))
TICKET_AUTHORIZE_DEFAULT_TIME = serializers.IntegerField( TICKET_AUTHORIZE_DEFAULT_TIME = serializers.IntegerField(
min_value=1, max_value=999999, required=False, min_value=1, max_value=999999, required=False,
@ -69,6 +75,8 @@ class TicketSettingSerializer(serializers.Serializer):
class OpsSettingSerializer(serializers.Serializer): class OpsSettingSerializer(serializers.Serializer):
PREFIX_TITLE = _('Feature')
SECURITY_COMMAND_EXECUTION = serializers.BooleanField( SECURITY_COMMAND_EXECUTION = serializers.BooleanField(
required=False, label=_('Operation center'), required=False, label=_('Operation center'),
help_text=_('Allow user run batch command or not using ansible') help_text=_('Allow user run batch command or not using ansible')

View File

@ -9,7 +9,7 @@ from .auth import (
CASSettingSerializer, RadiusSettingSerializer, FeiShuSettingSerializer, CASSettingSerializer, RadiusSettingSerializer, FeiShuSettingSerializer,
WeComSettingSerializer, DingTalkSettingSerializer, AlibabaSMSSettingSerializer, WeComSettingSerializer, DingTalkSettingSerializer, AlibabaSMSSettingSerializer,
TencentSMSSettingSerializer, CMPP2SMSSettingSerializer, AuthSettingSerializer, TencentSMSSettingSerializer, CMPP2SMSSettingSerializer, AuthSettingSerializer,
SAML2SettingSerializer, OAuth2SettingSerializer, SSOSettingSerializer, SAML2SettingSerializer, OAuth2SettingSerializer,
CustomSMSSettingSerializer, CustomSMSSettingSerializer,
) )
from .basic import BasicSettingSerializer from .basic import BasicSettingSerializer
@ -42,7 +42,6 @@ class SettingsSerializer(
KeycloakSettingSerializer, KeycloakSettingSerializer,
CASSettingSerializer, CASSettingSerializer,
RadiusSettingSerializer, RadiusSettingSerializer,
SSOSettingSerializer,
CleaningSerializer, CleaningSerializer,
AlibabaSMSSettingSerializer, AlibabaSMSSettingSerializer,
TencentSMSSettingSerializer, TencentSMSSettingSerializer,