crowdstrike-falconpy-dev 1.4.2__tar.gz → 1.4.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. {crowdstrike-falconpy-dev-1.4.2/src/crowdstrike_falconpy_dev.egg-info → crowdstrike-falconpy-dev-1.4.3}/PKG-INFO +11 -2
  2. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3/src/crowdstrike_falconpy_dev.egg-info}/PKG-INFO +11 -2
  3. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_auth_object/_falcon_interface.py +131 -81
  4. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_container_images.py +4 -4
  5. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_cspm_registration.py +18 -4
  6. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_d4c_registration.py +14 -0
  7. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_filevantage.py +8 -8
  8. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_kubernetes_protection.py +8 -7
  9. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_message_center.py +2 -2
  10. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_filevantage.py +7 -1
  11. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_service_class/_service_class.py +21 -1
  12. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_util/__init__.py +2 -2
  13. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_util/_auth.py +45 -0
  14. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_util/_functions.py +15 -8
  15. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_version.py +1 -1
  16. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/cspm_registration.py +61 -0
  17. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/d4c_registration.py +61 -1
  18. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/filevantage.py +78 -44
  19. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/kubernetes_protection.py +4 -0
  20. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/workflows.py +11 -2
  21. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_authentications.py +3 -13
  22. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_container_detections.py +3 -3
  23. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_container_packages.py +1 -1
  24. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_container_vulnerabilities.py +1 -1
  25. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_cspm_registration.py +1 -0
  26. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_d4c_registration.py +2 -1
  27. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_drift_indicators.py +1 -1
  28. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_result_object.py +2 -5
  29. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_uber.py +3 -2
  30. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_unidentified_containers.py +1 -1
  31. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_workflows.py +3 -1
  32. crowdstrike-falconpy-dev-1.4.3/tests/test_zero_trust_assessment.py +82 -0
  33. crowdstrike-falconpy-dev-1.4.2/tests/test_zero_trust_assessment.py +0 -50
  34. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/AUTHORS.md +0 -0
  35. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/LICENSE +0 -0
  36. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/README.md +0 -0
  37. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/dev_setup.py +0 -0
  38. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/setup.cfg +0 -0
  39. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/setup.py +0 -0
  40. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/crowdstrike_falconpy_dev.egg-info/SOURCES.txt +0 -0
  41. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/crowdstrike_falconpy_dev.egg-info/dependency_links.txt +0 -0
  42. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/crowdstrike_falconpy_dev.egg-info/requires.txt +0 -0
  43. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/crowdstrike_falconpy_dev.egg-info/top_level.txt +0 -0
  44. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/__init__.py +0 -0
  45. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_api_request/__init__.py +0 -0
  46. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_api_request/_request.py +0 -0
  47. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_api_request/_request_behavior.py +0 -0
  48. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_api_request/_request_connection.py +0 -0
  49. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_api_request/_request_meta.py +0 -0
  50. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_api_request/_request_payloads.py +0 -0
  51. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_api_request/_request_validator.py +0 -0
  52. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_auth_object/__init__.py +0 -0
  53. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_auth_object/_base_falcon_auth.py +0 -0
  54. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_auth_object/_bearer_token.py +0 -0
  55. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_auth_object/_interface_config.py +0 -0
  56. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_auth_object/_uber_interface.py +0 -0
  57. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_constant/__init__.py +0 -0
  58. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/__init__.py +0 -0
  59. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_alerts.py +0 -0
  60. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_cloud_connect_aws.py +0 -0
  61. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_cloud_snapshots.py +0 -0
  62. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_configuration_assessment.py +0 -0
  63. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_configuration_assessment_evaluation_logic.py +0 -0
  64. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_container_alerts.py +0 -0
  65. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_container_detections.py +0 -0
  66. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_container_packages.py +0 -0
  67. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_container_vulnerabilities.py +0 -0
  68. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_custom_ioa.py +0 -0
  69. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_custom_storage.py +0 -0
  70. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_detects.py +0 -0
  71. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_device_control_policies.py +0 -0
  72. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_discover.py +0 -0
  73. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_drift_indicators.py +0 -0
  74. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_event_streams.py +0 -0
  75. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_falcon_complete_dashboard.py +0 -0
  76. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_falcon_container.py +0 -0
  77. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_falconx_sandbox.py +0 -0
  78. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_fdr.py +0 -0
  79. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_firewall_management.py +0 -0
  80. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_firewall_policies.py +0 -0
  81. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_foundry_logscale.py +0 -0
  82. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_host_group.py +0 -0
  83. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_hosts.py +0 -0
  84. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_identity_protection.py +0 -0
  85. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_image_assessment_policies.py +0 -0
  86. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_incidents.py +0 -0
  87. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_installation_tokens.py +0 -0
  88. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_intel.py +0 -0
  89. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_ioa_exclusions.py +0 -0
  90. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_ioc.py +0 -0
  91. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_iocs.py +0 -0
  92. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_malquery.py +0 -0
  93. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_ml_exclusions.py +0 -0
  94. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_mobile_enrollment.py +0 -0
  95. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_mssp.py +0 -0
  96. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_oauth2.py +0 -0
  97. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_ods.py +0 -0
  98. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_overwatch_dashboard.py +0 -0
  99. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_prevention_policies.py +0 -0
  100. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_quarantine.py +0 -0
  101. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_quick_scan.py +0 -0
  102. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_real_time_response.py +0 -0
  103. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_real_time_response_admin.py +0 -0
  104. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_real_time_response_audit.py +0 -0
  105. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_recon.py +0 -0
  106. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_report_executions.py +0 -0
  107. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_response_policies.py +0 -0
  108. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_sample_uploads.py +0 -0
  109. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_scheduled_reports.py +0 -0
  110. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_sensor_download.py +0 -0
  111. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_sensor_update_policies.py +0 -0
  112. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_sensor_visibility_exclusions.py +0 -0
  113. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_spotlight_evaluation_logic.py +0 -0
  114. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_spotlight_vulnerabilities.py +0 -0
  115. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_tailored_intelligence.py +0 -0
  116. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_unidentified_containers.py +0 -0
  117. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_user_management.py +0 -0
  118. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_workflows.py +0 -0
  119. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/_zero_trust_assessment.py +0 -0
  120. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/__init__.py +0 -0
  121. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_custom_ioa.py +0 -0
  122. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_d4c_registration.py +0 -0
  123. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_discover.py +0 -0
  124. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_fdr.py +0 -0
  125. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_firewall_management.py +0 -0
  126. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_hosts.py +0 -0
  127. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_identity_protection.py +0 -0
  128. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_installation_tokens.py +0 -0
  129. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_ioc.py +0 -0
  130. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_iocs.py +0 -0
  131. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_mapping.py +0 -0
  132. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_ods.py +0 -0
  133. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_real_time_response.py +0 -0
  134. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_real_time_response_admin.py +0 -0
  135. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_report_executions.py +0 -0
  136. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_scheduled_reports.py +0 -0
  137. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_endpoint/deprecated/_zero_trust_assessment.py +0 -0
  138. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_enum/__init__.py +0 -0
  139. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_enum/_base_url.py +0 -0
  140. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_enum/_container_base_url.py +0 -0
  141. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_enum/_token_fail_reason.py +0 -0
  142. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_error/__init__.py +0 -0
  143. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_error/_exceptions.py +0 -0
  144. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_error/_warnings.py +0 -0
  145. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_log/__init__.py +0 -0
  146. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_log/_facility.py +0 -0
  147. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/__init__.py +0 -0
  148. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_alerts.py +0 -0
  149. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_cloud_connect_aws.py +0 -0
  150. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_cloud_snapshots.py +0 -0
  151. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_container.py +0 -0
  152. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_cspm_registration.py +0 -0
  153. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_d4c_registration.py +0 -0
  154. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_detects.py +0 -0
  155. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_device_control_policy.py +0 -0
  156. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_falconx.py +0 -0
  157. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_firewall.py +0 -0
  158. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_foundry.py +0 -0
  159. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_generic.py +0 -0
  160. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_host_group.py +0 -0
  161. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_incidents.py +0 -0
  162. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_ioa.py +0 -0
  163. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_ioc.py +0 -0
  164. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_malquery.py +0 -0
  165. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_message_center.py +0 -0
  166. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_mssp.py +0 -0
  167. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_ods.py +0 -0
  168. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_prevention_policy.py +0 -0
  169. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_real_time_response.py +0 -0
  170. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_recon.py +0 -0
  171. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_reports.py +0 -0
  172. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_response_policy.py +0 -0
  173. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_sample_uploads.py +0 -0
  174. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_sensor_update_policy.py +0 -0
  175. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_payload/_workflows.py +0 -0
  176. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/__base_resource.py +0 -0
  177. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/__init__.py +0 -0
  178. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_base_dictionary.py +0 -0
  179. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_errors.py +0 -0
  180. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_expanded_result.py +0 -0
  181. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_headers.py +0 -0
  182. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_meta.py +0 -0
  183. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_resources.py +0 -0
  184. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_response_component.py +0 -0
  185. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_result/_result.py +0 -0
  186. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_service_class/__init__.py +0 -0
  187. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_service_class/_base_service_class.py +0 -0
  188. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_util/_service.py +0 -0
  189. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/_util/_uber.py +0 -0
  190. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/alerts.py +0 -0
  191. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/api_complete/__init__.py +0 -0
  192. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/api_complete/_advanced.py +0 -0
  193. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/api_complete/_legacy.py +0 -0
  194. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/cloud_connect_aws.py +0 -0
  195. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/cloud_snapshots.py +0 -0
  196. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/configuration_assessment.py +0 -0
  197. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/configuration_assessment_evaluation_logic.py +0 -0
  198. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/container_alerts.py +0 -0
  199. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/container_detections.py +0 -0
  200. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/container_images.py +0 -0
  201. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/container_packages.py +0 -0
  202. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/container_vulnerabilities.py +0 -0
  203. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/custom_ioa.py +0 -0
  204. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/custom_storage.py +0 -0
  205. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/debug.py +0 -0
  206. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/detects.py +0 -0
  207. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/device_control_policies.py +0 -0
  208. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/discover.py +0 -0
  209. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/drift_indicators.py +0 -0
  210. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/event_streams.py +0 -0
  211. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/falcon_complete_dashboard.py +0 -0
  212. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/falcon_container.py +0 -0
  213. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/falconx_sandbox.py +0 -0
  214. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/fdr.py +0 -0
  215. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/firewall_management.py +0 -0
  216. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/firewall_policies.py +0 -0
  217. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/foundry_logscale.py +0 -0
  218. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/host_group.py +0 -0
  219. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/hosts.py +0 -0
  220. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/identity_protection.py +0 -0
  221. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/image_assessment_policies.py +0 -0
  222. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/incidents.py +0 -0
  223. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/installation_tokens.py +0 -0
  224. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/intel.py +0 -0
  225. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/ioa_exclusions.py +0 -0
  226. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/ioc.py +0 -0
  227. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/iocs.py +0 -0
  228. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/malquery.py +0 -0
  229. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/message_center.py +0 -0
  230. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/ml_exclusions.py +0 -0
  231. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/mobile_enrollment.py +0 -0
  232. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/mssp.py +0 -0
  233. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/oauth2.py +0 -0
  234. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/ods.py +0 -0
  235. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/overwatch_dashboard.py +0 -0
  236. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/prevention_policy.py +0 -0
  237. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/quarantine.py +0 -0
  238. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/quick_scan.py +0 -0
  239. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/real_time_response.py +0 -0
  240. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/real_time_response_admin.py +0 -0
  241. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/real_time_response_audit.py +0 -0
  242. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/recon.py +0 -0
  243. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/report_executions.py +0 -0
  244. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/response_policies.py +0 -0
  245. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/sample_uploads.py +0 -0
  246. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/scheduled_reports.py +0 -0
  247. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/sensor_download.py +0 -0
  248. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/sensor_update_policy.py +0 -0
  249. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/sensor_visibility_exclusions.py +0 -0
  250. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/spotlight_evaluation_logic.py +0 -0
  251. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/spotlight_vulnerabilities.py +0 -0
  252. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/tailored_intelligence.py +0 -0
  253. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/unidentified_containers.py +0 -0
  254. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/user_management.py +0 -0
  255. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/src/falconpydev/zero_trust_assessment.py +0 -0
  256. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_alerts.py +0 -0
  257. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_api_request.py +0 -0
  258. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_authorization.py +0 -0
  259. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_cloud_connect_aws.py +0 -0
  260. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_cloud_snapshots.py +0 -0
  261. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_configuration_assessment.py +0 -0
  262. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_configuration_assessment_evaluation_logic.py +0 -0
  263. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_container_alerts.py +0 -0
  264. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_container_images.py +0 -0
  265. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_custom_ioa.py +0 -0
  266. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_custom_storage.py +0 -0
  267. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_detects.py +0 -0
  268. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_device_control_policies.py +0 -0
  269. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_discover.py +0 -0
  270. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_event_streams.py +0 -0
  271. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_falcon_complete_dashboard.py +0 -0
  272. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_falcon_container.py +0 -0
  273. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_falconx_sandbox.py +0 -0
  274. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_fdr.py +0 -0
  275. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_filevantage.py +0 -0
  276. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_firewall_management.py +0 -0
  277. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_firewall_policies.py +0 -0
  278. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_foundry_logscale.py +0 -0
  279. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_host_group.py +0 -0
  280. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_hosts.py +0 -0
  281. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_identity_protection.py +0 -0
  282. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_image_assessment_policies.py +0 -0
  283. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_incidents.py +0 -0
  284. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_installation_tokens.py +0 -0
  285. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_intel.py +0 -0
  286. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_ioa_exclusions.py +0 -0
  287. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_ioc.py +0 -0
  288. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_iocs.py +0 -0
  289. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_kubernetes_protection.py +0 -0
  290. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_malquery.py +0 -0
  291. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_message_center.py +0 -0
  292. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_ml_exclusions.py +0 -0
  293. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_mobile_enrollment.py +0 -0
  294. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_mssp.py +0 -0
  295. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_ods.py +0 -0
  296. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_overwatch_dashboard.py +0 -0
  297. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_prevention_policy.py +0 -0
  298. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_quarantine.py +0 -0
  299. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_quick_scan.py +0 -0
  300. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_real_time_response.py +0 -0
  301. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_real_time_response_admin.py +0 -0
  302. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_real_time_response_audit.py +0 -0
  303. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_recon.py +0 -0
  304. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_report_executions.py +0 -0
  305. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_response_policies.py +0 -0
  306. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_sample_uploads.py +0 -0
  307. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_scheduled_reports.py +0 -0
  308. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_sensor_download.py +0 -0
  309. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_sensor_update_policy.py +0 -0
  310. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_sensor_visibility_exclusions.py +0 -0
  311. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_service_class.py +0 -0
  312. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_spotlight_evaluation_logic.py +0 -0
  313. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_spotlight_vulnerabilities.py +0 -0
  314. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_tailored_intelligence.py +0 -0
  315. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_timeout.py +0 -0
  316. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_uber_api_complete.py +0 -0
  317. {crowdstrike-falconpy-dev-1.4.2 → crowdstrike-falconpy-dev-1.4.3}/tests/test_user_management.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: crowdstrike-falconpy-dev
