From f17727deb9685b9f66b11fab29ea536040d5ecfc Mon Sep 17 00:00:00 2001 From: BaiJiangJie <32935519+BaiJiangJie@users.noreply.github.com> Date: Wed, 25 Jul 2018 15:13:53 +0800 Subject: [PATCH] =?UTF-8?q?[Update]=20=E5=9C=A8=E7=BA=BF/=E5=8E=86?= =?UTF-8?q?=E5=8F=B2/=E5=91=BD=E4=BB=A4model=E6=B7=BB=E5=8A=A0org=EF=BC=9B?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=91=BD=E4=BB=A4=E8=AE=B0=E5=BD=95=E4=BF=9D?= =?UTF-8?q?=E5=AD=98org=E5=A4=B1=E8=B4=A5bug=20(#1584)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * [Update] 修复创建授权规则,显示org_name不是有效UUID的bug * [Update] 更新org之间隔离授权规则,解决QuerySet与Manager问题;修复创建用户,显示org_name不是有效UUID之bug; * [Update] 在线/历史/命令model添加org * [Bugfix] 修复命令记录,保存org不成功bug --- apps/terminal/backends/command/db.py | 4 ++-- apps/terminal/backends/command/models.py | 4 +++- apps/terminal/backends/command/serializers.py | 1 + apps/terminal/models.py | 3 ++- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/apps/terminal/backends/command/db.py b/apps/terminal/backends/command/db.py index 6e0ac961d..29d322c1a 100644 --- a/apps/terminal/backends/command/db.py +++ b/apps/terminal/backends/command/db.py @@ -21,7 +21,7 @@ class CommandStore(CommandBase): user=command["user"], asset=command["asset"], system_user=command["system_user"], input=command["input"], output=command["output"], session=command["session"], - timestamp=command["timestamp"] + org_id=command["org_id"], timestamp=command["timestamp"] ) def bulk_save(self, commands): @@ -33,7 +33,7 @@ class CommandStore(CommandBase): _commands.append(self.model( user=c["user"], asset=c["asset"], system_user=c["system_user"], input=c["input"], output=c["output"], session=c["session"], - timestamp=c["timestamp"] + org_id=c["org_id"], timestamp=c["timestamp"] )) return self.model.objects.bulk_create(_commands) diff --git a/apps/terminal/backends/command/models.py b/apps/terminal/backends/command/models.py index 186769b48..b7416d0c3 100644 --- a/apps/terminal/backends/command/models.py +++ b/apps/terminal/backends/command/models.py @@ -4,8 +4,10 @@ import uuid from django.db import models from django.utils.translation import ugettext_lazy as _ +from orgs.mixins import OrgModelMixin -class AbstractSessionCommand(models.Model): + +class AbstractSessionCommand(OrgModelMixin): id = models.UUIDField(default=uuid.uuid4, primary_key=True) user = models.CharField(max_length=64, db_index=True, verbose_name=_("User")) asset = models.CharField(max_length=128, db_index=True, verbose_name=_("Asset")) diff --git a/apps/terminal/backends/command/serializers.py b/apps/terminal/backends/command/serializers.py index 634a81b36..c0a6e6c6e 100644 --- a/apps/terminal/backends/command/serializers.py +++ b/apps/terminal/backends/command/serializers.py @@ -12,5 +12,6 @@ class SessionCommandSerializer(serializers.Serializer): input = serializers.CharField(max_length=128) output = serializers.CharField(max_length=1024, allow_blank=True) session = serializers.CharField(max_length=36) + org_id = serializers.CharField(max_length=36) timestamp = serializers.IntegerField() diff --git a/apps/terminal/models.py b/apps/terminal/models.py index 3ae7066bb..e7b730b04 100644 --- a/apps/terminal/models.py +++ b/apps/terminal/models.py @@ -8,6 +8,7 @@ from django.utils import timezone from django.conf import settings from users.models import User +from orgs.mixins import OrgModelMixin from .backends.command.models import AbstractSessionCommand @@ -112,7 +113,7 @@ class Status(models.Model): return self.date_created.strftime("%Y-%m-%d %H:%M:%S") -class Session(models.Model): +class Session(OrgModelMixin): LOGIN_FROM_CHOICES = ( ('ST', 'SSH Terminal'), ('WT', 'Web Terminal'),