laceworksdk.api.v2.entities
Lacework Entities API wrapper.
1# -*- coding: utf-8 -*- 2""" 3Lacework Entities API wrapper. 4""" 5 6from laceworksdk.api.search_endpoint import SearchEndpoint 7 8 9class EntitiesAPI: 10 """A class used to represent the Entities API endpoint. 11 12 The Entities API endpoint is simply a parent for different types of 13 entities that can be queried. 14 15 Attributes 16 ---------- 17 applications: 18 A ApplicationsAPI instance. 19 command_lines: 20 A CommandLinesAPI instance. 21 containers: 22 A ContainersAPI instance. 23 files: 24 A FilesAPI instance. 25 images: 26 A ImagesAPI instance. 27 internal_ip_addresses: 28 A InternalIPAddressesAPI instance. 29 k8s_pods: 30 A K8sPodsAPI instance. 31 machines: 32 A MachinesAPI instance. 33 machine_details: 34 A MachineDetailsAPI instance. 35 network_interfaces: 36 A NetworkInterfacesAPI instance. 37 new_file_hashes: 38 A NewFileHashesAPI instance. 39 packages: 40 A PackagesAPI instance. 41 processes: 42 A ProcessesAPI instance. 43 users: 44 A UsersAPI instance. 45 """ 46 47 def __init__(self, session): 48 """ 49 Initializes the EntitiesAPI object. 50 51 :param session: An instance of the HttpSession class 52 53 :return EntitiesAPI object. 54 """ 55 56 super().__init__() 57 self._base_path = "Entities" 58 59 self.applications = ApplicationsAPI(session, self._base_path) 60 self.command_lines = CommandLinesAPI(session, self._base_path) 61 self.containers = ContainersAPI(session, self._base_path) 62 self.files = FilesAPI(session, self._base_path) 63 self.images = ImagesAPI(session, self._base_path) 64 self.internal_ip_addresses = InternalIPAddressesAPI(session, self._base_path) 65 self.k8s_pods = K8sPodsAPI(session, self._base_path) 66 self.machines = MachinesAPI(session, self._base_path) 67 self.machine_details = MachineDetailsAPI(session, self._base_path) 68 self.network_interfaces = NetworkInterfacesAPI(session, self._base_path) 69 self.new_file_hashes = NewFileHashesAPI(session, self._base_path) 70 self.packages = PackagesAPI(session, self._base_path) 71 self.processes = ProcessesAPI(session, self._base_path) 72 self.users = UsersAPI(session, self._base_path) 73 74 75class ApplicationsAPI(SearchEndpoint): 76 """A class used to represent the Applications API endpoint. 77 78 Methods 79 ------- 80 search(json=None) 81 A method to search Applications objects. 82 """ 83 RESOURCE = "Applications" 84 85 86class CommandLinesAPI(SearchEndpoint): 87 """A class used to represent the Command Lines API endpoint. 88 89 Methods 90 ------- 91 search(json=None) 92 A method to search CommandLines objects. 93 """ 94 RESOURCE = "CommandLines" 95 96 97class ContainersAPI(SearchEndpoint): 98 """A class used to represent the Containers API endpoint. 99 100 Methods 101 ------- 102 search(json=None) 103 A method to search Containers objects. 104 """ 105 RESOURCE = "Containers" 106 107 108class FilesAPI(SearchEndpoint): 109 """A class used to represent the Files API endpoint. 110 111 Methods 112 ------- 113 search(json=None) 114 A method to search Files objects. 115 """ 116 RESOURCE = "Files" 117 118 119class ImagesAPI(SearchEndpoint): 120 """A class used to represent the Images API endpoint. 121 122 Methods 123 ------- 124 search(json=None) 125 A method to search Images objects. 126 """ 127 RESOURCE = "Images" 128 129 130class InternalIPAddressesAPI(SearchEndpoint): 131 """A class used to represent the Internal IP Addresses API endpoint. 132 133 Methods 134 ------- 135 search(json=None) 136 A method to search InternalIPAddresses objects. 137 """ 138 RESOURCE = "InternalIPAddresses" 139 140 141class K8sPodsAPI(SearchEndpoint): 142 """A class used to represent the K8s Pods API endpoint. 143 144 Methods 145 ------- 146 search(json=None) 147 A method to search K8sPods objects. 148 """ 149 RESOURCE = "K8sPods" 150 151 152class MachinesAPI(SearchEndpoint): 153 """A class used to represent the Machines API endpoint. 154 155 Methods 156 ------- 157 search(json=None) 158 A method to search Machines objects. 159 """ 160 RESOURCE = "Machines" 161 162 163class MachineDetailsAPI(SearchEndpoint): 164 """A class used to represent the Machine Details API endpoint. 165 166 Methods 167 ------- 168 search(json=None) 169 A method to search MachineDetails objects. 170 """ 171 RESOURCE = "MachineDetails" 172 173 174class NetworkInterfacesAPI(SearchEndpoint): 175 """A class used to represent the Network Interfaces API endpoint. 176 177 Methods 178 ------- 179 search(json=None) 180 A method to search NetworkInterfaces objects. 181 """ 182 RESOURCE = "NetworkInterfaces" 183 184 185class NewFileHashesAPI(SearchEndpoint): 186 """A class used to represent the New File Hashes API endpoint. 187 188 Methods 189 ------- 190 search(json=None) 191 A method to search NewFileHashes objects. 192 """ 193 RESOURCE = "NewFileHashes" 194 195 196class PackagesAPI(SearchEndpoint): 197 """A class used to represent the Packages API endpoint. 198 199 Methods 200 ------- 201 search(json=None) 202 A method to search Packages objects. 203 """ 204 RESOURCE = "Packages" 205 206 207class ProcessesAPI(SearchEndpoint): 208 """A class used to represent the Processes API endpoint. 209 210 Methods 211 ------- 212 search(json=None) 213 A method to search Processes objects. 214 """ 215 RESOURCE = "Processes" 216 217 218class UsersAPI(SearchEndpoint): 219 """A class used to represent the Users API endpoint. 220 221 Methods 222 ------- 223 search(json=None) 224 A method to search Users objects. 225 """ 226 RESOURCE = "Users"
10class EntitiesAPI: 11 """A class used to represent the Entities API endpoint. 12 13 The Entities API endpoint is simply a parent for different types of 14 entities that can be queried. 15 16 Attributes 17 ---------- 18 applications: 19 A ApplicationsAPI instance. 20 command_lines: 21 A CommandLinesAPI instance. 22 containers: 23 A ContainersAPI instance. 24 files: 25 A FilesAPI instance. 26 images: 27 A ImagesAPI instance. 28 internal_ip_addresses: 29 A InternalIPAddressesAPI instance. 30 k8s_pods: 31 A K8sPodsAPI instance. 32 machines: 33 A MachinesAPI instance. 34 machine_details: 35 A MachineDetailsAPI instance. 36 network_interfaces: 37 A NetworkInterfacesAPI instance. 38 new_file_hashes: 39 A NewFileHashesAPI instance. 40 packages: 41 A PackagesAPI instance. 42 processes: 43 A ProcessesAPI instance. 44 users: 45 A UsersAPI instance. 46 """ 47 48 def __init__(self, session): 49 """ 50 Initializes the EntitiesAPI object. 51 52 :param session: An instance of the HttpSession class 53 54 :return EntitiesAPI object. 55 """ 56 57 super().__init__() 58 self._base_path = "Entities" 59 60 self.applications = ApplicationsAPI(session, self._base_path) 61 self.command_lines = CommandLinesAPI(session, self._base_path) 62 self.containers = ContainersAPI(session, self._base_path) 63 self.files = FilesAPI(session, self._base_path) 64 self.images = ImagesAPI(session, self._base_path) 65 self.internal_ip_addresses = InternalIPAddressesAPI(session, self._base_path) 66 self.k8s_pods = K8sPodsAPI(session, self._base_path) 67 self.machines = MachinesAPI(session, self._base_path) 68 self.machine_details = MachineDetailsAPI(session, self._base_path) 69 self.network_interfaces = NetworkInterfacesAPI(session, self._base_path) 70 self.new_file_hashes = NewFileHashesAPI(session, self._base_path) 71 self.packages = PackagesAPI(session, self._base_path) 72 self.processes = ProcessesAPI(session, self._base_path) 73 self.users = UsersAPI(session, self._base_path)
A class used to represent the Entities API endpoint.
The Entities API endpoint is simply a parent for different types of entities that can be queried.
Attributes
applications: A ApplicationsAPI instance. command_lines: A CommandLinesAPI instance. containers: A ContainersAPI instance. files: A FilesAPI instance. images: A ImagesAPI instance. internal_ip_addresses: A InternalIPAddressesAPI instance. k8s_pods: A K8sPodsAPI instance. machines: A MachinesAPI instance. machine_details: A MachineDetailsAPI instance. network_interfaces: A NetworkInterfacesAPI instance. new_file_hashes: A NewFileHashesAPI instance. packages: A PackagesAPI instance. processes: A ProcessesAPI instance. users: A UsersAPI instance.
48 def __init__(self, session): 49 """ 50 Initializes the EntitiesAPI object. 51 52 :param session: An instance of the HttpSession class 53 54 :return EntitiesAPI object. 55 """ 56 57 super().__init__() 58 self._base_path = "Entities" 59 60 self.applications = ApplicationsAPI(session, self._base_path) 61 self.command_lines = CommandLinesAPI(session, self._base_path) 62 self.containers = ContainersAPI(session, self._base_path) 63 self.files = FilesAPI(session, self._base_path) 64 self.images = ImagesAPI(session, self._base_path) 65 self.internal_ip_addresses = InternalIPAddressesAPI(session, self._base_path) 66 self.k8s_pods = K8sPodsAPI(session, self._base_path) 67 self.machines = MachinesAPI(session, self._base_path) 68 self.machine_details = MachineDetailsAPI(session, self._base_path) 69 self.network_interfaces = NetworkInterfacesAPI(session, self._base_path) 70 self.new_file_hashes = NewFileHashesAPI(session, self._base_path) 71 self.packages = PackagesAPI(session, self._base_path) 72 self.processes = ProcessesAPI(session, self._base_path) 73 self.users = UsersAPI(session, self._base_path)
Initializes the EntitiesAPI object.
Parameters
- session: An instance of the HttpSession class
:return EntitiesAPI object.
76class ApplicationsAPI(SearchEndpoint): 77 """A class used to represent the Applications API endpoint. 78 79 Methods 80 ------- 81 search(json=None) 82 A method to search Applications objects. 83 """ 84 RESOURCE = "Applications"
A class used to represent the Applications API endpoint.
Methods
search(json=None) A method to search Applications objects.
87class CommandLinesAPI(SearchEndpoint): 88 """A class used to represent the Command Lines API endpoint. 89 90 Methods 91 ------- 92 search(json=None) 93 A method to search CommandLines objects. 94 """ 95 RESOURCE = "CommandLines"
A class used to represent the Command Lines API endpoint.
Methods
search(json=None) A method to search CommandLines objects.
98class ContainersAPI(SearchEndpoint): 99 """A class used to represent the Containers API endpoint. 100 101 Methods 102 ------- 103 search(json=None) 104 A method to search Containers objects. 105 """ 106 RESOURCE = "Containers"
A class used to represent the Containers API endpoint.
Methods
search(json=None) A method to search Containers objects.
109class FilesAPI(SearchEndpoint): 110 """A class used to represent the Files API endpoint. 111 112 Methods 113 ------- 114 search(json=None) 115 A method to search Files objects. 116 """ 117 RESOURCE = "Files"
A class used to represent the Files API endpoint.
Methods
search(json=None) A method to search Files objects.
120class ImagesAPI(SearchEndpoint): 121 """A class used to represent the Images API endpoint. 122 123 Methods 124 ------- 125 search(json=None) 126 A method to search Images objects. 127 """ 128 RESOURCE = "Images"
A class used to represent the Images API endpoint.
Methods
search(json=None) A method to search Images objects.
131class InternalIPAddressesAPI(SearchEndpoint): 132 """A class used to represent the Internal IP Addresses API endpoint. 133 134 Methods 135 ------- 136 search(json=None) 137 A method to search InternalIPAddresses objects. 138 """ 139 RESOURCE = "InternalIPAddresses"
A class used to represent the Internal IP Addresses API endpoint.
Methods
search(json=None) A method to search InternalIPAddresses objects.
142class K8sPodsAPI(SearchEndpoint): 143 """A class used to represent the K8s Pods API endpoint. 144 145 Methods 146 ------- 147 search(json=None) 148 A method to search K8sPods objects. 149 """ 150 RESOURCE = "K8sPods"
A class used to represent the K8s Pods API endpoint.
Methods
search(json=None) A method to search K8sPods objects.
153class MachinesAPI(SearchEndpoint): 154 """A class used to represent the Machines API endpoint. 155 156 Methods 157 ------- 158 search(json=None) 159 A method to search Machines objects. 160 """ 161 RESOURCE = "Machines"
A class used to represent the Machines API endpoint.
Methods
search(json=None) A method to search Machines objects.
164class MachineDetailsAPI(SearchEndpoint): 165 """A class used to represent the Machine Details API endpoint. 166 167 Methods 168 ------- 169 search(json=None) 170 A method to search MachineDetails objects. 171 """ 172 RESOURCE = "MachineDetails"
A class used to represent the Machine Details API endpoint.
Methods
search(json=None) A method to search MachineDetails objects.
175class NetworkInterfacesAPI(SearchEndpoint): 176 """A class used to represent the Network Interfaces API endpoint. 177 178 Methods 179 ------- 180 search(json=None) 181 A method to search NetworkInterfaces objects. 182 """ 183 RESOURCE = "NetworkInterfaces"
A class used to represent the Network Interfaces API endpoint.
Methods
search(json=None) A method to search NetworkInterfaces objects.
186class NewFileHashesAPI(SearchEndpoint): 187 """A class used to represent the New File Hashes API endpoint. 188 189 Methods 190 ------- 191 search(json=None) 192 A method to search NewFileHashes objects. 193 """ 194 RESOURCE = "NewFileHashes"
A class used to represent the New File Hashes API endpoint.
Methods
search(json=None) A method to search NewFileHashes objects.
197class PackagesAPI(SearchEndpoint): 198 """A class used to represent the Packages API endpoint. 199 200 Methods 201 ------- 202 search(json=None) 203 A method to search Packages objects. 204 """ 205 RESOURCE = "Packages"
A class used to represent the Packages API endpoint.
Methods
search(json=None) A method to search Packages objects.
208class ProcessesAPI(SearchEndpoint): 209 """A class used to represent the Processes API endpoint. 210 211 Methods 212 ------- 213 search(json=None) 214 A method to search Processes objects. 215 """ 216 RESOURCE = "Processes"
A class used to represent the Processes API endpoint.
Methods
search(json=None) A method to search Processes objects.
219class UsersAPI(SearchEndpoint): 220 """A class used to represent the Users API endpoint. 221 222 Methods 223 ------- 224 search(json=None) 225 A method to search Users objects. 226 """ 227 RESOURCE = "Users"
A class used to represent the Users API endpoint.
Methods
search(json=None) A method to search Users objects.