v0.0.17 | 보안그룹 관리 API 추가 (CRUD + 규칙 CRUD)
All checks were successful
Build And Test / build-and-push (push) Successful in 53s

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-18 13:57:08 +09:00
parent 9bf41ebf21
commit 2eade2ee9b
5 changed files with 332 additions and 1 deletions

View File

@ -119,6 +119,92 @@ class SubnetSerializer(serializers.Serializer):
)
# ==================== Security Group ====================
class SecurityGroupSerializer(serializers.Serializer):
"""보안 그룹 생성 요청"""
name = serializers.CharField(
help_text="보안 그룹 이름",
max_length=255,
)
description = serializers.CharField(
help_text="설명",
required=False,
allow_blank=True,
default="",
)
class SecurityGroupUpdateSerializer(serializers.Serializer):
"""보안 그룹 수정 요청"""
name = serializers.CharField(
help_text="보안 그룹 이름",
required=False,
max_length=255,
)
description = serializers.CharField(
help_text="설명",
required=False,
allow_blank=True,
)
class SecurityGroupRuleSerializer(serializers.Serializer):
"""보안 그룹 규칙 생성 요청"""
security_group_id = serializers.CharField(
help_text="보안 그룹 ID",
)
direction = serializers.ChoiceField(
choices=["ingress", "egress"],
help_text="방향 (ingress: 인바운드, egress: 아웃바운드)",
)
ethertype = serializers.ChoiceField(
choices=["IPv4", "IPv6"],
help_text="IP 버전",
default="IPv4",
)
protocol = serializers.ChoiceField(
choices=["tcp", "udp", "icmp", ""],
help_text="프로토콜 (tcp, udp, icmp, 빈값=전체)",
required=False,
allow_blank=True,
)
port_range_min = serializers.IntegerField(
help_text="최소 포트 번호",
required=False,
allow_null=True,
min_value=1,
max_value=65535,
)
port_range_max = serializers.IntegerField(
help_text="최대 포트 번호",
required=False,
allow_null=True,
min_value=1,
max_value=65535,
)
remote_ip_prefix = serializers.CharField(
help_text="원격 IP 대역 (CIDR, 예: 0.0.0.0/0)",
required=False,
allow_blank=True,
)
remote_group_id = serializers.CharField(
help_text="원격 보안 그룹 ID",
required=False,
allow_blank=True,
)
description = serializers.CharField(
help_text="설명",
required=False,
allow_blank=True,
default="",
)
# ==================== NKS ====================