From a3fef9cc54118de482ea6c75c4db498f20d4cda1 Mon Sep 17 00:00:00 2001 From: feng <1304903146@qq.com> Date: Fri, 25 Apr 2025 17:28:12 +0800 Subject: [PATCH] perf: Update the key when the integration-application is updated or created --- apps/accounts/api/account/application.py | 3 +-- apps/accounts/serializers/account/service.py | 5 +++++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/apps/accounts/api/account/application.py b/apps/accounts/api/account/application.py index a395414b4..898a432a5 100644 --- a/apps/accounts/api/account/application.py +++ b/apps/accounts/api/account/application.py @@ -62,8 +62,7 @@ class IntegrationApplicationViewSet(OrgBulkModelViewSet): ) def get_once_secret(self, request, *args, **kwargs): instance = self.get_object() - secret = instance.get_secret() - return Response(data={'id': instance.id, 'secret': secret}) + return Response(data={'id': instance.id, 'secret': instance.secret}) @action(['GET'], detail=False, url_path='account-secret', permission_classes=[RBACPermission]) diff --git a/apps/accounts/serializers/account/service.py b/apps/accounts/serializers/account/service.py index d94d2417e..4502e81a8 100644 --- a/apps/accounts/serializers/account/service.py +++ b/apps/accounts/serializers/account/service.py @@ -5,6 +5,7 @@ from rest_framework import serializers from accounts.models import IntegrationApplication from acls.serializers.rules import ip_group_child_validator, ip_group_help_text from common.serializers.fields import JSONManyToManyField +from common.utils import random_string from orgs.mixins.serializers import BulkOrgResourceModelSerializer @@ -37,6 +38,10 @@ class IntegrationApplicationSerializer(BulkOrgResourceModelSerializer): data['logo'] = static('img/logo.png') return data + def validate(self, attrs): + attrs['secret'] = random_string(36) + return attrs + class IntegrationAccountSecretSerializer(serializers.Serializer): asset = serializers.CharField(required=False, allow_blank=True)