3
- Version: 1.4.2
3
+ Version: 1.4.3
4
4
  Summary: The CrowdStrike Falcon SDK for Python 3
5
5
  Home-page: https://github.com/CrowdStrike/falconpy
6
6
  Author: CrowdStrike
@@ -36,9 +36,18 @@ Classifier: Topic :: System :: Systems Administration
36
36
  Classifier: Topic :: Utilities
37
37
  Requires-Python: >=3.6
38
38
  Description-Content-Type: text/markdown
39
- Provides-Extra: dev
40
39
  License-File: LICENSE
41
40
  License-File: AUTHORS.md
41
+ Requires-Dist: requests
42
+ Requires-Dist: urllib3
43
+ Provides-Extra: dev
44
+ Requires-Dist: flake8; extra == "dev"
45
+ Requires-Dist: coverage; extra == "dev"
46
+ Requires-Dist: pydocstyle; extra == "dev"
47
+ Requires-Dist: pylint; extra == "dev"
48
+ Requires-Dist: pytest-cov; extra == "dev"
49
+ Requires-Dist: pytest; extra == "dev"
50
+ Requires-Dist: bandit; extra == "dev"
42
51
 
43
52
  ![CrowdStrike FalconPy](https://raw.githubusercontent.com/CrowdStrike/falconpy/main/docs/asset/cs-logo.png)
44
53
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: crowdstrike-falconpy-dev
3
- Version: 1.4.2
3
+ Version: 1.4.3
4
4
  Summary: The CrowdStrike Falcon SDK for Python 3
5
5
  Home-page: https://github.com/CrowdStrike/falconpy
6
6
  Author: CrowdStrike
@@ -36,9 +36,18 @@ Classifier: Topic :: System :: Systems Administration
36
36
  Classifier: Topic :: Utilities
37
37
  Requires-Python: >=3.6
38
38
  Description-Content-Type: text/markdown
39
- Provides-Extra: dev
40
39
  License-File: LICENSE
41
40
  License-File: AUTHORS.md
41
+ Requires-Dist: requests
42
+ Requires-Dist: urllib3
43
+ Provides-Extra: dev
44
+ Requires-Dist: flake8; extra == "dev"
45
+ Requires-Dist: coverage; extra == "dev"
46
+ Requires-Dist: pydocstyle; extra == "dev"
47
+ Requires-Dist: pylint; extra == "dev"
48
+ Requires-Dist: pytest-cov; extra == "dev"
49
+ Requires-Dist: pytest; extra == "dev"
50
+ Requires-Dist: bandit; extra == "dev"
42
51
 
43
52
  ![CrowdStrike FalconPy](https://raw.githubusercontent.com/CrowdStrike/falconpy/main/docs/asset/cs-logo.png)
44
53
 
@@ -41,11 +41,7 @@ For more information, please refer to <https://unlicense.org>
41
41
  import time
42
42
  import os
43
43
  import warnings
44
- from json import loads
45
- try:
46
- from simplejson import JSONDecodeError
47
- except (ImportError, ModuleNotFoundError): # Support import as a module
48
- from json.decoder import JSONDecodeError
44
+ from contextvars import copy_context
49
45
  from logging import Logger, getLogger
50
46
  from typing import Dict, Optional, Union
51
47
  from ._base_falcon_auth import BaseFalconAuth
@@ -56,21 +52,23 @@ from ._interface_config import InterfaceConfiguration
56
52
  from .._enum import TokenFailReason
57
53
  from .._util import (
58
54
  autodiscover_region,
55
+ confirm_base_url,
59
56
  perform_request,
60
57
  log_class_startup,
61
58
  login_payloads,
62
- logout_payloads
59
+ logout_payloads,
60
+ review_provided_credentials
63
61
  )
64
- from .._error import InvalidCredentials, NoAuthenticationMechanism, InvalidCredentialFormat
62
+ from .._error import InvalidCredentials, NoAuthenticationMechanism
65
63
 
66
64
 
67
- # pylint: disable=R0902
65
+ # pylint: disable=R0902,R0904
68
66
  class FalconInterface(BaseFalconAuth):
69
67
  """Standard Falcon API interface used by Service Classes."""
70
68
 
71
- # ____ ____ _ _ ____ ___ ____ _ _ ____ ___ ____ ____
72
- # | | | |\ | [__ | |__/ | | | | | | |__/
73
- # |___ |__| | \| ___] | | \ |__| |___ | |__| | \
69
+ # _______ _____ __ _ _______ _______ ______ _ _ _______ _______ _____ ______
70
+ # | | | | \ | |______ | |_____/ | | | | | | |_____/
71
+ # |_____ |_____| | \_| ______| | | \_ |_____| |_____ | |_____| | \_
74
72
  #
75
73
  # The default constructor for all authentication objects. Ingests provided credentials
76
74
  # and sets the necessary class attributes based upon the authentication detail received.
@@ -99,12 +97,6 @@ class FalconInterface(BaseFalconAuth):
99
97
  if isinstance(pythonic, bool):
100
98
  self._pythonic = pythonic
101
99
 
102
- # The default credential dictionary, where the client_id and client_secret are stored.
103
- self._creds = {}
104
-
105
- # Set up an empty Bearer Token container
106
- self._token: BearerToken = BearerToken()
107
-
108
100
  # Setup our configuration object using the provided keywords.
109
101
  self._config: InterfaceConfiguration = InterfaceConfiguration(base_url=base_url,
110
102
  proxy=proxy,
@@ -115,44 +107,80 @@ class FalconInterface(BaseFalconAuth):
115
107
  # ____ _ _ ___ _ _ ____ _ _ ___ _ ____ ____ ___ _ ____ _ _ |
116
108
  # |__| | | | |__| |___ |\ | | | | |__| | | | | |\ | / \
117
109
  # | | |__| | | | |___ | \| | | |___ | | | | |__| | \|
118
- # Direct Authentication
119
- if client_id and client_secret and not creds:
120
- creds = {
121
- "client_id": client_id,
122
- "client_secret": client_secret
123
- }
124
- # You must pass member_cid the same way you pass client_id / secret.
125
- # If you use a creds dictionary, pass the member_cid there instead.
126
- if member_cid:
127
- creds["member_cid"] = member_cid
128
- elif not creds:
129
- creds = {}
130
- # Credential Authentication (also powers Direct Authentication).
131
- if isinstance(creds, str):
132
- try:
133
- # Try and clean up any attempts to provide the dictionary as a string
134
- self._creds: Dict[str, str] = loads(creds.replace("'", "\""))
135
- except (TypeError, JSONDecodeError) as bad_cred_format:
136
- raise InvalidCredentialFormat from bad_cred_format
137
- elif isinstance(creds, dict):
138
- self._creds: Dict[str, str] = creds
139
- else:
140
- raise InvalidCredentialFormat
141
-
142
- # Legacy (Token) Authentication (fallback)
143
- if access_token:
144
- # Store this non-refreshable token, assuming it was just generated.
145
- self._token: BearerToken = BearerToken(access_token, 1799, 201)
146
-
147
- # Set the token renewal window, ignored when using Legacy Authentication.
148
- self.renew_window: int = max(min(renew_window, MAX_TOKEN_RENEW_WINDOW),
149
- MIN_TOKEN_RENEW_WINDOW
150
- )
110
+ #
111
+ # Assume no credentials or tokens are provided.
112
+ # A NoAuthenticationMechanism warning will be generated if a
113
+ # valid authentication mechanism is not specified or detected.
114
+ #
115
+ # Then try to authenticate in the following order:
116
+ # 1. Direct
117
+ # 2. Credential
118
+ # 3. Token (Legacy)
119
+ # 4. Context (Foundry)
120
+ # 5. Environment
121
+ #
122
+ # Remaining authentication checks are skipped once a successful mechanism has been determined.
123
+ #
124
+ # Object Authentication is handled within the ServiceClass object and leverages the existing
125
+ # authentication used for the underlying authentication object attribute.
126
+
127
+ # Set up an empty Bearer Token container.
128
+ self._token: BearerToken = BearerToken()
151
129
 
152
- # Environment Authentication
153
- # User configuration environment keys
130
+ # ___ _ ____ ____ ____ ___ ____ _ _ ___ ____ ____ ____ ___ ____ _ _ ___ _ ____ _
131
+ # | \ | |__/ |___ | | |__| |\ | | \ | |__/ |___ | \ |___ |\ | | | |__| |
132
+ # |__/ | | \ |___ |___ | | | | \| |__/ |___ | \ |___ |__/ |___ | \| | | | | |___
133
+ #
134
+ # Direct Authentication checks provided values and return a creds dictionary based upon the contents.
135
+ # Authorization is derived from the bearer token generated using the provided credentials.
136
+ self._creds, self._auth_style = review_provided_credentials(client_id, client_secret, creds, member_cid)
137
+
138
+ # ___ ____ _ _ ____ _ _
139
+ # | | | |_/ |___ |\ |
140
+ # | |__| | \_ |___ | \|
141
+ #
142
+ # Token (Legacy) Authentication
143
+ # Authorization is derived from the provided bearer token.
144
+ # A login event is unnecessary when using this authentication mechanism.
145
+ if not self.cred_format_valid:
146
+ if access_token:
147
+ # Store this non-refreshable token, assuming it was just generated.
148
+ self._token: BearerToken = BearerToken(access_token, 1799, 201)
149
+ self._auth_style = "TOKEN"
150
+
151
+ # ____ ____ _ _ ___ ____ _ _ ___
152
+ # | | | |\ | | |___ \/ |
153
+ # |___ |__| | \| | |___ _/\_ |
154
+ #
155
+ # Context Authentication searches the current running context for
156
+ # an object containing a bearer token as an attribute or property.
157
+ # Authorization is derived from the discovered bearer token.
158
+ # A login event is unnecessary when using this authentication mechanism.
159
+ if not self.cred_format_valid and not self.token_value:
160
+ for cvar in copy_context().values():
161
+ try:
162
+ # Any object is acceptable as long as it has an attribute or property named "access_token".
163
+ self._token: BearerToken = BearerToken(cvar.access_token, 1799, 201)
164
+ # Attempt to retrieve the cloud region from the same object.
165
+ # Fall back to our previously set default on failure.
166
+ try:
167
+ if cvar.cs_cloud:
168
+ self._config.base_url = confirm_base_url(cvar.cs_cloud)
169
+ except AttributeError:
170
+ pass
171
+ self._auth_style = "CONTEXT"
172
+ break
173
+ except AttributeError:
174
+ pass
175
+
176
+ # ____ _ _ _ _ _ ____ ____ _ _ _ _ ____ _ _ ___
177
+ # |___ |\ | | | | |__/ | | |\ | |\/| |___ |\ | |
178
+ # |___ | \| \/ | | \ |__| | \| | | |___ | \| |
179
+ #
180
+ # Environment Authentication searches the current environment for variables containing credentials.
181
+ # Authorization is derived from the bearer token generated using the discovered credentials.
182
+ # Developers may customize which variable names are searched by leveraging the environment keyword (dictionary).
154
183
  self._environment = environment if environment else {}
155
- # When credentials are not provided, attempt to retrieve them from the environment.
156
184
  if not self.cred_format_valid and not self.token_value:
157
185
  # Both variables must be present within the running environment.
158
186
  if os.getenv(f"{self.env_prefix}{self.env_key}") and os.getenv(f"{self.env_prefix}{self.env_secret}"):
@@ -168,7 +196,17 @@ class FalconInterface(BaseFalconAuth):
168
196
  # Provide member_cid for MSSP environment authentication scenarios. Issue #1105.
169
197
  if member_cid:
170
198
  self._creds["member_cid"] = member_cid
199
+ self._auth_style = "ENVIRONMENT"
200
+
201
+ # Set the token renewal window, ignored when using Legacy or Context Authentication.
202
+ self.renew_window: int = max(min(renew_window, MAX_TOKEN_RENEW_WINDOW),
203
+ MIN_TOKEN_RENEW_WINDOW
204
+ )
171
205
 
206
+ # _ ____ ____ ____ _ _ _ ____
207
+ # | | | | __ | __ | |\ | | __
208
+ # |___ |__| |__] |__] | | \| |__]
209
+ #
172
210
  # Log the creation of this object if debugging is enabled.
173
211
  # Starting with v1.3.0 minimal Python native logging is available. In order to reduce
174
212
  # potential impacts to developer configurations, this facility is extremely limited
@@ -190,27 +228,34 @@ class FalconInterface(BaseFalconAuth):
190
228
  # Set up an empty log facility
191
229
  self._log: LogFacility = LogFacility()
192
230
 
231
+ # _ _ ____ _ _ ___ ____ ___ ____
232
+ # | | |__| | | | \ |__| | |___
233
+ # \/ | | |___ | |__/ | | | |___
234
+ #
235
+ # Validation occurs after the logging object is created.
193
236
  try:
237
+ # Check to see if we have a valid authentication mechanism configured.
194
238
  if not self.cred_format_valid and not self.token_value:
195
239
  raise NoAuthenticationMechanism
196
240
  except NoAuthenticationMechanism as no_auth_mechanism:
241
+ # Warn appropriately if we do not.
197
242
  if pythonic:
198
243
  warnings.warn(no_auth_mechanism.message, NoAuthenticationMechanism, stacklevel=2)
199
244
  if self.log:
200
245
  self.log.warning(no_auth_mechanism.message)
201
246
 
202
- # _ _ ____ ___ _ _ ____ ___ ____
203
- # |\/| |___ | |__| | | | \ [__
204
- # | | |___ | | | |__| |__/ ___]
247
+ # _______ _______ _______ _ _ _____ ______ _______
248
+ # | | | |______ | |_____| | | | \ |______
249
+ # | | | |______ | | | |_____| |_____/ ______|
205
250
  #
206
251
  # The generic login and logout handlers are provided here and leverage private methods
207
252
  # to perform the operation. These private methods can be overridden to provide individual
208
253
  # login and logout functionality to different inheriting class types.
209
- def login(self) -> dict or bool:
254
+ def login(self) -> Union[dict, bool]:
210
255
  """Login to the Falcon API by requesting a new token."""
211
256
  return self._login_handler()
212
257
 
213
- def logout(self) -> dict or bool:
258
+ def logout(self) -> Union[dict, bool]:
214
259
  """Log out of the Falcon API by revoking the current token."""
215
260
  return self._logout_handler()
216
261
 
@@ -301,9 +346,9 @@ class FalconInterface(BaseFalconAuth):
301
346
 
302
347
  return returned
303
348
 
304
- # ___ ____ ____ ___ ____ ____ ___ _ ____ ____
305
- # |__] |__/ | | |__] |___ |__/ | | |___ [__
306
- # | | \ |__| | |___ | \ | | |___ ___]
349
+ # _____ ______ _____ _____ _______ ______ _______ _____ _______ _______
350
+ # |_____] |_____/ | | |_____] |______ |_____/ | | |______ |______
351
+ # | | \_ |_____| | |______ | \_ | __|__ |______ ______|
307
352
  #
308
353
  # These properties are present in all FalconInterface derivatives.
309
354
  @property
@@ -329,47 +374,47 @@ class FalconInterface(BaseFalconAuth):
329
374
  @property
330
375
  def base_url(self) -> str:
331
376
  """Return the base URL for this interface from the configuration object."""
332
- return self._config.base_url
377
+ return self.config.base_url
333
378
 
334
379
  @base_url.setter
335
380
  def base_url(self, value):
336
- self._config.base_url = value
381
+ self.config.base_url = value
337
382
 
338
383
  @property
339
384
  def ssl_verify(self) -> bool:
340
385
  """Return the SSL verification setting from the configuration object."""
341
- return self._config.ssl_verify
386
+ return self.config.ssl_verify
342
387
 
343
388
  @ssl_verify.setter
344
389
  def ssl_verify(self, value: bool):
345
- self._config.ssl_verify = value
390
+ self.config.ssl_verify = value
346
391
 
347
392
  @property
348
393
  def proxy(self) -> Dict[str, str]:
349
394
  """Return the current proxy setting."""
350
- return self._config.proxy
395
+ return self.config.proxy
351
396
 
352
397
  @proxy.setter
353
398
  def proxy(self, value: Dict[str, str]):
354
- self._config.proxy = value
399
+ self.config.proxy = value
355
400
 
356
401
  @property
357
402
  def user_agent(self) -> str:
358
403
  """Return the current user agent setting."""
359
- return self._config.user_agent
404
+ return self.config.user_agent
360
405
 
361
406
  @user_agent.setter
362
407
  def user_agent(self, value: str):
363
- self._config.user_agent = value
408
+ self.config.user_agent = value
364
409
 
365
410
  @property
366
411
  def timeout(self) -> Union[int, tuple]:
367
412
  """Return the current timeout setting."""
368
- return self._config.timeout
413
+ return self.config.timeout
369
414
 
370
415
  @timeout.setter
371
416
  def timeout(self, value: Union[int, tuple]):
372
- self._config.timeout = value
417
+ self.config.timeout = value
373
418
 
374
419
  @property
375
420
  def debug_record_count(self) -> int:
@@ -454,6 +499,16 @@ class FalconInterface(BaseFalconAuth):
454
499
  def token_value(self, value: str):
455
500
  self.bearer_token.value = value
456
501
 
502
+ @property
503
+ def pythonic(self) -> bool:
504
+ """Return a boolean if we are in a pythonic mode."""
505
+ return self._pythonic
506
+
507
+ @pythonic.setter
508
+ def pythonic(self, value: bool):
509
+ """Enable or disable pythonic mode."""
510
+ self._pythonic = value
511
+
457
512
  # All properties defined here are by design IMMUTABLE.
458
513
  @property
459
514
  def refreshable(self) -> bool:
@@ -504,16 +559,6 @@ class FalconInterface(BaseFalconAuth):
504
559
  """Return a boolean if we are in a debug mode."""
505
560
  return bool(self.log)
506
561
 
507
- @property
508
- def pythonic(self) -> bool:
509
- """Return a boolean if we are in a pythonic mode."""
510
- return self._pythonic
511
-
512
- @pythonic.setter
513
- def pythonic(self, value: bool):
514
- """Enable or disable pythonic mode."""
515
- self._pythonic = value
516
-
517
562
  @property
518
563
  def env_prefix(self) -> str:
519
564
  """Return the environment prefix."""
@@ -528,3 +573,8 @@ class FalconInterface(BaseFalconAuth):
528
573
  def env_secret(self) -> str:
529
574
  """Return the environment API key secret."""
530
575
  return self._environment.get("secret_name", "CLIENT_SECRET")
576
+
577
+ @property
578
+ def auth_style(self) -> str:
579
+ """Return the authentication mechanism used to instantiate this object."""
580
+ return self._auth_style
@@ -249,10 +249,10 @@ _container_images_endpoints = [
249
249
  },
250
250
  {
251
251
  "type": "string",
252
- "description": "The fields to sort the records on. Supported columns: [base_os cid containers "
253
- "detections firstScanned first_seen highest_cps_current_rating highest_detection_severity "
254
- "highest_vulnerability_severity image_digest image_id last_seen layers_with_vulnerabilities packages registry "
255
- "repository tag vulnerabilities]",
252
+ "description": "The fields to sort the records on. Supported columns: [base_os cid detections "
253
+ "firstScanned first_seen highest_cps_current_rating highest_detection_severity highest_vulnerability_severity "
254
+ "image_digest image_id last_seen layers_with_vulnerabilities packages registry repository tag "
255
+ "vulnerabilities]",
256
256
  "name": "sort",
257
257
  "in": "query"
258
258
  }
@@ -767,6 +767,20 @@ _cspm_registration_endpoints = [
767
767
  }
768
768
  ]
769
769
  ],
770
+ [
771
+ "UpdateCSPMGCPServiceAccountsExt",
772
+ "PATCH",
773
+ "/cloud-connect-cspm-gcp/entities/service-accounts/v1",
774
+ "Patches the service account key for external clients.",
775
+ "cspm_registration",
776
+ [
777
+ {
778
+ "name": "body",
779
+ "in": "body",
780
+ "required": True
781
+ }
782
+ ]
783
+ ],
770
784
  [
771
785
  "ValidateCSPMGCPServiceAccountExt",
772
786
  "POST",
@@ -1161,10 +1175,10 @@ _cspm_registration_endpoints = [
1161
1175
  [
1162
1176
  {
1163
1177
  "type": "string",
1164
- "description": "Available filters: use_current_scan_ids - *use this to get records for latest scans*\n "
1165
- "account_name\naccount_id\nagent_id\nattack_types\nazure_subscription_id\ncloud_provider\ncloud_service_keyword "
1166
- "\ncustom_policy_id\nis_managed\npolicy_id\npolicy_type\nresource_id\nregion\nstatus\nscan_time\nseverity\nseve "
1167
- "rity_string\n",
1178
+ "description": "use_current_scan_ids - *use this to get records for latest scans (ignored when "
1179
+ "next_token is set)*\naccount_name\naccount_id\nagent_id\nattack_types\nazure_subscription_id\ncloud_provider\n "
1180
+ "cloud_service_keyword\ncustom_policy_id\nis_managed\npolicy_id\npolicy_type\nresource_id\nregion\nstatus\nscan "
1181
+ "_time\nseverity\nseverity_string\n",
1168
1182
  "name": "filter",
1169
1183
  "in": "query"
1170
1184
  },
@@ -541,6 +541,20 @@ _d4c_registration_endpoints = [
541
541
  }
542
542
  ]
543
543
  ],
544
+ [
545
+ "UpdateD4CGCPServiceAccountsExt",
546
+ "PATCH",
547
+ "/cloud-connect-gcp/entities/service-accounts/v1",
548
+ "Patches the service account key for external clients.",
549
+ "d4c_registration",
550
+ [
551
+ {
552
+ "name": "body",
553
+ "in": "body",
554
+ "required": True
555
+ }
556
+ ]
557
+ ],
544
558
  [
545
559
  "GetD4CGCPUserScriptsAttachment",
546
560
  "GET",
@@ -445,10 +445,10 @@ _filevantage_endpoints = [
445
445
  " be monitored. Listed files must match the file include pattern and not match the file exclude pattern\n\n * "
446
446
  "`content_registry_values` represents the registry values whose content will be monitored. Listed registry "
447
447
  "values must match the registry include pattern and not match the registry exclude pattern\n\n * "
448
- "`enable_content_capture`\n\nFile system directory monitoring:\n\n * `watch_delete_directory_changes`\n\n * "
449
- "`watch_create_directory_changes`\n\n * `watch_rename_directory_changes`\n\n * "
450
- "`watch_attributes_directory_changes` (`macOS` is not supported at this time)\n\n * "
451
- "`watch_permissions_directory_changes` (`macOS` is not supported at this time)\n\nFile system file "
448
+ "`enable_content_capture`\n\n * `enable_hash_capture`\n\nFile system directory monitoring:\n\n * "
449
+ "`watch_delete_directory_changes`\n\n * `watch_create_directory_changes`\n\n * "
450
+ "`watch_rename_directory_changes`\n\n * `watch_attributes_directory_changes` (`macOS` is not supported at this "
451
+ "time)\n\n * `watch_permissions_directory_changes` (`macOS` is not supported at this time)\n\nFile system file "
452
452
  "monitoring:\n\n * `watch_rename_file_changes`\n\n * `watch_write_file_changes`\n\n * "
453
453
  "`watch_create_file_changes`\n\n * `watch_delete_file_changes`\n\n * `watch_attributes_file_changes` (`macOS` "
454
454
  "is not supported at this time)\n\n * `watch_permissions_file_changes` (`macOS` is not supported at this "
@@ -488,10 +488,10 @@ _filevantage_endpoints = [
488
488
  "files that will be monitored. Listed files must match the file include pattern and not match the file exclude "
489
489
  "pattern\n\n * `content_registry_values` represents the registry values whose content will be monitored. Listed "
490
490
  " registry values must match the registry include pattern and not match the registry exclude pattern\n\n * "
491
- "`enable_content_capture`\n\nFile system directory monitoring:\n\n * `watch_delete_directory_changes`\n\n * "
492
- "`watch_create_directory_changes`\n\n * `watch_rename_directory_changes`\n\n * "
493
- "`watch_attributes_directory_changes` (`macOS` is not supported at this time)\n\n * "
494
- "`watch_permissions_directory_changes` (`macOS` is not supported at this time)\n\nFile system file "
491
+ "`enable_content_capture`\n\n * `enable_hash_capture`\n\nFile system directory monitoring:\n\n * "
492
+ "`watch_delete_directory_changes`\n\n * `watch_create_directory_changes`\n\n * "
493
+ "`watch_rename_directory_changes`\n\n * `watch_attributes_directory_changes` (`macOS` is not supported at this "
494
+ "time)\n\n * `watch_permissions_directory_changes` (`macOS` is not supported at this time)\n\nFile system file "
495
495
  "monitoring:\n\n * `watch_rename_file_changes`\n\n * `watch_write_file_changes`\n\n * "
496
496
  "`watch_create_file_changes`\n\n * `watch_delete_file_changes`\n\n * `watch_attributes_file_changes` (`macOS` "
497
497
  "is not supported at this time)\n\n * `watch_permissions_file_changes` (`macOS` is not supported at this "
@@ -57,8 +57,8 @@ _kubernetes_protection_endpoints = [
57
57
  "type": "string",
58
58
  "description": "Retrieve count of Kubernetes clusters that match a query in Falcon Query Language "
59
59
  "(FQL). Supported filters: access,agent_status,cid,cloud_account_id,cloud_name,cloud_region,cluster_id,cluster"
60
- "_name,cluster_status,container_count,kubernetes_version,last_seen, management_status, node_count, pod_count, "
61
- "tags",
60
+ "_name,cluster_status,container_count,iar_coverage,kubernetes_version,last_seen, management_status, node_count,"
61
+ "pod_count, tags",
62
62
  "name": "filter",
63
63
  "in": "query"
64
64
  }
@@ -75,8 +75,8 @@ _kubernetes_protection_endpoints = [
75
75
  "type": "string",
76
76
  "description": "Retrieve count of Kubernetes clusters that match a query in Falcon Query Language "
77
77
  "(FQL). Supported filters: access,agent_status,cid,cloud_account_id,cloud_name,cloud_region,cluster_id,cluster"
78
- "_name,cluster_status,container_count,kubernetes_version,last_seen, management_status, node_count, pod_count, "
79
- "tags",
78
+ "_name,cluster_status,container_count,iar_coverage,kubernetes_version,last_seen, management_status, node_count,"
79
+ "pod_count, tags",
80
80
  "name": "filter",
81
81
  "in": "query"
82
82
  }
@@ -93,8 +93,8 @@ _kubernetes_protection_endpoints = [
93
93
  "type": "string",
94
94
  "description": "Retrieve count of Kubernetes clusters that match a query in Falcon Query Language "
95
95
  "(FQL). Supported filters: access,agent_status,cid,cloud_account_id,cloud_name,cloud_region,cluster_id,cluster"
96
- "_name,cluster_status,container_count,kubernetes_version,last_seen, management_status, node_count, pod_count, "
97
- "tags",
96
+ "_name,cluster_status,container_count,iar_coverage,kubernetes_version,last_seen, management_status, node_count,"
97
+ "pod_count, tags",
98
98
  "name": "filter",
99
99
  "in": "query"
100
100
  }
@@ -670,7 +670,8 @@ _kubernetes_protection_endpoints = [
670
670
  "type": "string",
671
671
  "description": "Search Kubernetes clusters using a query in Falcon Query Language (FQL). Supported "
672
672
  "filters: access,agent_status,cid,cloud_account_id,cloud_name,cloud_region,cluster_id,cluster_name,cluster_sta"
673
- "tus,container_count,kubernetes_version,last_seen, management_status, node_count, pod_count, tags",
673
+ "tus,container_count,iar_coverage,kubernetes_version,last_seen, management_status, node_count, pod_count, "
674
+ "tags",
674
675
  "name": "filter",
675
676
  "in": "query"
676
677
  },
@@ -196,8 +196,8 @@ _message_center_endpoints = [
196
196
  },
197
197
  {
198
198
  "enum": [
199
- "activity.type.asc",
200
- "activity.type.desc"
199
+ "activity.created_time.asc",
200
+ "activity.created_time.desc"
201
201
  ],
202
202
  "type": "string",
203
203
  "description": "The property to sort on, followed by a dot (.), followed by the sort direction, either "
@@ -118,6 +118,10 @@ def filevantage_rule_payload(passed_keywords: dict) -> dict:
118
118
  "include": "string",
119
119
  "include_processes": "string",
120
120
  "include_users": "string",
121
+ "content_files": "string",
122
+ "content_registry_values": "string",
123
+ "enable_content_capture": boolean,
124
+ "enable_hash_capture": boolean,
121
125
  "modified_timestamp": "string",
122
126
  "path": "string",
123
127
  "precedence": integer,
@@ -146,6 +150,7 @@ def filevantage_rule_payload(passed_keywords: dict) -> dict:
146
150
  keys = ["created_timestamp", "depth", "description", "exclude", "exclude_processes",
147
151
  "exclude_users", "id", "include", "include_processes", "include_users",
148
152
  "modified_timestamp", "path", "rule_group_id", "severity", "type",
153
+ "content_files", "content_registry_values"
149
154
  ]
150
155
  bool_int_keys = ["watch_attributes_directory_changes", "watch_attributes_file_changes",
151
156
  "watch_create_directory_changes", "watch_create_file_changes",
@@ -154,7 +159,8 @@ def filevantage_rule_payload(passed_keywords: dict) -> dict:
154
159
  "watch_delete_value_changes", "watch_permissions_directory_changes",
155
160
  "watch_permissions_file_changes", "watch_rename_directory_changes",
156
161
  "watch_rename_file_changes", "watch_rename_key_changes",
157
- "watch_set_value_changes", "watch_write_file_changes", "precedence"
162
+ "watch_set_value_changes", "watch_write_file_changes", "precedence",
163
+ "enable_content_capture", "enable_hash_capture"
158
164
  ]
159
165
  for key in keys:
160
166
  if passed_keywords.get(key, None):
@@ -73,7 +73,7 @@ class ServiceClass(BaseServiceClass):
73
73
  # provide a solution for maintaining instantiated class specific properties.
74
74
  #
75
75
  def __init__(self: "ServiceClass",
76
- auth_object: Optional[FalconInterface or OAuth2] = None,
76
+ auth_object: Optional[Union[FalconInterface, OAuth2]] = None,
77
77
  default_auth_object_class: Optional[Type[FalconInterface]] = OAuth2,
78
78
  **kwargs
79
79
  ):
@@ -175,6 +175,11 @@ class ServiceClass(BaseServiceClass):
175
175
  if not self.token_status:
176
176
  self.login()
177
177
 
178
+ # Detect if object authentication is being used to instantiate this class.
179
+ self._override_auth_style: str = None
180
+ if isinstance(auth_object, FalconInterface):
181
+ self.auth_style = "OBJECT"
182
+
178
183
  # Log the creation of this Service Class if debugging is enabled.
179
184
  if self.log:
180
185
  log_class_startup(self, self.log)
@@ -321,6 +326,21 @@ class ServiceClass(BaseServiceClass):
321
326
  """Allow the user_agent to be changed for this instance of the class."""
322
327
  self._override_user_agent = value
323
328
 
329
+ @property
330
+ def auth_style(self) -> str:
331
+ """Return the authentication mechanism used for instantiating this class."""
332
+ if self._override_auth_style:
333
+ returned = self._override_auth_style
334
+ else:
335
+ returned = self.auth_object.auth_style
336
+
337
+ return returned
338
+
339
+ @auth_style.setter
340
+ def auth_style(self, value: str):
341
+ """Allow the authentication mechanism to be specified per instance of the class."""
342
+ self._override_auth_style = value
343
+
324
344
  # Override the headers read only property to inject our ext_headers.
325
345
  # The Uber Class accomplishes this functionality differently.
326
346
  @property
@@ -35,7 +35,7 @@ OTHER DEALINGS IN THE SOFTWARE.
35
35
 
36
36
  For more information, please refer to <https://unlicense.org>
37
37
  """
38
- from ._auth import login_payloads, logout_payloads
38
+ from ._auth import login_payloads, logout_payloads, review_provided_credentials
39
39
  from ._functions import (
40
40
  validate_payload,
41
41
  generate_b64cred,
@@ -77,5 +77,5 @@ __all__ = ["create_uber_header_payload", "handle_body_payload_ids", "scrub_targe
77
77
  "confirm_base_region", "return_preferred_default", "base_url_regions",
78
78
  "_ALLOWED_METHODS", "login_payloads", "logout_payloads", "sanitize_dictionary",
79
79
  "calc_content_return", "log_class_startup", "service_override_payload",
80
- "deprecated_operation", "deprecated_class"
80
+ "deprecated_operation", "deprecated_class", "review_provided_credentials"
81
81
  ]