regscale-cli 6.16.0.0__py3-none-any.whl → 6.16.2.0__py3-none-any.whl

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.

Potentially problematic release.


This version of regscale-cli might be problematic. Click here for more details.

Files changed (65) hide show
  1. regscale/__init__.py +1 -1
  2. regscale/core/app/application.py +1 -0
  3. regscale/core/app/internal/login.py +1 -1
  4. regscale/core/app/internal/poam_editor.py +1 -1
  5. regscale/core/app/utils/app_utils.py +1 -1
  6. regscale/core/app/utils/parser_utils.py +2 -2
  7. regscale/integrations/commercial/__init__.py +2 -2
  8. regscale/integrations/commercial/ad.py +1 -1
  9. regscale/integrations/commercial/azure/intune.py +1 -0
  10. regscale/integrations/commercial/grype/__init__.py +3 -0
  11. regscale/integrations/commercial/grype/commands.py +72 -0
  12. regscale/integrations/commercial/grype/scanner.py +390 -0
  13. regscale/integrations/commercial/import_all/import_all_cmd.py +2 -2
  14. regscale/integrations/commercial/nessus/scanner.py +3 -0
  15. regscale/integrations/commercial/opentext/__init__.py +6 -0
  16. regscale/integrations/commercial/opentext/commands.py +77 -0
  17. regscale/integrations/commercial/opentext/scanner.py +449 -85
  18. regscale/integrations/commercial/sap/sysdig/sysdig_scanner.py +4 -0
  19. regscale/integrations/commercial/sap/tenable/click.py +1 -1
  20. regscale/integrations/commercial/sap/tenable/scanner.py +8 -2
  21. regscale/integrations/commercial/tenablev2/click.py +39 -16
  22. regscale/integrations/commercial/trivy/__init__.py +5 -0
  23. regscale/integrations/commercial/trivy/commands.py +74 -0
  24. regscale/integrations/commercial/trivy/scanner.py +276 -0
  25. regscale/integrations/commercial/wizv2/click.py +9 -21
  26. regscale/integrations/commercial/wizv2/scanner.py +2 -1
  27. regscale/integrations/commercial/wizv2/utils.py +146 -70
  28. regscale/integrations/jsonl_scanner_integration.py +869 -0
  29. regscale/integrations/public/fedramp/fedramp_common.py +4 -4
  30. regscale/integrations/public/fedramp/import_workbook.py +1 -1
  31. regscale/integrations/public/fedramp/inventory_items.py +3 -3
  32. regscale/integrations/public/fedramp/poam/scanner.py +51 -44
  33. regscale/integrations/public/fedramp/ssp_logger.py +6 -6
  34. regscale/integrations/scanner_integration.py +268 -64
  35. regscale/models/app_models/mapping.py +3 -3
  36. regscale/models/integration_models/amazon_models/inspector.py +15 -17
  37. regscale/models/integration_models/aqua.py +1 -5
  38. regscale/models/integration_models/cisa_kev_data.json +100 -10
  39. regscale/models/integration_models/ecr_models/ecr.py +2 -6
  40. regscale/models/integration_models/{flat_file_importer.py → flat_file_importer/__init__.py} +7 -4
  41. regscale/models/integration_models/grype_import.py +3 -3
  42. regscale/models/integration_models/prisma.py +3 -3
  43. regscale/models/integration_models/synqly_models/capabilities.json +1 -1
  44. regscale/models/integration_models/synqly_models/connectors/assets.py +1 -0
  45. regscale/models/integration_models/synqly_models/connectors/vulnerabilities.py +2 -0
  46. regscale/models/integration_models/tenable_models/integration.py +46 -10
  47. regscale/models/integration_models/trivy_import.py +1 -1
  48. regscale/models/integration_models/xray.py +1 -1
  49. regscale/models/regscale_models/__init__.py +2 -0
  50. regscale/models/regscale_models/control_implementation.py +18 -44
  51. regscale/models/regscale_models/inherited_control.py +61 -0
  52. regscale/models/regscale_models/issue.py +3 -2
  53. regscale/models/regscale_models/mixins/parent_cache.py +1 -1
  54. regscale/models/regscale_models/regscale_model.py +73 -7
  55. regscale/models/regscale_models/vulnerability.py +61 -8
  56. {regscale_cli-6.16.0.0.dist-info → regscale_cli-6.16.2.0.dist-info}/METADATA +3 -3
  57. {regscale_cli-6.16.0.0.dist-info → regscale_cli-6.16.2.0.dist-info}/RECORD +62 -56
  58. tests/regscale/core/test_logz.py +8 -0
  59. regscale/integrations/commercial/grype.py +0 -165
  60. regscale/integrations/commercial/opentext/click.py +0 -99
  61. regscale/integrations/commercial/trivy.py +0 -162
  62. {regscale_cli-6.16.0.0.dist-info → regscale_cli-6.16.2.0.dist-info}/LICENSE +0 -0
  63. {regscale_cli-6.16.0.0.dist-info → regscale_cli-6.16.2.0.dist-info}/WHEEL +0 -0
  64. {regscale_cli-6.16.0.0.dist-info → regscale_cli-6.16.2.0.dist-info}/entry_points.txt +0 -0
  65. {regscale_cli-6.16.0.0.dist-info → regscale_cli-6.16.2.0.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,13 @@
1
1
  #!/usr/bin/env python3
2
2
  # -*- coding: utf-8 -*-
3
3
  """Model for Vulnerability in the application"""
4
+ import logging
4
5
  from enum import Enum
5
6
  from typing import List, Optional, Union
6
7
  from urllib.parse import urljoin
7
8
  from warnings import warn
8
9
 
9
- from pydantic import ConfigDict, Field
10
+ from pydantic import ConfigDict, Field, field_validator
10
11
  from requests import Response
11
12
 
12
13
  from regscale.core.app.api import Api
@@ -16,6 +17,9 @@ from regscale.models import regscale_models
16
17
  from regscale.models.regscale_models.regscale_model import RegScaleModel
17
18
 
18
19
 
20
+ logger = logging.getLogger("regscale")
21
+
22
+
19
23
  def deprecated(message):
20
24
  def decorator(func):
21
25
  def wrapper(*args, **kwargs):
@@ -48,7 +52,7 @@ class Vulnerability(RegScaleModel):
48
52
 
49
53
  _module_slug = "vulnerability"
50
54
  _unique_fields = [
51
- ["plugInName", "parentId", "parentModule"],
55
+ ["plugInName", "plugInId", "parentId", "parentModule"],
52
56
  ]
53
57
 
54
58
  id: int = 0
@@ -64,14 +68,14 @@ class Vulnerability(RegScaleModel):
64
68
  firstSeen: Optional[str] = None
65
69
  daysOpen: Optional[int] = None
66
70
  dns: Optional[str] = None
67
- ipAddress: Optional[str] = Field(default="")
71
+ ipAddress: Optional[str] = ""
68
72
  mitigated: Optional[bool] = None
69
73
  operatingSystem: Optional[str] = None
70
74
  port: Optional[Union[str, int]] = None
71
75
  protocol: Optional[str] = None
72
76
  severity: Optional[Union[str, VulnerabilitySeverity]] = None
73
77
  plugInName: Optional[str] = None
74
- plugInId: Optional[int] = None
78
+ plugInId: Optional[Union[int, str]] = None
75
79
  cve: Optional[str] = None
76
80
  vprScore: Optional[Union[int, float]] = None
77
81
  exploitAvailable: Optional[bool] = None
@@ -83,11 +87,49 @@ class Vulnerability(RegScaleModel):
83
87
  isPublic: bool = Field(default=False)
84
88
  dateClosed: Optional[str] = None
85
89
  status: Optional[VulnerabilityStatus] = VulnerabilityStatus.Open
90
+ buildVersion: Optional[str] = None
91
+ cvsSv3BaseVector: Optional[str] = None
92
+ cvsSv2BaseVector: Optional[str] = None
93
+ cvsSv2BaseScore: Optional[Union[float, int]] = None
94
+ affectedOS: Optional[str] = None
95
+ packagePath: Optional[str] = None
96
+ imageDigest: Optional[str] = None
97
+ affectedPackages: Optional[str] = None
98
+ installedVersions: Optional[str] = None
99
+ fixedVersions: Optional[str] = None
100
+ fixStatus: Optional[str] = None
101
+
102
+ @field_validator("plugInId")
103
+ def validate_regscale_version_and_plugin_id_type(cls, v: Union[int, str]) -> Union[int, str, None]:
104
+ """
105
+ Validate the RegScale version and if plugInId should be a string or an integer, >= 6.16 is a string
86
106
 
87
- def __eq__(self, other) -> bool:
107
+ :param int v: pluginId value
108
+ :return: The correct type for plugInId depending on the RegScale version, None if unable to determine
109
+ :rtype: Union[int, str, None]
110
+ """
111
+ from packaging.version import Version
112
+
113
+ try:
114
+ regscale_version = cls._get_api_handler().regscale_version
115
+
116
+ if len(regscale_version) >= 10 or Version(regscale_version) >= Version("6.16.0.0"):
117
+ return str(v) if v else None
118
+ else:
119
+ if isinstance(v, str):
120
+ return int(v) if v.isdigit() else None
121
+ elif isinstance(v, int):
122
+ return v
123
+ return None
124
+ except Exception as e:
125
+ logger.debug("Unable to determine RegScale version or pluginId type: %s", str(e))
126
+ return None
127
+
128
+ def __eq__(self, other: "Vulnerability") -> bool:
88
129
  """
89
130
  Check if two Vulnerability objects are equal is needed for comparison operations in flat file importer
90
- :param other:
131
+
132
+ :param Vulnerability other: the other Vulnerability object to compare
91
133
  :return: True if the two objects are equal, False otherwise
92
134
  :rtype: bool
93
135
  """
@@ -95,13 +137,14 @@ class Vulnerability(RegScaleModel):
95
137
  return False
96
138
  return (
97
139
  self.plugInName == other.plugInName
140
+ and self.plugInId == other.plugInId
98
141
  and self.parentId == other.parentId
99
142
  and self.parentModule == other.parentModule
100
143
  and self.ipAddress == other.ipAddress
101
144
  and self.dns == other.dns
102
145
  )
103
146
 
104
- def __init__(self, **data):
147
+ def __init__(self, *args, **data):
105
148
  # Map snake_case to camelCase before initialization
106
149
  field_mappings = {
107
150
  "scan_id": "scanId",
@@ -121,6 +164,16 @@ class Vulnerability(RegScaleModel):
121
164
  "tenants_id": "tenantsId",
122
165
  "is_public": "isPublic",
123
166
  "date_closed": "dateClosed",
167
+ "build_version": "buildVersion",
168
+ "cvss_v3_vector": "cvsSv3BaseVector",
169
+ "cvss_v2_score": "cvsSv2BaseScore",
170
+ "cvss_v2_vector": "cvsSv2BaseVector",
171
+ "affected_os": "affectedOS",
172
+ "image_digest": "imageDigest",
173
+ "affected_packages": "affectedPackages",
174
+ "installed_versions": "installedVersions",
175
+ "fixed_versions": "fixedVersions",
176
+ "fix_status": "fixStatus",
124
177
  }
125
178
 
126
179
  # Convert snake_case keys to camelCase
@@ -128,7 +181,7 @@ class Vulnerability(RegScaleModel):
128
181
  if snake_key in data:
129
182
  data[camel_key] = data.pop(snake_key)
130
183
 
131
- super().__init__(**data)
184
+ super().__init__(*args, **data)
132
185
 
133
186
  @staticmethod
134
187
  def _get_additional_endpoints() -> ConfigDict:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: regscale-cli
3
- Version: 6.16.0.0
3
+ Version: 6.16.2.0
4
4
  Summary: Command Line Interface (CLI) for bulk processing/loading data into RegScale
5
5
  Home-page: https://github.com/RegScale/regscale-cli
6
6
  Author: Travis Howerton
@@ -579,7 +579,7 @@ See [full documentation on regscale.readme.io](https://regscale.readme.io/docs/o
579
579
 
580
580
  Create a virtual environment and install required Python libraries.
581
581
 
582
- ### Shell
582
+ ### MacOS/Linux
583
583
  ```shell
584
584
  # create and activate python virtual environment
585
585
  python -m venv venv
@@ -597,7 +597,7 @@ pip install regscale-cli
597
597
  pip install "regscale-cli[server]"
598
598
  ```
599
599
 
600
- ### PowerShell
600
+ ### Windows
601
601
  ```PowerShell
602
602
  # create and activate python virtual environment
603
603
  python -m venv venv
@@ -1,4 +1,4 @@
1
- regscale/__init__.py,sha256=4Zl2UdkrSoMbDWW3mjxsNJIlHmCY3Wk6RNCaYQHD5jU,25
1
+ regscale/__init__.py,sha256=XD37lWEa0uj7RqQy4EgEbfMdhicQo2sDfeBDyyspRf4,25
2
2
  regscale/regscale.py,sha256=kztX3Opi2ERFo3PVAE8ZC9fqzyOwHO3jYuNo6VdCRLM,30730
3
3
  regscale/airflow/__init__.py,sha256=yMwN0Bz4JbM0nl5qY_hPegxo_O2ilhTOL9PY5Njhn-s,270
4
4
  regscale/airflow/click_dags.py,sha256=H3SUR5jkvInNMv1gu-VG-Ja_H-kH145CpQYNalWNAbE,4520
@@ -35,7 +35,7 @@ regscale/core/lazy_group.py,sha256=S2-nA5tzm47A929NOTqGkzrzKuZQDlq2OAPbNnG1W1Q,2
35
35
  regscale/core/login.py,sha256=zNHIqxwBm3vwA6pGZRmlUZLNO2CYXByZ6hdLll1r-jk,2508
36
36
  regscale/core/app/__init__.py,sha256=nGcCN1vWBAnZzoccIlt0jwWQdegCOrBWOB7LPhQkQSs,96
37
37
  regscale/core/app/api.py,sha256=d6vkUULEvGQMAHOV8zusd5Ph09Ke-M0J_Nvh8WeQYgo,22850
38
- regscale/core/app/application.py,sha256=lAA4Wz6r7YxTutCN62vf7xUC64NIH9t4i51YEWCD3ow,25947
38
+ regscale/core/app/application.py,sha256=TalC51f30Ox6o7LBsh2RcCdU_YqFuCbGw1zhK2vSS7s,25982
39
39
  regscale/core/app/logz.py,sha256=8AdBKmquv45JGi5fCMc38JqQg6-FpUONGmqfd5EGwrI,2583
40
40
  regscale/core/app/internal/__init__.py,sha256=2ZJGwSuQBoQa1euFJ2pQsyEBMqWqXv7qq8yu02eQcYQ,4436
41
41
  regscale/core/app/internal/admin_actions.py,sha256=hOdma7QGwFblmxEj9UTjiWWmZGUS5_ZFtxL2qZdhf-Q,7443
@@ -47,17 +47,17 @@ regscale/core/app/internal/encrypt.py,sha256=yOEMDDlpI0Sc0LkoeCtXbypnOF8cxoDrzKR
47
47
  regscale/core/app/internal/evidence.py,sha256=P_I0wyk37M48NZMWkXwX55HQlTjdxrbhuto4SUMHpt8,50470
48
48
  regscale/core/app/internal/file_uploads.py,sha256=EfQ4ViJBHzU9bxnFunK3ahA6T9A6pnA-Jk2NrtgmrQY,4776
49
49
  regscale/core/app/internal/healthcheck.py,sha256=ef4Mwk19vi71bv-Xkny5_EGG1UXTbCO5dvEIzHyyfVA,2010
50
- regscale/core/app/internal/login.py,sha256=vG6eLXs9zo9iFcA0rGXlBPV2lkCidQmUXtshJMqF-eM,10769
50
+ regscale/core/app/internal/login.py,sha256=k6Qrg0YGs5msY1MgbawpVybLyO5TvhWjZP-xQB_V4xU,10770
51
51
  regscale/core/app/internal/migrations.py,sha256=wHIzb1uglLVOXawnb-K3Yt70Z5QyfQYb8ZZOMDrNRU4,7983
52
52
  regscale/core/app/internal/model_editor.py,sha256=Lt-DmwO9lS7VFZ0eD5Gax6g5gcVRqWq2d7024tzzbNY,61309
53
- regscale/core/app/internal/poam_editor.py,sha256=Id-oodYYPXllSfpxS_fEHkcEG4lmtJ7yH8ldphm3L-Y,22930
53
+ regscale/core/app/internal/poam_editor.py,sha256=3PtpSMpV7bqKFuTHD2ACYcTyB3EEtTRKuYv-XArjd0A,22929
54
54
  regscale/core/app/internal/workflow.py,sha256=SpgYk1QyzdilVLOK1fFzaKhdLspumaugf5VezgboxhQ,4007
55
55
  regscale/core/app/utils/XMLIR.py,sha256=M_RrCsbjznihatkucCKw6dPgHTPQczXyqIdUXWhuCLI,8328
56
56
  regscale/core/app/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
57
57
  regscale/core/app/utils/api_handler.py,sha256=7StrhhVgTtG6AbA7VvKfZ21V_mQQ6MmyGnF8i11FnPI,12189
58
- regscale/core/app/utils/app_utils.py,sha256=zLEHHHWR4likFQYY_bZsWLTAoRajyyaWrESkotVrFlM,36240
58
+ regscale/core/app/utils/app_utils.py,sha256=PnZeSU3AJqqe4NtdqABYowH1c3emiPSGDgRUdVp1kDc,36246
59
59
  regscale/core/app/utils/file_utils.py,sha256=URKWVEiR9aFnwoW3-Io7R22tBVeROTC3sX1wOZuhqXw,8912
60
- regscale/core/app/utils/parser_utils.py,sha256=nAnxUr_oUGngbIMfXIQjE00RmZwk2eTjFWCbBduyF8I,2537
60
+ regscale/core/app/utils/parser_utils.py,sha256=aBEgcFwbJMD-ARf3wzf-tyWwR6NHvzEcdYcPMm8hGqo,2533
61
61
  regscale/core/app/utils/pickle_file_handler.py,sha256=iMdv4N8z00TB5LyPdxIcLKNRpDQVWQ8ZQWAqCKpqmF0,1695
62
62
  regscale/core/app/utils/regscale_utils.py,sha256=lpWVO7bgIb_NNRYY_yflIo1dKBjbffwlOpDlQzJ0_dQ,10439
63
63
  regscale/core/app/utils/report_utils.py,sha256=rKn3nmiSPq8LTKM16UiKBSizTsZKh-7JwdOlfX6YSpQ,4210
@@ -108,10 +108,11 @@ regscale/exceptions/license_exception.py,sha256=5lDYW1uGf7dHFKBkhzYD3FlNnI6W4BIC
108
108
  regscale/exceptions/validation_exception.py,sha256=_DW_GARtPr_Dyy8tolnvC_AYsHRsUUvRz_Rkk8-fjgk,219
109
109
  regscale/integrations/__init__.py,sha256=Sqthp3Jggo7co_go380cLn3OAb0cHwqL609_4QJSFBY,58
110
110
  regscale/integrations/integration_override.py,sha256=PH7t_bf-RCe_it3FJ61tlKX5UghqHuSEQNJWDfCamAg,5480
111
- regscale/integrations/scanner_integration.py,sha256=2Bazljsw2WSGg4M-lk14fYc4Ms7qwRqy4rZxCWrKea4,118582
111
+ regscale/integrations/jsonl_scanner_integration.py,sha256=ixHAyTpevqusMpp2LS4vkATUbrCKvG4fSqu8VYOh254,38064
112
+ regscale/integrations/scanner_integration.py,sha256=AEBGdDyzIMavbg1vJm0khd3Kb12anlkzBv_226xV-KA,127632
112
113
  regscale/integrations/variables.py,sha256=_knfoweXyvarsDGijvpsy87tXAXIijKGRXk9Hw5gGlQ,1904
113
- regscale/integrations/commercial/__init__.py,sha256=rz9fcuxoK2TrpOIGr1iikPIbDqSQjrDwmQaiaUq5de4,13147
114
- regscale/integrations/commercial/ad.py,sha256=TB3crro2ov7irsUzEwEh3N8QwhbKvhi4Kmd_k3_c8SI,15508
114
+ regscale/integrations/commercial/__init__.py,sha256=bRSeNMGQorH-A7Pp6U62ll92WbVG8WTyBv2Lp4jlkBw,13160
115
+ regscale/integrations/commercial/ad.py,sha256=YXSmK8vRf6yi2GnREGa5GrE6GelhFrLj44SY8AO1pK0,15509
115
116
  regscale/integrations/commercial/burp.py,sha256=5hK4bVivfnP1H0UnBdTp_A4WfpCgIn2bsjSQ57JF7WQ,2522
116
117
  regscale/integrations/commercial/cpe.py,sha256=eXZeDXicnp1yYgKuyKcthQUYxXi2Pgc__UD8lUqr5H0,4924
117
118
  regscale/integrations/commercial/crowdstrike.py,sha256=3RIF4ISM3PuBufXO9bJ-41ByslMFLe5GKe9TayRR_mU,40254
@@ -119,7 +120,6 @@ regscale/integrations/commercial/defender.py,sha256=SA3cn4tdRcD6ZjbCZgULl3ts2fAU
119
120
  regscale/integrations/commercial/dependabot.py,sha256=V4VbHbwrxHfe7eCilJ7U_MBeIO6X3wetGfIo2DJYe_c,7793
120
121
  regscale/integrations/commercial/ecr.py,sha256=47iCigssDANlfHYGznU4rfOq6O-1QMGOuP8lBmn7Df0,2693
121
122
  regscale/integrations/commercial/gitlab.py,sha256=dzfqJQ68QI1ee_BriNMyPuXLkzOhc2vR1hhVfq2j13Y,12496
122
- regscale/integrations/commercial/grype.py,sha256=81hmc0gpZvNzuh4Hq1dpegY6VsPCgwjBeMAm6mCljqQ,6156
123
123
  regscale/integrations/commercial/ibm.py,sha256=RQrivu4tOl_8gh5iUa9m9sGbHusphP8rnU2BZZc9IMs,2772
124
124
  regscale/integrations/commercial/jira.py,sha256=1fBF3y4kotbD9hFtqZxlBIb4Q6iNkhIKyPI_MUiqZ6w,39222
125
125
  regscale/integrations/commercial/nexpose.py,sha256=lqPw9yk7ywHDoLwPeXKSz9DaLyVzOQIKOotCgayVTNE,2853
@@ -132,7 +132,6 @@ regscale/integrations/commercial/snyk.py,sha256=TLo6FPLQoSoPJI2J-UfsVMPMTL9udKd1
132
132
  regscale/integrations/commercial/sonarcloud.py,sha256=_E4DuKRZUqXNNPsxS3UJ3q6llVu-5sfw5pTHxe_UMk0,9821
133
133
  regscale/integrations/commercial/sqlserver.py,sha256=PcDLmsZ9xU5NlFpwPZyMhhxCgX4JK2Ztn2S6kCG4mws,11614
134
134
  regscale/integrations/commercial/synqly_jira.py,sha256=dmw3m_lKtii2OpVcrmtNJ-ClUNThV8-1IOrWyE2RQLE,33002
135
- regscale/integrations/commercial/trivy.py,sha256=loH0-WNeZ32ZVEiAr3mmsWi5iL1lF14pKjTxaAyvizo,6065
136
135
  regscale/integrations/commercial/veracode.py,sha256=ZEK-CW5nGIYl5bydSxssCpAZYeBLgmSZkrU-ilyRpI0,2910
137
136
  regscale/integrations/commercial/xray.py,sha256=egJO6fCQ8jhSpyu6Gj2xczTtUMEiSAJKDz05dT-YZ6M,2734
138
137
  regscale/integrations/commercial/amazon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -154,7 +153,7 @@ regscale/integrations/commercial/aws/inventory/resources/security.py,sha256=EWH2
154
153
  regscale/integrations/commercial/aws/inventory/resources/storage.py,sha256=fEikYzdNATpXwqhHw41yYyyWUVpC-52Iif9NzXThVkI,3427
155
154
  regscale/integrations/commercial/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
156
155
  regscale/integrations/commercial/azure/common.py,sha256=yc_yjfPrcgV9ulcMkQQhoqNB9JBwXYlZGQNUuxUpc3A,1078
157
- regscale/integrations/commercial/azure/intune.py,sha256=YwOlwQ_9Fk9kgAGjoAUj48bJt10Pl3h1WLb40VBhFR4,17179
156
+ regscale/integrations/commercial/azure/intune.py,sha256=6viMZqZc8EaO8a5L2FfDy6v60ExFjCxZ-t59W-Uon4I,17219
158
157
  regscale/integrations/commercial/azure/scanner.py,sha256=UDNJlHTL5haGV88S366_tqRxs0qqWgecW4Ckzll_lWs,1690
159
158
  regscale/integrations/commercial/durosuite/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
160
159
  regscale/integrations/commercial/durosuite/api.py,sha256=yuSX__q98o1q69lx8I2q_NuejidXmcTcEFkF-VQFKOM,55912
@@ -165,26 +164,29 @@ regscale/integrations/commercial/gcp/__init__.py,sha256=XNiGNoYOGRKgZwqQCqTGRazr
165
164
  regscale/integrations/commercial/gcp/auth.py,sha256=DSakDZL9JE67r5W-USqavCyrRS2rqVQ7-FxGi3h4kNg,3186
166
165
  regscale/integrations/commercial/gcp/control_tests.py,sha256=AvM6Dv2FgFi3bsgXYxq6yxxlbmXuhtFZkmEAJU_qQiE,9913
167
166
  regscale/integrations/commercial/gcp/variables.py,sha256=tFxPS0SXAmYGpaDTVxOLDp4NpDyIgbEWp6OB3x9Jog4,797
167
+ regscale/integrations/commercial/grype/__init__.py,sha256=KRuTTlOokQjrkpOmhrefwdB90k1jGSEIiDYFbPcjAJY,81
168
+ regscale/integrations/commercial/grype/commands.py,sha256=EH6l8b76u89gfeMqosgKaGqcQ95sXRqgAXE6xQz6Q2w,2027
169
+ regscale/integrations/commercial/grype/scanner.py,sha256=0nrjXq3_alSTdmhO5Y4z0Un4YGo1WB2X08PyKNc3_VU,16419
168
170
  regscale/integrations/commercial/import_all/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
169
- regscale/integrations/commercial/import_all/import_all_cmd.py,sha256=VtEDpWEXEhNkwkcsTafITCqCR3g5skdXNKvHr1-hlBY,18273
171
+ regscale/integrations/commercial/import_all/import_all_cmd.py,sha256=87OGCiOeMSAmEZEN4i8MhEK3qyOJUndk-d4i-Q-l_xc,18286
170
172
  regscale/integrations/commercial/import_all/scan_file_fingerprints.json,sha256=8c_hnfwbq9bEHr3f14hzcnA9vrehQ-_ZsAIZ4YTPB6w,1981
171
173
  regscale/integrations/commercial/mappings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
172
174
  regscale/integrations/commercial/mappings/csf_controls.json,sha256=EHOLWrnFr0oRsHBx4LX6pLVoqLuX-Mn7O-CXuzpw-v4,57504
173
175
  regscale/integrations/commercial/mappings/nist_800_53_r5_controls.json,sha256=Vuh8RkKhX84U8VG2zoLG94QL7mvWIF28M-u8B4paxgw,123879
174
176
  regscale/integrations/commercial/nessus/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
175
177
  regscale/integrations/commercial/nessus/nessus_utils.py,sha256=lP1_xVmYeyL17muy0jGMnJ5xdON3mi22BVAyDHa9WfU,13525
176
- regscale/integrations/commercial/nessus/scanner.py,sha256=ZqU0_sgb_wV0GQA2iHdV9wbwpJJXg92O2ndrvmyGiQ8,17179
177
- regscale/integrations/commercial/opentext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
178
- regscale/integrations/commercial/opentext/click.py,sha256=TzDQLNwr4LttcTGHw44MZr4HocROlgDp90pZ3v38Dx8,3148
179
- regscale/integrations/commercial/opentext/scanner.py,sha256=xRZF0DVR23SZr8BrgwsvMp_PQzHBZWVmOeN9maxizVc,5483
178
+ regscale/integrations/commercial/nessus/scanner.py,sha256=xz-OBd98ZbKKWnuxsP7oTqTdqa30TQDQMMuPLm82hfU,17335
179
+ regscale/integrations/commercial/opentext/__init__.py,sha256=zqCPb_4rYRZZPXfeKn4AoZyyYyQ6MU4C0lCs2ysOBhc,251
180
+ regscale/integrations/commercial/opentext/commands.py,sha256=c5aAxFXp6vO0plGuX1eZe_90iDifYX3vCaqMd5jbunU,2142
181
+ regscale/integrations/commercial/opentext/scanner.py,sha256=gTUbvrJtFD8sp4YBcHeIrhL3EP5lCmixijVtRA0AyA0,21608
180
182
  regscale/integrations/commercial/sap/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
181
183
  regscale/integrations/commercial/sap/click.py,sha256=pWgjUOA_4WKkDUWcE8z4EshnJUdrTl15NKUfKpKyqzE,522
182
184
  regscale/integrations/commercial/sap/sysdig/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
183
185
  regscale/integrations/commercial/sap/sysdig/click.py,sha256=DuQ-lnAGtnBXQnwa7KUc_arE7S9vBLJfFjkXZp1qqG4,1683
184
- regscale/integrations/commercial/sap/sysdig/sysdig_scanner.py,sha256=hNIiFaDpnhWPdhjiRu5AEBjXcBezQmUMxvvd7uQSc9Y,7597
186
+ regscale/integrations/commercial/sap/sysdig/sysdig_scanner.py,sha256=WYUbLVPqpS8f1D-TYnTqIxV-H969uNPN3U8ARHWqpJA,7775
185
187
  regscale/integrations/commercial/sap/tenable/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
186
- regscale/integrations/commercial/sap/tenable/click.py,sha256=UcZG_EABOK8dJdHu9e13BBK6vuQX7SPBLk-IJyIgDQM,1367
187
- regscale/integrations/commercial/sap/tenable/scanner.py,sha256=Dq-Qx3759gQUtEA6FTxiefr6I5xHqEQxPYjkNUs5iL8,8188
188
+ regscale/integrations/commercial/sap/tenable/click.py,sha256=vCdRe6d5ey6mywtL8GY21n5ecqWTdYLLDceEOy8QrLg,1425
189
+ regscale/integrations/commercial/sap/tenable/scanner.py,sha256=PV4oFQ14AQ4f9t04oTneYZfOfHwdeRPRZrsCmAogJP0,8388
188
190
  regscale/integrations/commercial/sicura/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
189
191
  regscale/integrations/commercial/sicura/api.py,sha256=2okTzWT9qebYisBsQ9BN3Yw1jvdUDLurWP8-eAz6wvs,31724
190
192
  regscale/integrations/commercial/sicura/commands.py,sha256=pEzYH3O8wfvI6D_AHhe-q_zU7dNK8sP-0t1o8PTPcfc,2229
@@ -203,21 +205,24 @@ regscale/integrations/commercial/synqly/ticketing.py,sha256=8kzFC2yFcQKDQKJhTXzX
203
205
  regscale/integrations/commercial/synqly/vulnerabilities.py,sha256=B8GwfKVDdoOIikjZO-4KqDNf-ApXlcJNkwmno0FjDOQ,7842
204
206
  regscale/integrations/commercial/tenablev2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
205
207
  regscale/integrations/commercial/tenablev2/authenticate.py,sha256=ZFtyw26zjt1nky15PSP0Dl1-0WXEydU9s3UaS8oQaZ8,751
206
- regscale/integrations/commercial/tenablev2/click.py,sha256=IX3SPnROmHspZgUcDJOQIqpf8oEjfwZJA3Ya2lo30lA,56355
208
+ regscale/integrations/commercial/tenablev2/click.py,sha256=GXF8EzIpPf2M093Ftl04iNPfbbtZIhCMEijRQaxA254,57126
207
209
  regscale/integrations/commercial/tenablev2/scanner.py,sha256=hNFwKTqYys4GDjopXHqHQjCvM0i7EBoRln7r50SlDxM,21260
208
210
  regscale/integrations/commercial/tenablev2/stig_parsers.py,sha256=01h5ImYMUsjrVHaGgqj5JVBx6Jzlhg06ufu0SL_uBEs,5983
209
211
  regscale/integrations/commercial/tenablev2/utils.py,sha256=3Mf_HNgFBL27HtsdVs3CqLhgDNl3_RSytS21lcQfKj0,2907
210
212
  regscale/integrations/commercial/tenablev2/variables.py,sha256=GWzzNmFkQ6i55RYK7DkVq3ibStaU3hSwapvxsqbNsxE,822
213
+ regscale/integrations/commercial/trivy/__init__.py,sha256=fTTABeR1Z3Wei3l-A54SoTPn2mrMQrKLmr9SwTyYLTM,117
214
+ regscale/integrations/commercial/trivy/commands.py,sha256=uzK-15k6ZNdOQ9TxAIF_3wj5rqiJ9UDRRlZVPnXhQvQ,2068
215
+ regscale/integrations/commercial/trivy/scanner.py,sha256=MzZvcwe5CpOFqkGImNd19kKySrbpGDwb_rC0jswkM10,10726
211
216
  regscale/integrations/commercial/wizv2/WizDataMixin.py,sha256=s7F_rVrP9IZa_x_vh3MswR7W_UBHRfd4kHGVsNX4ips,3606
212
217
  regscale/integrations/commercial/wizv2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
213
- regscale/integrations/commercial/wizv2/click.py,sha256=1vDSeEid4vMkGjf2ON4emuRUyxR2_YAxKJNbW5XBikU,13479
218
+ regscale/integrations/commercial/wizv2/click.py,sha256=wml9JygBSk2ptOvjVuewdS88ssUCGQpUCtiHzTz8hLU,13033
214
219
  regscale/integrations/commercial/wizv2/constants.py,sha256=wS_BcZrtNYm_BMuuDUgsLkdgGBGRXs2OGKHaIyoIhaI,22788
215
220
  regscale/integrations/commercial/wizv2/issue.py,sha256=MbND-Ir4pU4i0OtxsjbRxn_i8Ibll6gt-qYQK2ObstA,13361
216
221
  regscale/integrations/commercial/wizv2/models.py,sha256=hZ6557LJfcp1_NRbMM0V_G1erz1jEFmsuKPn86kXE54,5667
217
222
  regscale/integrations/commercial/wizv2/parsers.py,sha256=YcFOGdYZZ17hj2pcRMC9Ho2wPY94dfJ4hHwqTR5BB6c,11095
218
223
  regscale/integrations/commercial/wizv2/sbom.py,sha256=QcGaYiBGtZ3mBcbo-KGl-I2u6QHKAIinTk26LPy0Kng,4466
219
- regscale/integrations/commercial/wizv2/scanner.py,sha256=o6n-MEjyjDCayZbYAGoNFEo4zqvKcMrddZrB2blviX4,18324
220
- regscale/integrations/commercial/wizv2/utils.py,sha256=rv1duCYYRVUUrTItgotUvBGsSUbqX-qtY6rVoDXu_Lk,28740
224
+ regscale/integrations/commercial/wizv2/scanner.py,sha256=3Vx2vCvwDlNAogYa3-qFgRDSVjUFtIIzBW4PFSYpe5k,18419
225
+ regscale/integrations/commercial/wizv2/utils.py,sha256=VuAus03sSK_IZaZQnVvEkxDRg4MrvhT2UOoOawb4NQg,31326
221
226
  regscale/integrations/commercial/wizv2/variables.py,sha256=BRtYjMNPqZDLgql-bbBJ0dlVx0KkR647aXKc0HGdWVo,2132
222
227
  regscale/integrations/commercial/wizv2/wiz_auth.py,sha256=BpQTYJn3u0QiWC2IAw-bunZpBPsJtDJgOsC2zOL_UU4,5554
223
228
  regscale/integrations/integration/__init__.py,sha256=WJgPLnEahD94QLE8NR8QCzlf8xk2ix76_WPDlf98ezU,70
@@ -238,13 +243,13 @@ regscale/integrations/public/fedramp/click.py,sha256=cIMo5ZGXoSDyKvI9kLUFuLT0zfA
238
243
  regscale/integrations/public/fedramp/components.py,sha256=z6PMObm-kjRR42bT04EfnjisrEULfXlwxb7576uuMmY,27010
239
244
  regscale/integrations/public/fedramp/docx_parser.py,sha256=EA9g1iTlB6-GtOzV9JwGW8x_SruhbaIMOzstCBvjiq8,10526
240
245
  regscale/integrations/public/fedramp/fedramp_cis_crm.py,sha256=RKZdwX12RAGsTWd0xndHxaj5iABiKrULoee7L399E9c,44294
241
- regscale/integrations/public/fedramp/fedramp_common.py,sha256=xbWmnTq1UB77KgJxYiscW0g6EN_bKtuGZCJ2zueMbSI,115408
246
+ regscale/integrations/public/fedramp/fedramp_common.py,sha256=Mdy3_WdCEcTwSXEEKXiODmr2YJTWcTg6jfyWZJWfruQ,115406
242
247
  regscale/integrations/public/fedramp/fedramp_docx.py,sha256=GnRjuWEgE9XSe9egPOQSZ8lMjY4CpqcD2IS5paI-xQc,13742
243
248
  regscale/integrations/public/fedramp/fedramp_five.py,sha256=-dogAC3J7BNW5Yl6Aw5XHJbjW3PxFi_HjGQCfxfcWns,90771
244
249
  regscale/integrations/public/fedramp/fedramp_traversal.py,sha256=BkgwsFluZO5g0Rc0WujYgbc1_YLofamJzFP7Z5UYfao,4528
245
250
  regscale/integrations/public/fedramp/import_fedramp_r4_ssp.py,sha256=Opld0vEZ4b71cIDogu6ykTUL86tXZVTSnwQzjz8w_4U,9925
246
- regscale/integrations/public/fedramp/import_workbook.py,sha256=NMLmdNIcF4KLYVebLz27EtBDjLCdSfJ8hKBkUy31YTw,19674
247
- regscale/integrations/public/fedramp/inventory_items.py,sha256=gRKmXbubSxMiulis7z43Na9dI05FBgb_RkgwByxC5Wk,10076
251
+ regscale/integrations/public/fedramp/import_workbook.py,sha256=VFNBjBNLLRL3WjkJmE9CamizNsLgfdX5g8YolOr8lPY,19658
252
+ regscale/integrations/public/fedramp/inventory_items.py,sha256=nBgVgigMyZ2C6fJ9QCvz-8KvSlGtqi1lqC3alBUlzyg,10080
248
253
  regscale/integrations/public/fedramp/markdown_parser.py,sha256=I2VI8NImOnHfB1eE3iLG_gK6uqqqImL7I_YEkzh6INE,5339
249
254
  regscale/integrations/public/fedramp/metadata.py,sha256=eh8AA5YNHUxHGnlbLRmhovINBKqkAJR98EUFDX1g5Z0,26543
250
255
  regscale/integrations/public/fedramp/parts_mapper.py,sha256=aBh1gWo-3-JFDDxHQaxrvqC7OFTxS6qWEFfoHlknomc,3787
@@ -252,7 +257,7 @@ regscale/integrations/public/fedramp/properties.py,sha256=Yr9NGM9-vFTbnipl7TRNfo
252
257
  regscale/integrations/public/fedramp/reporting.py,sha256=KpxHSaw-nR3sQf_c1AGxgFUmWeas62EsbwB0Wu_NL60,2550
253
258
  regscale/integrations/public/fedramp/resources.py,sha256=Xcn7pxpm5UsFIPp40oSt6B3123mXdjmX-6AmB5PYsI4,19053
254
259
  regscale/integrations/public/fedramp/rosetta.py,sha256=8OGENh1X0KtNTQZVPgQyOXYXwj3-LWHeF1CT-FzWb0E,3399
255
- regscale/integrations/public/fedramp/ssp_logger.py,sha256=d-cNSyf6wK1A0hy134yH8cPMFztxU0VFqfot734WQP8,2555
260
+ regscale/integrations/public/fedramp/ssp_logger.py,sha256=gBMx4FyiOPhXJpkGlkAerfBJXW7k_OfWKBNDp0qaI0o,2532
256
261
  regscale/integrations/public/fedramp/system_characteristics.py,sha256=LUk2X8Q1D_v1YlIVuIEijz0lp6SbcIhWx1ybVVwC81k,36362
257
262
  regscale/integrations/public/fedramp/system_control_implementations.py,sha256=yQc2zkfBdt7NbvwBi7pvh9qYgHdeyYJsk8zBKtUyrPY,22650
258
263
  regscale/integrations/public/fedramp/system_implementation.py,sha256=zrnEI7m2tLwZCig3_Vq4Mb2uZiDzW-yhYzyam-TRpJw,5945
@@ -268,7 +273,7 @@ regscale/integrations/public/fedramp/models/__init__.py,sha256=SPtfXUaVhdehAeL8r
268
273
  regscale/integrations/public/fedramp/models/leveraged_auth_new.py,sha256=MIJ7pMYaPdVRIgMZQQ4VLlq3IB5bYOsaRJSfeRORjC4,6775
269
274
  regscale/integrations/public/fedramp/models/poam_importer.py,sha256=UP98NOwzmCgN7666q1IgiVrwfPyXbCeCalDQmXctic8,20993
270
275
  regscale/integrations/public/fedramp/poam/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
271
- regscale/integrations/public/fedramp/poam/scanner.py,sha256=uk_2V5ED7xNaNyUqO-uoKbcunntAB_Rj2CXU44tIxGU,34047
276
+ regscale/integrations/public/fedramp/poam/scanner.py,sha256=M15Mx6xC1IjSbJ4ZHXjF9nZvJRlAH8FrTX-tvhBNZuM,34134
272
277
  regscale/models/__init__.py,sha256=ykonP9piy6O1whIwB9aNdnIoY7XfBuKed5kFvRadFFE,259
273
278
  regscale/models/click_models.py,sha256=EI0HFFXQvGy53boZ473ayDJP-qpQsCdufD0xkUGqM3I,15295
274
279
  regscale/models/config.py,sha256=M_ftoZUgYL8x1CliDk8Pw6jMhPlz83_xh_Gi8lAabQ4,5420
@@ -282,54 +287,54 @@ regscale/models/app_models/catalog_compare.py,sha256=gLD8ti933nW70FcGlx6gp0Lbdo8
282
287
  regscale/models/app_models/click.py,sha256=Kgf7j-eaSPVKc7HM8WAIGtEiBTzgP8ipa47dM3hA6OI,8222
283
288
  regscale/models/app_models/datetime_encoder.py,sha256=AvKkXWhrd87jTfNnY5Q2gw5IdXkCQDnE_44Lay2ZUAA,518
284
289
  regscale/models/app_models/import_validater.py,sha256=Qk0q7VuudzuVjt8h7LM5KxWpAA4PQ-4FXkoFlStfCJ8,12603
285
- regscale/models/app_models/mapping.py,sha256=h6mSms6Qzct0etntb6lPnpa-kQS2BVHG0MAf9ycoe_U,11180
290
+ regscale/models/app_models/mapping.py,sha256=BDd7PMgQ24IK4S8FPzHJBpNnCtm1xiU1aoSHDUCwx6Q,11142
286
291
  regscale/models/app_models/pipeline.py,sha256=qzrkQvvW6d8rqbBjMR8wkT2obez0tnKyY_TxtxLh6VE,909
287
292
  regscale/models/integration_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
288
- regscale/models/integration_models/aqua.py,sha256=x8IuQgOW4VxaLRu5FLVNZ2U9fKr-5N8Y5GvgO2-4xjI,10023
293
+ regscale/models/integration_models/aqua.py,sha256=qJeNik3gFzF7xHz39vz1nWYYktu2BTmiRSAU64MOwUY,9945
289
294
  regscale/models/integration_models/azure_alerts.py,sha256=2etrpvcxa7jVQrc98bJlVGd3xPcw-YwJ65c3pfSf0uA,8408
290
295
  regscale/models/integration_models/base64.py,sha256=sxV6O5qY1_TstJENX5jBPsSdQwmA83-NNhgJFunXiZE,570
291
296
  regscale/models/integration_models/burp.py,sha256=hPQkmmUdC84MBFTE2Di5NvjbGz1ssISSkZdDaVi-ZoQ,16941
292
297
  regscale/models/integration_models/burp_models.py,sha256=UytDTAcCaxyu-knFkm_mEUH6UmWK3OTXKSC9Sc6OjVs,3669
293
- regscale/models/integration_models/cisa_kev_data.json,sha256=evpVH5XRYQBXOFaKP6pI-NrTBjKHK8ZWXGrz6zLwJOU,1140725
298
+ regscale/models/integration_models/cisa_kev_data.json,sha256=sGmp3Hsznxw7hLBrlem6241wdTiyQV3mFec1pjUJLcc,1147593
294
299
  regscale/models/integration_models/defender_data.py,sha256=jsAcjKxiGmumGerj7xSWkFd6r__YpuKDnYX5o7xHDiE,2844
295
300
  regscale/models/integration_models/defenderimport.py,sha256=OFwEH0Xu-HFLIZJZ8hP60Ov3lS8RR7KHEsw4wI8QnoE,5766
296
301
  regscale/models/integration_models/drf.py,sha256=Aq7AdLa_CH97NrnR-CxaFI22JjVN9uCxVN7Z-BBUaNU,18896
297
- regscale/models/integration_models/flat_file_importer.py,sha256=xmh3d0qUmocBz8sqDHI9-F_je16Ffo8OYq_KQJwfBPQ,43065
298
- regscale/models/integration_models/grype_import.py,sha256=umFUWPgey7Ew3McYNI6YEVhw5DISoW8m8TY64kFHKlY,9758
302
+ regscale/models/integration_models/grype_import.py,sha256=MgCEK_jCwY7NTXZgxQtnXLbovmH7OuSOmSOm-a7egZg,9710
299
303
  regscale/models/integration_models/ibm.py,sha256=S2LZkHhxfRBTAS8T2mwiQ_pCfoX1-UwvFXRNz1rb7g0,4760
300
304
  regscale/models/integration_models/implementation_results.py,sha256=nJOAFPMS73SudAA2dzxxxRu6h5qagPmr6H9NAOLWzLw,2704
301
305
  regscale/models/integration_models/nexpose.py,sha256=mfaVZP9GVbCwdqEYGrGZ0pwSdDXCPKjOK4yR7d7I4oU,5654
302
- regscale/models/integration_models/prisma.py,sha256=e3AbQyBnxAz9-ICEcad_9YTjAyK-ytEmkgKDxNbF_pk,8328
306
+ regscale/models/integration_models/prisma.py,sha256=83LeS96rUgaZvPzl6ei_FWjTFBojsyqzMWoSJ1CnsJ0,8280
303
307
  regscale/models/integration_models/qualys.py,sha256=PJr9iX7IXH_3dQNzzpf8cmJhIdy_tP3Z8ouVmrKOK2I,26999
304
308
  regscale/models/integration_models/qualys_scanner.py,sha256=6rAeCR9qI10MM_LWtZtOhWaT6mERWtII2IxxyvQhfKw,6453
305
309
  regscale/models/integration_models/send_reminders.py,sha256=Zon6fyV0nODp8l5KuABe97Rz8l37o4biRb5iML7GHiE,26137
306
310
  regscale/models/integration_models/snyk.py,sha256=F2URtePITptqDsqJyo8BnZ4IVBh9ylj0btwgv6W32i4,5810
307
- regscale/models/integration_models/trivy_import.py,sha256=P2adExaSJfVY97LyS4cNOqAMf3F3qPQNe2Yi7bqptrs,9226
311
+ regscale/models/integration_models/trivy_import.py,sha256=R6aZXUaNKf5Gdo1kNxIKM-HMW95XDWVCG_gMrzDYNuQ,9210
308
312
  regscale/models/integration_models/veracode.py,sha256=n5e88BaewUVWr2xp8p3EMf5NL-9f8__l4hwBGtSesTY,8365
309
- regscale/models/integration_models/xray.py,sha256=fDu9CQIDQ_TL60qOWF9rmmp22pMqpowof33UsGAbz-g,5880
313
+ regscale/models/integration_models/xray.py,sha256=rnDF9kOAYMhTO9xEi1bwmIrQvfTCQAW6ENNp3Hsfaes,5848
310
314
  regscale/models/integration_models/amazon_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
311
- regscale/models/integration_models/amazon_models/inspector.py,sha256=IIjY4STSk2nBZAMKNAp2C7aL9KeQnz47nqLr5L8MzjE,13185
315
+ regscale/models/integration_models/amazon_models/inspector.py,sha256=AcV_Nk4ZJMJqmRMpmpbu8LDqp4F2D6GD_IcKsh9MYcs,12915
312
316
  regscale/models/integration_models/amazon_models/inspector_scan.py,sha256=A1uaOvT2r65_oOiZxShNMKJ7ynhoU97Kq3-zVZR8iVI,7584
313
317
  regscale/models/integration_models/ecr_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
314
318
  regscale/models/integration_models/ecr_models/data.py,sha256=l28DCidXar1JygYBQZL9MYenQA9N-Cx3Skf51IOjZcw,1017
315
- regscale/models/integration_models/ecr_models/ecr.py,sha256=yUkCpQhOXjll28m-OZiUDgfl0GDamzIMmc17hwvg_08,9578
319
+ regscale/models/integration_models/ecr_models/ecr.py,sha256=-s_5mj4BVKImrvfMaOJLT4qc5EqTCbv8qM4uJiH_nKc,9502
320
+ regscale/models/integration_models/flat_file_importer/__init__.py,sha256=pA7hnME_-qJX6aR8yVXijpaDeXXhj9SLXqrL3FHxFvg,43288
316
321
  regscale/models/integration_models/sbom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
317
322
  regscale/models/integration_models/sbom/cyclone_dx.py,sha256=0pFR0BWBrF5c8_cC_8mj2MXvNOMHOdHbBYXvTVfFAh8,4058
318
323
  regscale/models/integration_models/synqly_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
319
- regscale/models/integration_models/synqly_models/capabilities.json,sha256=Z9BIiiccdQwRLipLnfPTNRGrIbqVZ-ghM-e9hRcDW6k,213468
324
+ regscale/models/integration_models/synqly_models/capabilities.json,sha256=28tfla4QiZOBj64e99krCv9gxFN8RdFpDeipoinTTQc,217847
320
325
  regscale/models/integration_models/synqly_models/connector_types.py,sha256=8nxptkTexpskySnmL0obNAff_iu_fx6tJ7i1-4hJvao,461
321
326
  regscale/models/integration_models/synqly_models/ocsf_mapper.py,sha256=vrtto3-VxbEtK5JSHNluypLm8yvmT_IDupyiJIeFedY,14535
322
327
  regscale/models/integration_models/synqly_models/param.py,sha256=45zgYUV4U9Ia8-CdIb4TlE3vfDMMtbfA1y5LOiznnH8,2645
323
328
  regscale/models/integration_models/synqly_models/synqly_model.py,sha256=6ihUJB24XEm6TorNthbAMNxBHrLF99CemHNLm-jqvYo,34503
324
329
  regscale/models/integration_models/synqly_models/tenants.py,sha256=kewIZw-iv18bNXJGG3ghwuFJ4CK5iXQhn_x2-xvV0iM,1078
325
330
  regscale/models/integration_models/synqly_models/connectors/__init__.py,sha256=LjVwpvzSuP0fgrNHrf1YiyvRUm7R4NkymjeTjGAn6SE,168
326
- regscale/models/integration_models/synqly_models/connectors/assets.py,sha256=OPEnT2embAv4zjxV8Rt0rUU6ii3Wv_Zs9R_lWSPvIZk,3652
331
+ regscale/models/integration_models/synqly_models/connectors/assets.py,sha256=HHNIAVh5pRuJe8sStqhFEc6VnX2wT0FcY5178nbQgkQ,3705
327
332
  regscale/models/integration_models/synqly_models/connectors/ticketing.py,sha256=yRBuCkRAVfa_C91r3WqJ9gxrQsoD0qV9cY48YXpJl70,25358
328
- regscale/models/integration_models/synqly_models/connectors/vulnerabilities.py,sha256=hQ5mpkbJApDpN4mGIMU1rcgL5RtrOOF5IZhFxo0sMbg,7033
333
+ regscale/models/integration_models/synqly_models/connectors/vulnerabilities.py,sha256=kwKvmEIsxkLDOYoDOiqdtyapBZ5fHYQcrQjDpFJQvWc,7143
329
334
  regscale/models/integration_models/tenable_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
330
- regscale/models/integration_models/tenable_models/integration.py,sha256=GpDpS2iF4z-sOx3y2UOkI3e0bw87u3xnc1DOLEPPdwU,7859
335
+ regscale/models/integration_models/tenable_models/integration.py,sha256=4Lhp2SY6Hb6uPmeQcITra20Mw-yKE1fm0CKwPZwJ9PM,9672
331
336
  regscale/models/integration_models/tenable_models/models.py,sha256=dmG7btkN4YkDWwnfW5Ldc3tWEAGjPiaRgJjrqMOkPEU,15846
332
- regscale/models/regscale_models/__init__.py,sha256=Jlo3eCAYrW6CsruzW6tC0Q_w29yKgfWhyLxmatRO4gU,1832
337
+ regscale/models/regscale_models/__init__.py,sha256=OmFpksQ7e1P52xkBfP5_CTew1A4JiB65cvNuwchGXWU,1900
333
338
  regscale/models/regscale_models/assessment.py,sha256=ekzNlcsfDGBu97PMCi7hBRGbzVgxk7Ij0RfrdGh1Rfw,20440
334
339
  regscale/models/regscale_models/assessment_plan.py,sha256=8AEj-lSq5kk7nSMJ7wJmDwkY9h94PB-oD7qKfLfT9cE,1701
335
340
  regscale/models/regscale_models/asset.py,sha256=rMwn2CC4ylZKqXZPXfTWaRt1uMclCyhgVYqgIXjtoLo,19667
@@ -344,7 +349,7 @@ regscale/models/regscale_models/compliance_settings.py,sha256=e0Ghjozt8iCgzmCPfY
344
349
  regscale/models/regscale_models/component.py,sha256=zURPe-unWeHpkx6OoVq3AxdOYp7Ci14xXMy-AjYmXik,14149
345
350
  regscale/models/regscale_models/component_mapping.py,sha256=g0cbbW4X49SDdlB_YtKMrP4eiK9OkrJqiut0ucdyVDA,2162
346
351
  regscale/models/regscale_models/control.py,sha256=mO46F1IfiXnLSb3YhylaS3SyjtT51s-r8b3hjix9Gbc,1072
347
- regscale/models/regscale_models/control_implementation.py,sha256=OEwjdGG9tTlRjEghPhMjz-tU5cQqDDOTE9gLWgUIMXQ,46238
352
+ regscale/models/regscale_models/control_implementation.py,sha256=TgBgbVoMAnRBffS_AFYrO_mPwoCzUKm18FTBtLlUwrY,45076
348
353
  regscale/models/regscale_models/control_objective.py,sha256=FLgBeC9P1aYDcrbajntc-ndIZWjazUqGMYZXlXvDVKE,9452
349
354
  regscale/models/regscale_models/control_parameter.py,sha256=5VVkbVZTb2Hzy_WiybU2JtrvhQp8DLSWxRcbSKxktiI,3499
350
355
  regscale/models/regscale_models/control_test.py,sha256=FG-fLS9JJf8__a84W2LtBXtEjzOH9iq2EO949vBx3eY,949
@@ -366,8 +371,9 @@ regscale/models/regscale_models/implementation_objective.py,sha256=e0Hamt-9RBeHR
366
371
  regscale/models/regscale_models/implementation_option.py,sha256=gEScteJjmTq_jw010gnOJbvYE6ZeWmrGdl6Qs1kw_Mc,11395
367
372
  regscale/models/regscale_models/implementation_role.py,sha256=ZjJOhjM3dVlulsGx3lUKgG49LpxNzx6J-RwTd4eRgx0,1107
368
373
  regscale/models/regscale_models/incident.py,sha256=jsS4MfigzjwFphvdIrBk62GfvbceQ8VL-AhfQSQM460,6028
374
+ regscale/models/regscale_models/inherited_control.py,sha256=RuQJgVyZgfoIrUG_vvwQYHECb3wsFjDH-zPj-bIFBNU,2007
369
375
  regscale/models/regscale_models/interconnection.py,sha256=B8Y4I6KnN-T_gid08QM_o50OwGZcFfO8SJFY2uB68Ak,1256
370
- regscale/models/regscale_models/issue.py,sha256=5jhDwxawsxPCNhkqF05S2OdCKCqQj0ftZX8jMNtDvoA,46709
376
+ regscale/models/regscale_models/issue.py,sha256=MAcn1EDEV8qrSm83AmrAQlSk6dO36GJhHx19f2AMHWk,46769
371
377
  regscale/models/regscale_models/leveraged_authorization.py,sha256=OUrL8JQV3r7T3ldHlL6Y_ZLv6KuQIC-3eZW5wZ7XFUk,4192
372
378
  regscale/models/regscale_models/line_of_inquiry.py,sha256=u8oPt15LvdFNv7FSSZIbBbjMqPF4lLbLEr3EN6mQa1Q,1702
373
379
  regscale/models/regscale_models/link.py,sha256=lAY4Ig3Menm1EqfcAbVJ7jsCsRO5tWtJIf-9-G9FXT8,6593
@@ -388,7 +394,7 @@ regscale/models/regscale_models/questionnaire.py,sha256=yWNeKLx2pc9gyc1SCwcjXfWK
388
394
  regscale/models/regscale_models/questionnaire_instance.py,sha256=Hfa27stfcK1_vjtqj8t-5s3LdxZUlLjKLRm4P5qEHKU,7071
389
395
  regscale/models/regscale_models/rbac.py,sha256=4byeEmr0TxtSyKx7efCX_HGphBzf6s2EFZ1xfTAttPk,4523
390
396
  regscale/models/regscale_models/reference.py,sha256=P_7jT6H-NZIa7TyH3j98N-ZHlB6FsjpZVRZCCpms-D4,3253
391
- regscale/models/regscale_models/regscale_model.py,sha256=PHBpdYLbpkj2ZWrqOG-51RY8hdkpM3MQOUelbqIZJLk,64250
397
+ regscale/models/regscale_models/regscale_model.py,sha256=GTQVoQHWK9ZniqQkOJYJyj_B60aPBQfkA_CUQ6-EhAM,66491
392
398
  regscale/models/regscale_models/requirement.py,sha256=-8PnMbuWAZHol5X1w-fzm-moD784Et0oevSVbz6xLhU,767
393
399
  regscale/models/regscale_models/risk.py,sha256=QPwX8-4ERLYkJdrQYLQWTsNYCYgWn5wKY28djv6L-_s,8493
394
400
  regscale/models/regscale_models/sbom.py,sha256=UYS3lBizGqz7A7vNPYBYzpL8PWIaXLl7ZQox_hlJ2ZQ,1722
@@ -408,7 +414,7 @@ regscale/models/regscale_models/task.py,sha256=eKVdR89Gb6M9E2plhK4fru8teQI3zPJpg
408
414
  regscale/models/regscale_models/threat.py,sha256=4TNZcRnTgmlDwBsYu5Pbh9GRd8ZWAtqqr0Xph3uPNAA,7255
409
415
  regscale/models/regscale_models/user.py,sha256=o-1Ghx0pm2DYLCDyOryJmDrMlTCyrsN0opr89rQ09vA,6560
410
416
  regscale/models/regscale_models/user_group.py,sha256=6j-lkhu21zNukof804Dsk7eHPtEwD7779yInWm6lHTs,1860
411
- regscale/models/regscale_models/vulnerability.py,sha256=lSa5gP9614pDRKwDv5sIIDubzx38HeamFo8XcE_OMqU,8722
417
+ regscale/models/regscale_models/vulnerability.py,sha256=VKgWMVvAQ74Sq46myYsivGfIeW63dHq3bv3cRCkDcbg,10960
412
418
  regscale/models/regscale_models/vulnerability_mapping.py,sha256=cq44xkkCH7rfp0BJxavr4DLiEAHouyyPmi5EaizH6NI,6261
413
419
  regscale/models/regscale_models/workflow.py,sha256=uMNVVAn5qR8wxjMP5PHbcvMmvPRe1gn1oclVUpbv52s,1873
414
420
  regscale/models/regscale_models/workflow_action.py,sha256=zMHrvUkTQJlkCj6Xx6wadozBwsVPpObj5GD81LI2VZc,925
@@ -417,7 +423,7 @@ regscale/models/regscale_models/workflow_instance_step.py,sha256=5UppRE3p_godU6s
417
423
  regscale/models/regscale_models/workflow_template.py,sha256=cADzG27MYukJL_Fam85RkKa3-CGiwOzHW-hJCsd3mhI,2072
418
424
  regscale/models/regscale_models/workflow_template_step.py,sha256=XB-LgM4UWegDTAnoJvL-W3LHhWloNDX8YfWQX0tNevY,1695
419
425
  regscale/models/regscale_models/mixins/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
420
- regscale/models/regscale_models/mixins/parent_cache.py,sha256=dWK6DIkeWV7oWvbUtzvlOGULPiBXRgzohrBmag-qVwQ,4208
426
+ regscale/models/regscale_models/mixins/parent_cache.py,sha256=o9ZiwQzA2c9RdCQGjJUr7zAjOXbs4GMDGB6sMDsdJII,4210
421
427
  regscale/utils/__init__.py,sha256=QiA5U3-1oD1UPCrLnO9sP8Isww8U8K9Dl_7FNjQi4Ns,170
422
428
  regscale/utils/b64conversion.py,sha256=br00ZtuWFWGmajFrl_gAUAZeG4SX5se3coP7J50ZwmM,397
423
429
  regscale/utils/click_utils.py,sha256=AY6S8RSF5FDwbvhVoE08801Wyvnclg-VWf8WHRSSqqY,4014
@@ -457,7 +463,7 @@ tests/regscale/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSu
457
463
  tests/regscale/core/test_api.py,sha256=25AsIT-jg8SrlkPeynUwwm4PvTOrHcRO2Ba_omnNLUY,7512
458
464
  tests/regscale/core/test_app.py,sha256=IOLC6dzgsZF5PdGRHaTqFvJa-BV3dozRK30QQd6JvQs,18099
459
465
  tests/regscale/core/test_login.py,sha256=Kl7ySS8JU7SzhmupaDexeUH8VOMjtMRJvW8-CimxHqU,1166
460
- tests/regscale/core/test_logz.py,sha256=ymbhlOHaV8PZm0-cHluMuEelw662kj6dX0oN1Ki1A2Q,2278
466
+ tests/regscale/core/test_logz.py,sha256=Yf6tAthETLlYOEp3hee3ovDw-WnZ_6fTw3e1rjx4xSw,2621
461
467
  tests/regscale/core/test_sbom_generator.py,sha256=lgzo1HRbkNIIDZIeKiM2JbbIYQsak0BpU0GlvbrcexM,2935
462
468
  tests/regscale/core/test_validation_utils.py,sha256=5GHQfSVEr3f1HzEatI5CyCgGriyc-OPyKbc1YQ9zRjI,5464
463
469
  tests/regscale/core/test_version.py,sha256=kQ6-moby9P62Kb9CbSiBLwhK10rgsMjSV85dnhkPPeI,2565
@@ -473,9 +479,9 @@ tests/regscale/models/test_regscale_model.py,sha256=ZsrEZkC4EtdIsoQuayn1xv2gEGcV
473
479
  tests/regscale/models/test_report.py,sha256=eiSvS_zS0aVeL0HBvtmHVvEzcfF9ZFVn2twj5g8KttY,970
474
480
  tests/regscale/models/test_tenable_integrations.py,sha256=PNJC2Zu6lv1xj7y6e1yOsz5FktSU3PRKb5x3n5YG3w0,4072
475
481
  tests/regscale/models/test_user_model.py,sha256=e9olv28qBApgnvK6hFHOgXjUC-pkaV8aGDirEIWASL4,4427
476
- regscale_cli-6.16.0.0.dist-info/LICENSE,sha256=ytNhYQ9Rmhj_m-EX2pPq9Ld6tH5wrqqDYg-fCf46WDU,1076
477
- regscale_cli-6.16.0.0.dist-info/METADATA,sha256=wA9m-sBk1Z9mnp24-zc36AvSCxUD-wrSmeWYbPxtpns,30910
478
- regscale_cli-6.16.0.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
479
- regscale_cli-6.16.0.0.dist-info/entry_points.txt,sha256=cLOaIP1eRv1yZ2u7BvpE3aB4x3kDrDwkpeisKOu33z8,269
480
- regscale_cli-6.16.0.0.dist-info/top_level.txt,sha256=Uv8VUCAdxRm70bgrD4YNEJUmDhBThad_1aaEFGwRByc,15
481
- regscale_cli-6.16.0.0.dist-info/RECORD,,
482
+ regscale_cli-6.16.2.0.dist-info/LICENSE,sha256=ytNhYQ9Rmhj_m-EX2pPq9Ld6tH5wrqqDYg-fCf46WDU,1076
483
+ regscale_cli-6.16.2.0.dist-info/METADATA,sha256=AzR8rsJ0selaUTdj2JdFYuQXpO_bHipH6P-SKeRUin0,30913
484
+ regscale_cli-6.16.2.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
485
+ regscale_cli-6.16.2.0.dist-info/entry_points.txt,sha256=cLOaIP1eRv1yZ2u7BvpE3aB4x3kDrDwkpeisKOu33z8,269
486
+ regscale_cli-6.16.2.0.dist-info/top_level.txt,sha256=Uv8VUCAdxRm70bgrD4YNEJUmDhBThad_1aaEFGwRByc,15
487
+ regscale_cli-6.16.2.0.dist-info/RECORD,,
@@ -22,6 +22,14 @@ def test_create_logger_adds_custom_handler():
22
22
  assert any(isinstance(handler, logging.StreamHandler) for handler in logger.handlers)
23
23
 
24
24
 
25
+ def test_create_logger_with_capture_events_handler():
26
+ from regscale.integrations.public.fedramp.ssp_logger import CaptureEventsHandler
27
+
28
+ custom_handler = CaptureEventsHandler([], [], [])
29
+ logger = create_logger(custom_handler=custom_handler)
30
+ assert any(isinstance(handler, CaptureEventsHandler) for handler in logger.handlers)
31
+
32
+
25
33
  def test_create_logger_creates_file_handler_when_not_in_container():
26
34
  with mock.patch.dict(os.environ, {"REGSCALE_ECS": "False"}):
27
35
  logger = create_logger()