-
Notifications
You must be signed in to change notification settings - Fork 3.3k
Expand file tree
/
Copy pathcase.py
More file actions
119 lines (110 loc) · 5.46 KB
/
case.py
File metadata and controls
119 lines (110 loc) · 5.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
# coding=utf-8
# --------------------------------------------------------------------------
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License. See License.txt in the project root for
# license information.
#
# Code generated by Microsoft (R) AutoRest Code Generator.
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.
# --------------------------------------------------------------------------
from .resource import Resource
class Case(Resource):
"""Represents a case in Azure Security Insights.
Variables are only populated by the server, and will be ignored when
sending a request.
All required parameters must be populated in order to send to Azure.
:ivar id: Azure resource Id
:vartype id: str
:ivar type: Azure resource type
:vartype type: str
:ivar name: Azure resource name
:vartype name: str
:param etag: Etag of the alert rule.
:type etag: str
:param last_updated_time_utc: The last time the case was updated
:type last_updated_time_utc: datetime
:param created_time_utc: The time the case was created
:type created_time_utc: datetime
:param end_time_utc: The end time of the case
:type end_time_utc: datetime
:param start_time_utc: Required. The start time of the case
:type start_time_utc: datetime
:param labels: List of labels relevant to this case
:type labels: list[str]
:param description: The description of the case
:type description: str
:param title: Required. The title of the case
:type title: str
:param assigned_to: Describes a user that the case is assigned to
:type assigned_to: str
:param severity: Required. The severity of the case. Possible values
include: 'Critical', 'High', 'Medium', 'Low', 'Informational'
:type severity: str or ~azure.mgmt.securityinsight.models.CaseSeverity
:param status: Required. The status of the case. Possible values include:
'Draft', 'New', 'InProgress', 'Closed'
:type status: str or ~azure.mgmt.securityinsight.models.CaseStatus
:param close_reason: The reason the case was closed. Possible values
include: 'Resolved', 'Dismissed', 'Other'
:type close_reason: str or ~azure.mgmt.securityinsight.models.CloseReason
:param closed_reason_text: the case close reason details
:type closed_reason_text: str
:param related_alert_ids: List of related alert identifiers
:type related_alert_ids: list[str]
:param case_number: a sequential number
:type case_number: int
:param last_comment: the last comment in the case
:type last_comment: str
:param total_comments: the number of total comments in the case
:type total_comments: int
"""
_validation = {
'id': {'readonly': True},
'type': {'readonly': True},
'name': {'readonly': True},
'start_time_utc': {'required': True},
'title': {'required': True},
'severity': {'required': True},
'status': {'required': True},
}
_attribute_map = {
'id': {'key': 'id', 'type': 'str'},
'type': {'key': 'type', 'type': 'str'},
'name': {'key': 'name', 'type': 'str'},
'etag': {'key': 'etag', 'type': 'str'},
'last_updated_time_utc': {'key': 'properties.lastUpdatedTimeUtc', 'type': 'iso-8601'},
'created_time_utc': {'key': 'properties.createdTimeUtc', 'type': 'iso-8601'},
'end_time_utc': {'key': 'properties.endTimeUtc', 'type': 'iso-8601'},
'start_time_utc': {'key': 'properties.startTimeUtc', 'type': 'iso-8601'},
'labels': {'key': 'properties.labels', 'type': '[str]'},
'description': {'key': 'properties.description', 'type': 'str'},
'title': {'key': 'properties.title', 'type': 'str'},
'assigned_to': {'key': 'properties.assignedTo', 'type': 'str'},
'severity': {'key': 'properties.severity', 'type': 'str'},
'status': {'key': 'properties.status', 'type': 'str'},
'close_reason': {'key': 'properties.closeReason', 'type': 'str'},
'closed_reason_text': {'key': 'properties.closedReasonText', 'type': 'str'},
'related_alert_ids': {'key': 'properties.relatedAlertIds', 'type': '[str]'},
'case_number': {'key': 'properties.caseNumber', 'type': 'int'},
'last_comment': {'key': 'properties.lastComment', 'type': 'str'},
'total_comments': {'key': 'properties.totalComments', 'type': 'int'},
}
def __init__(self, **kwargs):
super(Case, self).__init__(**kwargs)
self.etag = kwargs.get('etag', None)
self.last_updated_time_utc = kwargs.get('last_updated_time_utc', None)
self.created_time_utc = kwargs.get('created_time_utc', None)
self.end_time_utc = kwargs.get('end_time_utc', None)
self.start_time_utc = kwargs.get('start_time_utc', None)
self.labels = kwargs.get('labels', None)
self.description = kwargs.get('description', None)
self.title = kwargs.get('title', None)
self.assigned_to = kwargs.get('assigned_to', None)
self.severity = kwargs.get('severity', None)
self.status = kwargs.get('status', None)
self.close_reason = kwargs.get('close_reason', None)
self.closed_reason_text = kwargs.get('closed_reason_text', None)
self.related_alert_ids = kwargs.get('related_alert_ids', None)
self.case_number = kwargs.get('case_number', None)
self.last_comment = kwargs.get('last_comment', None)
self.total_comments = kwargs.get('total_comments', None)