regscale-cli 6.27.2.0__py3-none-any.whl → 6.28.0.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 (140) hide show
  1. regscale/_version.py +1 -1
  2. regscale/core/app/application.py +1 -0
  3. regscale/core/app/internal/control_editor.py +73 -21
  4. regscale/core/app/internal/login.py +4 -1
  5. regscale/core/app/internal/model_editor.py +219 -64
  6. regscale/core/app/utils/app_utils.py +11 -2
  7. regscale/core/login.py +21 -4
  8. regscale/core/utils/date.py +77 -1
  9. regscale/dev/cli.py +26 -0
  10. regscale/dev/version.py +72 -0
  11. regscale/integrations/commercial/__init__.py +15 -1
  12. regscale/integrations/commercial/amazon/amazon/__init__.py +0 -0
  13. regscale/integrations/commercial/amazon/amazon/common.py +204 -0
  14. regscale/integrations/commercial/amazon/common.py +48 -58
  15. regscale/integrations/commercial/aws/audit_manager_compliance.py +2671 -0
  16. regscale/integrations/commercial/aws/cli.py +3093 -55
  17. regscale/integrations/commercial/aws/cloudtrail_control_mappings.py +333 -0
  18. regscale/integrations/commercial/aws/cloudtrail_evidence.py +501 -0
  19. regscale/integrations/commercial/aws/cloudwatch_control_mappings.py +357 -0
  20. regscale/integrations/commercial/aws/cloudwatch_evidence.py +490 -0
  21. regscale/integrations/commercial/aws/config_compliance.py +914 -0
  22. regscale/integrations/commercial/aws/conformance_pack_mappings.py +198 -0
  23. regscale/integrations/commercial/aws/evidence_generator.py +283 -0
  24. regscale/integrations/commercial/aws/guardduty_control_mappings.py +340 -0
  25. regscale/integrations/commercial/aws/guardduty_evidence.py +1053 -0
  26. regscale/integrations/commercial/aws/iam_control_mappings.py +368 -0
  27. regscale/integrations/commercial/aws/iam_evidence.py +574 -0
  28. regscale/integrations/commercial/aws/inventory/__init__.py +223 -22
  29. regscale/integrations/commercial/aws/inventory/base.py +107 -5
  30. regscale/integrations/commercial/aws/inventory/resources/audit_manager.py +513 -0
  31. regscale/integrations/commercial/aws/inventory/resources/cloudtrail.py +315 -0
  32. regscale/integrations/commercial/aws/inventory/resources/cloudtrail_logs_metadata.py +476 -0
  33. regscale/integrations/commercial/aws/inventory/resources/cloudwatch.py +191 -0
  34. regscale/integrations/commercial/aws/inventory/resources/compute.py +66 -9
  35. regscale/integrations/commercial/aws/inventory/resources/config.py +464 -0
  36. regscale/integrations/commercial/aws/inventory/resources/containers.py +74 -9
  37. regscale/integrations/commercial/aws/inventory/resources/database.py +106 -31
  38. regscale/integrations/commercial/aws/inventory/resources/guardduty.py +286 -0
  39. regscale/integrations/commercial/aws/inventory/resources/iam.py +470 -0
  40. regscale/integrations/commercial/aws/inventory/resources/inspector.py +476 -0
  41. regscale/integrations/commercial/aws/inventory/resources/integration.py +175 -61
  42. regscale/integrations/commercial/aws/inventory/resources/kms.py +447 -0
  43. regscale/integrations/commercial/aws/inventory/resources/networking.py +103 -67
  44. regscale/integrations/commercial/aws/inventory/resources/s3.py +394 -0
  45. regscale/integrations/commercial/aws/inventory/resources/security.py +268 -72
  46. regscale/integrations/commercial/aws/inventory/resources/securityhub.py +473 -0
  47. regscale/integrations/commercial/aws/inventory/resources/storage.py +53 -29
  48. regscale/integrations/commercial/aws/inventory/resources/systems_manager.py +657 -0
  49. regscale/integrations/commercial/aws/inventory/resources/vpc.py +655 -0
  50. regscale/integrations/commercial/aws/kms_control_mappings.py +288 -0
  51. regscale/integrations/commercial/aws/kms_evidence.py +879 -0
  52. regscale/integrations/commercial/aws/ocsf/__init__.py +7 -0
  53. regscale/integrations/commercial/aws/ocsf/constants.py +115 -0
  54. regscale/integrations/commercial/aws/ocsf/mapper.py +435 -0
  55. regscale/integrations/commercial/aws/org_control_mappings.py +286 -0
  56. regscale/integrations/commercial/aws/org_evidence.py +666 -0
  57. regscale/integrations/commercial/aws/s3_control_mappings.py +356 -0
  58. regscale/integrations/commercial/aws/s3_evidence.py +632 -0
  59. regscale/integrations/commercial/aws/scanner.py +853 -205
  60. regscale/integrations/commercial/aws/security_hub.py +319 -0
  61. regscale/integrations/commercial/aws/session_manager.py +282 -0
  62. regscale/integrations/commercial/aws/ssm_control_mappings.py +291 -0
  63. regscale/integrations/commercial/aws/ssm_evidence.py +492 -0
  64. regscale/integrations/commercial/synqly/query_builder.py +4 -1
  65. regscale/integrations/compliance_integration.py +308 -38
  66. regscale/integrations/control_matcher.py +78 -23
  67. regscale/integrations/due_date_handler.py +3 -0
  68. regscale/integrations/public/csam/csam.py +572 -763
  69. regscale/integrations/public/csam/csam_agency_defined.py +179 -0
  70. regscale/integrations/public/csam/csam_common.py +154 -0
  71. regscale/integrations/public/csam/csam_controls.py +432 -0
  72. regscale/integrations/public/csam/csam_poam.py +124 -0
  73. regscale/integrations/public/fedramp/click.py +17 -4
  74. regscale/integrations/public/fedramp/fedramp_cis_crm.py +271 -62
  75. regscale/integrations/public/fedramp/poam/scanner.py +74 -7
  76. regscale/integrations/scanner_integration.py +415 -85
  77. regscale/models/integration_models/cisa_kev_data.json +80 -20
  78. regscale/models/integration_models/synqly_models/capabilities.json +1 -1
  79. regscale/models/integration_models/synqly_models/connectors/vulnerabilities.py +44 -3
  80. regscale/models/integration_models/synqly_models/ocsf_mapper.py +41 -12
  81. regscale/models/platform.py +3 -0
  82. regscale/models/regscale_models/__init__.py +5 -0
  83. regscale/models/regscale_models/assessment.py +2 -1
  84. regscale/models/regscale_models/component.py +1 -1
  85. regscale/models/regscale_models/control_implementation.py +55 -24
  86. regscale/models/regscale_models/control_objective.py +74 -5
  87. regscale/models/regscale_models/file.py +2 -0
  88. regscale/models/regscale_models/issue.py +2 -5
  89. regscale/models/regscale_models/organization.py +3 -0
  90. regscale/models/regscale_models/regscale_model.py +17 -5
  91. regscale/models/regscale_models/security_plan.py +1 -0
  92. regscale/regscale.py +11 -1
  93. {regscale_cli-6.27.2.0.dist-info → regscale_cli-6.28.0.0.dist-info}/METADATA +1 -1
  94. {regscale_cli-6.27.2.0.dist-info → regscale_cli-6.28.0.0.dist-info}/RECORD +140 -57
  95. tests/regscale/core/test_login.py +171 -4
  96. tests/regscale/integrations/commercial/aws/__init__.py +0 -0
  97. tests/regscale/integrations/commercial/aws/test_audit_manager_compliance.py +1304 -0
  98. tests/regscale/integrations/commercial/aws/test_audit_manager_evidence_aggregation.py +341 -0
  99. tests/regscale/integrations/commercial/aws/test_aws_audit_manager_collector.py +1155 -0
  100. tests/regscale/integrations/commercial/aws/test_aws_cloudtrail_collector.py +534 -0
  101. tests/regscale/integrations/commercial/aws/test_aws_config_collector.py +400 -0
  102. tests/regscale/integrations/commercial/aws/test_aws_guardduty_collector.py +315 -0
  103. tests/regscale/integrations/commercial/aws/test_aws_iam_collector.py +458 -0
  104. tests/regscale/integrations/commercial/aws/test_aws_inspector_collector.py +353 -0
  105. tests/regscale/integrations/commercial/aws/test_aws_inventory_integration.py +530 -0
  106. tests/regscale/integrations/commercial/aws/test_aws_kms_collector.py +919 -0
  107. tests/regscale/integrations/commercial/aws/test_aws_s3_collector.py +722 -0
  108. tests/regscale/integrations/commercial/aws/test_aws_scanner_integration.py +722 -0
  109. tests/regscale/integrations/commercial/aws/test_aws_securityhub_collector.py +792 -0
  110. tests/regscale/integrations/commercial/aws/test_aws_systems_manager_collector.py +918 -0
  111. tests/regscale/integrations/commercial/aws/test_aws_vpc_collector.py +996 -0
  112. tests/regscale/integrations/commercial/aws/test_cli_evidence.py +431 -0
  113. tests/regscale/integrations/commercial/aws/test_cloudtrail_control_mappings.py +452 -0
  114. tests/regscale/integrations/commercial/aws/test_cloudtrail_evidence.py +788 -0
  115. tests/regscale/integrations/commercial/aws/test_config_compliance.py +298 -0
  116. tests/regscale/integrations/commercial/aws/test_conformance_pack_mappings.py +200 -0
  117. tests/regscale/integrations/commercial/aws/test_evidence_generator.py +386 -0
  118. tests/regscale/integrations/commercial/aws/test_guardduty_control_mappings.py +564 -0
  119. tests/regscale/integrations/commercial/aws/test_guardduty_evidence.py +1041 -0
  120. tests/regscale/integrations/commercial/aws/test_iam_control_mappings.py +718 -0
  121. tests/regscale/integrations/commercial/aws/test_iam_evidence.py +1375 -0
  122. tests/regscale/integrations/commercial/aws/test_kms_control_mappings.py +656 -0
  123. tests/regscale/integrations/commercial/aws/test_kms_evidence.py +1163 -0
  124. tests/regscale/integrations/commercial/aws/test_ocsf_mapper.py +370 -0
  125. tests/regscale/integrations/commercial/aws/test_org_control_mappings.py +546 -0
  126. tests/regscale/integrations/commercial/aws/test_org_evidence.py +1240 -0
  127. tests/regscale/integrations/commercial/aws/test_s3_control_mappings.py +672 -0
  128. tests/regscale/integrations/commercial/aws/test_s3_evidence.py +987 -0
  129. tests/regscale/integrations/commercial/aws/test_scanner_evidence.py +373 -0
  130. tests/regscale/integrations/commercial/aws/test_security_hub_config_filtering.py +539 -0
  131. tests/regscale/integrations/commercial/aws/test_session_manager.py +516 -0
  132. tests/regscale/integrations/commercial/aws/test_ssm_control_mappings.py +588 -0
  133. tests/regscale/integrations/commercial/aws/test_ssm_evidence.py +735 -0
  134. tests/regscale/integrations/commercial/test_aws.py +55 -56
  135. tests/regscale/integrations/test_control_matcher.py +24 -0
  136. tests/regscale/models/test_control_implementation.py +118 -3
  137. {regscale_cli-6.27.2.0.dist-info → regscale_cli-6.28.0.0.dist-info}/LICENSE +0 -0
  138. {regscale_cli-6.27.2.0.dist-info → regscale_cli-6.28.0.0.dist-info}/WHEEL +0 -0
  139. {regscale_cli-6.27.2.0.dist-info → regscale_cli-6.28.0.0.dist-info}/entry_points.txt +0 -0
  140. {regscale_cli-6.27.2.0.dist-info → regscale_cli-6.28.0.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  regscale/__init__.py,sha256=ZygAIkX6Nbjag1czWdQa-yP-GM1mBE_9ss21Xh__JFc,34
2
- regscale/_version.py,sha256=Lq40cZd2OT7sJZZWQh9y8KbuzbrUJbNhz2k2NIgwDVs,1198
3
- regscale/regscale.py,sha256=4LzcbkBxPh23cCLANVEEr6uNoZ0sebHec0N-VJm5_vA,31480
2
+ regscale/_version.py,sha256=qtq_YKa0955OZSoXy4X0c-FOMyizPg9XpxVvfhMvFN4,1198
3
+ regscale/regscale.py,sha256=SiwZoh8r1ZfVqMluzI1czdvkqrtMePYkcB0eKuvLtf8,31702
4
4
  regscale/airflow/__init__.py,sha256=yMwN0Bz4JbM0nl5qY_hPegxo_O2ilhTOL9PY5Njhn-s,270
5
5
  regscale/airflow/click_dags.py,sha256=H3SUR5jkvInNMv1gu-VG-Ja_H-kH145CpQYNalWNAbE,4520
6
6
  regscale/airflow/click_mixins.py,sha256=BTwKWsEu6KVtlrzFbXpD_RuEpMzc-CSnCCySUzqzCgQ,3571
@@ -33,31 +33,31 @@ regscale/ansible/__init__.py,sha256=5l22v8ZPkIR5Yp8NvBZZU4TFdlJVaGtcCaZq_S1iD4I,
33
33
  regscale/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
34
  regscale/core/decorators.py,sha256=YuX9VCbCJh76qlc_6ungu0nD4VT1VsV2spXH_bsDTfY,894
35
35
  regscale/core/lazy_group.py,sha256=S2-nA5tzm47A929NOTqGkzrzKuZQDlq2OAPbNnG1W1Q,2046
36
- regscale/core/login.py,sha256=-8vy1HVAtv1iARnZh6uzYtwmx8VFYPwLYR0QAf1ttCk,2714
36
+ regscale/core/login.py,sha256=DsGgAxWlsiNJnWfERoOTlNQ-O7I07MQ6HdUHFrkbAXQ,3511
37
37
  regscale/core/app/__init__.py,sha256=nGcCN1vWBAnZzoccIlt0jwWQdegCOrBWOB7LPhQkQSs,96
38
38
  regscale/core/app/api.py,sha256=yJhlKICpy8irEcZaFWq36_Bi2I_VcQ7Fh_LtGm0-H98,23632
39
- regscale/core/app/application.py,sha256=vN2ppgS9sNXg7KAYt3RtQKErTckln1aUADFnRDXKN30,33141
39
+ regscale/core/app/application.py,sha256=UPAag-VGTv2VOzXx5a1bCJmv8eCgHcx3yhNAo9etNVk,33181
40
40
  regscale/core/app/logz.py,sha256=8AdBKmquv45JGi5fCMc38JqQg6-FpUONGmqfd5EGwrI,2583
41
41
  regscale/core/app/internal/__init__.py,sha256=rod4nmE7rrYDdbuYF4mCWz49TK_2r-v4tWy1UHW63r0,4808
42
42
  regscale/core/app/internal/admin_actions.py,sha256=hOdma7QGwFblmxEj9UTjiWWmZGUS5_ZFtxL2qZdhf-Q,7443
43
43
  regscale/core/app/internal/assessments_editor.py,sha256=UozEaQR1v3eXbkFgOY11CkjMLEAF27ej5vlMQ4O9XVA,31477
44
44
  regscale/core/app/internal/catalog.py,sha256=svBAgFZaGrkNHh2gZEo1ex2vdjllAIc4940soGykHOc,11088
45
45
  regscale/core/app/internal/comparison.py,sha256=eRnCKhq3Kyzh-aUgD6phQH0eONCSCkl5Vz0dr2ymDpQ,16720
46
- regscale/core/app/internal/control_editor.py,sha256=bvltPfUJERVcPW14njFzMHLzb4KLcXlmtAJMRDXegXI,19338
46
+ regscale/core/app/internal/control_editor.py,sha256=aLOScsQadNwL0ekv_NJuj5Xt-PMWygmkEu6Lploo-Gk,20997
47
47
  regscale/core/app/internal/encrypt.py,sha256=yOEMDDlpI0Sc0LkoeCtXbypnOF8cxoDrzKRU5d3POFQ,5927
48
48
  regscale/core/app/internal/evidence.py,sha256=yXHBWWYfo471oJ9jTgGkWDtiB0wsVuq6AQ2zQEWFP6E,68006
49
49
  regscale/core/app/internal/file_uploads.py,sha256=EfQ4ViJBHzU9bxnFunK3ahA6T9A6pnA-Jk2NrtgmrQY,4776
50
50
  regscale/core/app/internal/healthcheck.py,sha256=ef4Mwk19vi71bv-Xkny5_EGG1UXTbCO5dvEIzHyyfVA,2010
51
- regscale/core/app/internal/login.py,sha256=AKmZq9kxwpNV3LnAGwtdI2dn0qh1SG_mZ7OtIRSce1Q,10968
51
+ regscale/core/app/internal/login.py,sha256=CDuaH5U27jm4Tr2s7-VVUsA8GxaKuwB181eIjplCZ4k,11103
52
52
  regscale/core/app/internal/migrations.py,sha256=wHIzb1uglLVOXawnb-K3Yt70Z5QyfQYb8ZZOMDrNRU4,7983
53
- regscale/core/app/internal/model_editor.py,sha256=0sxfg92TJYyECU9KwgHooXeY3ZdaF2i5gGWe1gButFY,61696
53
+ regscale/core/app/internal/model_editor.py,sha256=ii8qKvAT6lAjeWqkJoDmUya-eARiFfE2vy18aldRqnE,68316
54
54
  regscale/core/app/internal/poam_editor.py,sha256=3PtpSMpV7bqKFuTHD2ACYcTyB3EEtTRKuYv-XArjd0A,22929
55
55
  regscale/core/app/internal/set_permissions.py,sha256=BfdzT-2l2bBFKgho4lwh5IhcqoDTZbLyxNyliGW-Yv8,6470
56
56
  regscale/core/app/internal/workflow.py,sha256=SpgYk1QyzdilVLOK1fFzaKhdLspumaugf5VezgboxhQ,4007
57
57
  regscale/core/app/utils/XMLIR.py,sha256=M_RrCsbjznihatkucCKw6dPgHTPQczXyqIdUXWhuCLI,8328
58
58
  regscale/core/app/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
59
  regscale/core/app/utils/api_handler.py,sha256=T1meKw6Yi3ZAgRbQ1xuKDVh9Q9B8mbMqqN_LrSwIlAM,11765
60
- regscale/core/app/utils/app_utils.py,sha256=k_HEO4cFIddZMUtr56Z8A5NEjLz1Tl8vl2c3pqjXKvc,38652
60
+ regscale/core/app/utils/app_utils.py,sha256=z4USisXQJmshMkPmA0C9HdjvLu-NvESdLSDMoMR5lOM,39046
61
61
  regscale/core/app/utils/file_utils.py,sha256=x7cqYPxJ-PgSb2lX_K6zhdqyGQjOCmr04lnqdBQV3hI,9269
62
62
  regscale/core/app/utils/parser_utils.py,sha256=aBEgcFwbJMD-ARf3wzf-tyWwR6NHvzEcdYcPMm8hGqo,2533
63
63
  regscale/core/app/utils/pickle_file_handler.py,sha256=iMdv4N8z00TB5LyPdxIcLKNRpDQVWQ8ZQWAqCKpqmF0,1695
@@ -94,32 +94,33 @@ regscale/core/static/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
94
94
  regscale/core/static/regex.py,sha256=KLg-do2oPuUD6bQG9usqqSy5sxqlSEAEuUUbGVkZ6eU,384
95
95
  regscale/core/utils/__init__.py,sha256=Eyvc210t-KRqvTcV5DNWRjKO99CdWy_dC57wfggFWcw,3876
96
96
  regscale/core/utils/click_utils.py,sha256=y6vAbaPoT0Abb8siS1tvJxJQTm4sbWQTeq5nTDIgBtI,375
97
- regscale/core/utils/date.py,sha256=yGte1ttWRwKRKfU0LT5yPNfr62xn5YnDo4zMgAhua7k,10114
97
+ regscale/core/utils/date.py,sha256=q5uHQ-eoiAUxH9EEGTDkSFukbFE_jjYw3k-po9MtcIc,12853
98
98
  regscale/core/utils/graphql.py,sha256=oXGBcAuDa0uasMnD4CokIzzKKa-IgExdKXLwtaK2_tA,8386
99
99
  regscale/core/utils/urls.py,sha256=ZcU9OJqDmVQXgu6BrLESIp2KMkkUuzTZZ_wHsZMzfA4,687
100
100
  regscale/dev/__init__.py,sha256=wVP59B1iurp36ul8pD_CjmunJLHOdKWWodz1r5loNvw,190
101
101
  regscale/dev/analysis.py,sha256=9s6pfTGK6FBqV-karQQnCc_GYHloETmFyvsvVJ5jBm8,15603
102
- regscale/dev/cli.py,sha256=VT9QHhfJX10KdJlSL9zBx-D__0H7qqS8G1GPwOb59Xs,8783
102
+ regscale/dev/cli.py,sha256=Z-9NLUAleRDybwW2Muku8b8lYeOBYfC7dtMlTbvPtzA,9586
103
103
  regscale/dev/code_gen.py,sha256=9oNDyS4TccRMb9v-tuexak7eXUMQqrqRjBpU5-N_-xE,26569
104
104
  regscale/dev/dirs.py,sha256=wmEKM4UZjMXDiNi6a17JchhyfQNvJg6ACQmqT_Xt6V0,2044
105
105
  regscale/dev/docs.py,sha256=Ngtd2Z0vYXYQXUIAqhL02f-_fUuIpmTPa5YIO3wAOHY,14678
106
106
  regscale/dev/monitoring.py,sha256=h0pewRSXF8bLEtQ9dB3D0XqGTM4HtjaCiUUH3ijEllM,835
107
107
  regscale/dev/profiling.py,sha256=7Eln3y5xaGgYQMRTtJjtD_HRHeW13qkR4kY0qAXxIbA,6897
108
+ regscale/dev/version.py,sha256=bO6l1BibWuJ73fj4OdIZ2g2wZ_l3gE4VOU79s6H2fto,2324
108
109
  regscale/exceptions/__init__.py,sha256=97lZsao_6Dz4U8LVgOiXV0arRkkN6XAEu4ZkelMh4iM,129
109
110
  regscale/exceptions/license_exception.py,sha256=5lDYW1uGf7dHFKBkhzYD3FlNnI6W4BICXi24OJyOs_w,195
110
111
  regscale/exceptions/validation_exception.py,sha256=_DW_GARtPr_Dyy8tolnvC_AYsHRsUUvRz_Rkk8-fjgk,219
111
112
  regscale/integrations/__init__.py,sha256=Sqthp3Jggo7co_go380cLn3OAb0cHwqL609_4QJSFBY,58
112
113
  regscale/integrations/api_paginator.py,sha256=73rjaNM9mGv8evHAeoObXEjZPg-bJuGPo60ewCLEil8,33192
113
114
  regscale/integrations/api_paginator_example.py,sha256=lEuYI-xEGcjnXuIzbCobCP0YRuukLF0s8S3d382SAH4,12119
114
- regscale/integrations/compliance_integration.py,sha256=_KzzmUGoXvA2o4nXR3jzdd4-yO56nSn2fMDLNzRgJRI,91699
115
- regscale/integrations/control_matcher.py,sha256=vZjzQz2NhFwP6in-jLDQeBGnigQ78e2mcSaKumkUrZI,14595
116
- regscale/integrations/due_date_handler.py,sha256=EAKSOsqpj5CpFQphzvkYcHgDrJ4BQlKayDGeiZVUvWo,14122
115
+ regscale/integrations/compliance_integration.py,sha256=0OPzqEGQGjHyYdIH8ilN_qnjfdmOGjV3dvk2HBAJrYA,103629
116
+ regscale/integrations/control_matcher.py,sha256=g2adPda4AwKlpOe3R_GD-zPQY4T8n9ioSAzsNOQfjs0,16706
117
+ regscale/integrations/due_date_handler.py,sha256=kO87Rhs6gUBJhCGVcV4A3WoghGceKVy_wCYQ5k1bH-s,14356
117
118
  regscale/integrations/integration_override.py,sha256=HjYBCuvNpU3t3FptaqYAkdexLFOZBAFrFE9xU0RD1Nc,5867
118
119
  regscale/integrations/jsonl_scanner_integration.py,sha256=l8nq_T3rE1XX-6HxrNHm3xzxCNWbIjxQvGMdtZWs7KQ,57003
119
120
  regscale/integrations/milestone_manager.py,sha256=td5m-2LIUkHY7S3rtGwj-SLLuSGN4aiJOPAiKRcE4A4,10779
120
- regscale/integrations/scanner_integration.py,sha256=VcHldJCmSIy0oGL0G5tF6ivnrLAUuhGgWisC_F24G3g,194028
121
+ regscale/integrations/scanner_integration.py,sha256=OJ9rcNoABkxIyvsi0UYK7yOFqgTdD1i9g_tB22xe3Ds,207863
121
122
  regscale/integrations/variables.py,sha256=MfQ34WuYVN5437A9sZ2ssHRkA3gFhMHfk1DVasceGmY,2336
122
- regscale/integrations/commercial/__init__.py,sha256=9IWhVfJec2O67JJnFs5T0cM-nSxadgOdl7jcIGXnJDE,14532
123
+ regscale/integrations/commercial/__init__.py,sha256=It6f4dwcbuY66MDp7K4D2O5t1G0AOqHS9Zd05AD_bwg,15699
123
124
  regscale/integrations/commercial/ad.py,sha256=YXSmK8vRf6yi2GnREGa5GrE6GelhFrLj44SY8AO1pK0,15509
124
125
  regscale/integrations/commercial/burp.py,sha256=3BLNKLfwL1x7jfhd8MJD6hdHEpj58pOEtrtCkn2hcWA,3344
125
126
  regscale/integrations/commercial/cpe.py,sha256=vUHKGdq0UlR38pZWqqHLLTdDfooLtE9zIiFHdoFcUr0,5735
@@ -140,22 +141,62 @@ regscale/integrations/commercial/sqlserver.py,sha256=PcDLmsZ9xU5NlFpwPZyMhhxCgX4
140
141
  regscale/integrations/commercial/veracode.py,sha256=sKeGXvjqP8LfFP56xavAyx5CxfKxpJIEw-PTxrHJ8bc,3374
141
142
  regscale/integrations/commercial/xray.py,sha256=rsmlGqj4N7hzt6rW5UIKOBZD2maDVwXxOXiYKlI6F8c,2728
142
143
  regscale/integrations/commercial/amazon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
143
- regscale/integrations/commercial/amazon/common.py,sha256=EHTu5YEceOsznZQTB7IF9K1oS-JDSYlFBBRMZDvMhaQ,6189
144
+ regscale/integrations/commercial/amazon/common.py,sha256=M52UraxaQq4HJ3nyBtHntKye9rh4TaOLCpd_SI-48RE,6166
145
+ regscale/integrations/commercial/amazon/amazon/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
146
+ regscale/integrations/commercial/amazon/amazon/common.py,sha256=1os3mcqFdZFfUS8g-bHeBpfsWm3BCKwb1ebePuw6_t0,7180
144
147
  regscale/integrations/commercial/aqua/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
145
148
  regscale/integrations/commercial/aqua/aqua.py,sha256=bdwqyir9ztGRwqZlWBQIHjtBEo2utSy5HJoraAx823I,2656
146
149
  regscale/integrations/commercial/aws/__init__.py,sha256=Pii3CMGvIwZnTSenuvDvuybWXBtIRdGyvF02sykzg1A,203
147
- regscale/integrations/commercial/aws/cli.py,sha256=Q2QlUcbYRzZzg9VZ5RDOTdVkkWc4UFYX7f5cMNlOZMY,14853
148
- regscale/integrations/commercial/aws/scanner.py,sha256=2XtHT3En5VoFYt-qGnIsNenThofZHkzC3fbJwHA6gPI,56765
149
- regscale/integrations/commercial/aws/inventory/__init__.py,sha256=nBWBRs_lTbp3tfCcnmN855qQpnXtwyJ5miTXlD7Uhcs,4302
150
- regscale/integrations/commercial/aws/inventory/base.py,sha256=KL1Ntz0h0WGDu84LQf3y92uLl9a0sl4yIFi6-ZIFAMI,2068
150
+ regscale/integrations/commercial/aws/audit_manager_compliance.py,sha256=cqv1K4u_rFxcZ5H1KE46qPn-i7Cgf71tcjp7NPhXxCw,113349
151
+ regscale/integrations/commercial/aws/cli.py,sha256=HLoS50KNE5LhSYVidebudRedvYyxo-ZOe5HnA8p-Yiw,126919
152
+ regscale/integrations/commercial/aws/cloudtrail_control_mappings.py,sha256=mMGAMfGwGB_xK9n2fOlCzARLtTXfuWirqmMoEDtHjxE,12909
153
+ regscale/integrations/commercial/aws/cloudtrail_evidence.py,sha256=CdTTKsbvd1cRS6XoK59UsYWN6aGGekyo4Ng4Qq3cPMs,20835
154
+ regscale/integrations/commercial/aws/cloudwatch_control_mappings.py,sha256=H4fbQgqa_a_TI6e2O7oH24xigQyvU6nvoxUZ4FZvlxQ,13979
155
+ regscale/integrations/commercial/aws/cloudwatch_evidence.py,sha256=3-bl-naBvDfz9wb3a-1VHLBWu_7SzP4Xt9uOBxs2I2g,20450
156
+ regscale/integrations/commercial/aws/config_compliance.py,sha256=TAGJQQU7a8U8VjKScVk-y8uGeA3EZp3s1b3_to4dVqw,37377
157
+ regscale/integrations/commercial/aws/conformance_pack_mappings.py,sha256=2m6v3mOkAmw8BaHKVEJCfuivbrND_t0ZBf1giE1LWwY,7309
158
+ regscale/integrations/commercial/aws/evidence_generator.py,sha256=z2vxJWWdKoOi2Ecj31HUWVeHC4u3hLPMga4oUbp73jw,10344
159
+ regscale/integrations/commercial/aws/guardduty_control_mappings.py,sha256=1bmcwiJr3Kh2W4g-TJr48UVySa3XWcXcZJ90cGYOYwo,12300
160
+ regscale/integrations/commercial/aws/guardduty_evidence.py,sha256=gpGdm6WCoyu3I0Iy11aMkbXIp_3a_m1rp09IlL4qIUg,44204
161
+ regscale/integrations/commercial/aws/iam_control_mappings.py,sha256=By100FzB-_0DAq0Q7ryhyUB5HszEOOB9XTGuJ7PJVQg,13788
162
+ regscale/integrations/commercial/aws/iam_evidence.py,sha256=BW2xmR5oivJNIF4nxCdH-ogJi-UoleSmLn_3vnkefI4,24291
163
+ regscale/integrations/commercial/aws/kms_control_mappings.py,sha256=7Kd6lNRE3SVokG2JexeesHEEtgSARFslC1zJzdpY8ug,10646
164
+ regscale/integrations/commercial/aws/kms_evidence.py,sha256=FxRrBwjzSH_lfyTg_8HfNNmYQfft8gSa4iy0Y6Fnpdo,33837
165
+ regscale/integrations/commercial/aws/org_control_mappings.py,sha256=LtsZyF2X9VDs4t3-b1_xM9BiXau9RiNuM8Gh8x1T334,10688
166
+ regscale/integrations/commercial/aws/org_evidence.py,sha256=LRp05HmVi0kSKvOJTWAYlLZIMMYxP1pNUO3D9WVNiUA,27485
167
+ regscale/integrations/commercial/aws/s3_control_mappings.py,sha256=AkNu7beMJPhSF9QL2JsupLSdqrnvOIbnjBir-M3-NmM,14147
168
+ regscale/integrations/commercial/aws/s3_evidence.py,sha256=aLNi82P4Qk7blo669vwrjnF21U4C8mv1nv3SSG9pdd4,25376
169
+ regscale/integrations/commercial/aws/scanner.py,sha256=-UvuJzIM4akCniKE3J1nn3NBY5L2rFNb2zV92WgwbuU,82374
170
+ regscale/integrations/commercial/aws/security_hub.py,sha256=f5OOF_D5uVU_1sDjjch4c4nc-h9A5EGZTN3GQ62YYhQ,13411
171
+ regscale/integrations/commercial/aws/session_manager.py,sha256=WLzc4O3QF5O01qxcgFKfpp62gDdTb5wUzqA8fDVde3E,10757
172
+ regscale/integrations/commercial/aws/ssm_control_mappings.py,sha256=HwWCcXwimyO9hgV6R5dS0WD3BynHi3r1lqbDltBQcow,11373
173
+ regscale/integrations/commercial/aws/ssm_evidence.py,sha256=-xqq1nN-MLUWqdBPjQT1EAU2HzDfyGjOXfHHAgHJpXo,20570
174
+ regscale/integrations/commercial/aws/inventory/__init__.py,sha256=LQW_Kb2GUgAuV548alhJfgeoNxpO8yg_GWoWJLn6nl4,13711
175
+ regscale/integrations/commercial/aws/inventory/base.py,sha256=8Ea1xm2F3erJG_P5isPQ3cUSLpupHIJW8PKoNMsg17w,5829
151
176
  regscale/integrations/commercial/aws/inventory/resources/__init__.py,sha256=wP8TMIixWGCn2rBNFW6XzhME-xO8kpxi9edMUJgpso4,523
152
- regscale/integrations/commercial/aws/inventory/resources/compute.py,sha256=rNi9KGbaKVtag1isERIEgcwf2I1kcFXdY0GDkbLB6BQ,9752
153
- regscale/integrations/commercial/aws/inventory/resources/containers.py,sha256=Z22Z66la-vmctYg40MAuSSWBcUmWDcwTF4R-f3GGcKw,4412
154
- regscale/integrations/commercial/aws/inventory/resources/database.py,sha256=W1MUh4TsH4RpzLgzWC3pL0jLH6YUNXlgujqSfjJuW8s,4734
155
- regscale/integrations/commercial/aws/inventory/resources/integration.py,sha256=mI3nbbYFM1ufO1dlIN5-VTyiICORo-666i4ssI6UbVA,11130
156
- regscale/integrations/commercial/aws/inventory/resources/networking.py,sha256=CkPBE2FA5dyaTjUVvVTFjoVCVO7NDs7dKjBvUs3kKYA,11597
157
- regscale/integrations/commercial/aws/inventory/resources/security.py,sha256=EWH2f_kFUqqAYdcBQ0gNzXTIcpMcJU02-robtiROFOc,10459
158
- regscale/integrations/commercial/aws/inventory/resources/storage.py,sha256=fEikYzdNATpXwqhHw41yYyyWUVpC-52Iif9NzXThVkI,3427
177
+ regscale/integrations/commercial/aws/inventory/resources/audit_manager.py,sha256=SfomnNUOPPv11VAd7wdxWLBlUb64l7J5l4OjCE0BpHc,19411
178
+ regscale/integrations/commercial/aws/inventory/resources/cloudtrail.py,sha256=rFx4nevarehbXP-3VJ4NiYFPLgM9pjTLhe7o5rq9Irc,11252
179
+ regscale/integrations/commercial/aws/inventory/resources/cloudtrail_logs_metadata.py,sha256=ed0WznC_AV-hWBOSAjXHo06eBS7KfGFFHaUhzs6Suwg,18320
180
+ regscale/integrations/commercial/aws/inventory/resources/cloudwatch.py,sha256=zVymAXWxcEll-wvQ2_-AIdaTD_pdEO3AUgjzrvo1z60,7708
181
+ regscale/integrations/commercial/aws/inventory/resources/compute.py,sha256=vuWn4ZDYTZoUpICnbs_0N19dufZC9fnsWG5CgtJE--k,12084
182
+ regscale/integrations/commercial/aws/inventory/resources/config.py,sha256=PdVo0eJxzplO1SbMRanp1WlQFVrEPSG5PlaEQFHAKIE,16896
183
+ regscale/integrations/commercial/aws/inventory/resources/containers.py,sha256=HD4btccbP2HmnaNyBOe8FlZfdXyr0SsGZ4T4pCWLd-g,6720
184
+ regscale/integrations/commercial/aws/inventory/resources/database.py,sha256=rPZ8w4KLrGiYYaHaXC_u_cPg_G7oz5TwBJgxY8CKUYY,7276
185
+ regscale/integrations/commercial/aws/inventory/resources/guardduty.py,sha256=-dANdC7UlWfw370lUux-23fKKWQBOKEo800A0_6egMs,10504
186
+ regscale/integrations/commercial/aws/inventory/resources/iam.py,sha256=YyEEuF57swLbwfZVgCITzfQNuGMR-cVDLeP-hch-YTY,17113
187
+ regscale/integrations/commercial/aws/inventory/resources/inspector.py,sha256=m0bmo5fE0ge0FI_jZ--w68osccZUGnSr5baNPtXJxUU,15812
188
+ regscale/integrations/commercial/aws/inventory/resources/integration.py,sha256=COS8z0jBXPkuOD3u2CCtD9bsVD2WuhamJDUcXmH_lwk,14467
189
+ regscale/integrations/commercial/aws/inventory/resources/kms.py,sha256=MPyoL8VjIGmYgoJGiebB1pff6h2x-CGZtPwQTQEkd1w,15219
190
+ regscale/integrations/commercial/aws/inventory/resources/networking.py,sha256=ec3nOQhFsE6_kqKIC0JcSwRKpBEHBXIzmBqeWySTyGQ,12212
191
+ regscale/integrations/commercial/aws/inventory/resources/s3.py,sha256=74sppAwQx5fy8C82-Yqj66KK_GRB_4GIm8HacJtRpkg,14320
192
+ regscale/integrations/commercial/aws/inventory/resources/security.py,sha256=JCWgDpyp3Bl1ZucDmOOGK-vpCj11amceTJCg0lMuaeE,18238
193
+ regscale/integrations/commercial/aws/inventory/resources/securityhub.py,sha256=fDBUK4blhhK-LLeTCJdtaFd30Jzzcrdtyz5_uhrYE3U,16559
194
+ regscale/integrations/commercial/aws/inventory/resources/storage.py,sha256=Ah6dlUQZTRz1dYfeNSfzQMw2ZLyhBBSgJERxep1F9NE,4384
195
+ regscale/integrations/commercial/aws/inventory/resources/systems_manager.py,sha256=naOC0BNlq-t3jnobay3CzeNyY-KMSIYs3ube0OnBooU,25559
196
+ regscale/integrations/commercial/aws/inventory/resources/vpc.py,sha256=8dybHhGRPhP8uRG0RrYnYDU8A9yf4tmeUBGPAO00q1o,26554
197
+ regscale/integrations/commercial/aws/ocsf/__init__.py,sha256=NmZwgJf8J3Uc7h1jDoz9ZvmtqUwRIVWRVJ0Je0wVr8U,225
198
+ regscale/integrations/commercial/aws/ocsf/constants.py,sha256=aLqfulScIEdOWfBEGBMI-q7ICmgBJF8IVp8_Uo3xCJU,2870
199
+ regscale/integrations/commercial/aws/ocsf/mapper.py,sha256=dSUtYz2PWjP3wLSVWfgcs6U8nWTHM4yAnu5pZ0ypTP4,16098
159
200
  regscale/integrations/commercial/axonius/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
160
201
  regscale/integrations/commercial/axonius/axonius_integration.py,sha256=Zqv8qKn8oNVHmjF-rzaEJIc21knip4nGNxLl37OcbyE,2320
161
202
  regscale/integrations/commercial/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -222,7 +263,7 @@ regscale/integrations/commercial/stigv2/stig_integration.py,sha256=-UlfL0BBI3jFG
222
263
  regscale/integrations/commercial/synqly/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
223
264
  regscale/integrations/commercial/synqly/assets.py,sha256=Lwv_qVuQVwZTBWJuJjyjdhiYc8LxUJA_SN6_1_LfczI,8145
224
265
  regscale/integrations/commercial/synqly/edr.py,sha256=4EQSI2-5QnaWXh1idhndToFDOHOb3xycWAdc8NY4Auk,2836
225
- regscale/integrations/commercial/synqly/query_builder.py,sha256=1MAheCLG_3zUkvDeXbnCFEBybbG09OV-vUtBD0GLx0o,19306
266
+ regscale/integrations/commercial/synqly/query_builder.py,sha256=-wEIGpNihHqB0Snf7AYm-ULoaGzAujApZrv-pRsORV0,19434
226
267
  regscale/integrations/commercial/synqly/ticketing.py,sha256=akucc9Ok4cTcivH_rmG927WJetJDhZ0L4IF27OC_KOE,8352
227
268
  regscale/integrations/commercial/synqly/vulnerabilities.py,sha256=R9n_2AfB_CVKEza7MQ92YNdw1r36_rTvLzNHnQkpHvo,13623
228
269
  regscale/integrations/commercial/tenablev2/__init__.py,sha256=UpSY_oww83kz9c7amdbptJKwDB1gAOBQDS-Q9WFp588,295
@@ -280,13 +321,17 @@ regscale/integrations/public/nist_catalog.py,sha256=lHevdsSBTwwVzynJl_ckCyQ4cFOY
280
321
  regscale/integrations/public/oscal.py,sha256=GcPqRQqCmijCp7TmjBG4303YcJ7U4hfu6KiFSb9QC7Y,72675
281
322
  regscale/integrations/public/otx.py,sha256=i6mukISHLYmFJkxkkxhTkqtgcmXioZ00xLQ9YMg2Yzo,5401
282
323
  regscale/integrations/public/csam/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
283
- regscale/integrations/public/csam/csam.py,sha256=yCdaqphyK__v7ws1dtX4VN8Yx1m2futcfDG-kdibCdQ,40350
324
+ regscale/integrations/public/csam/csam.py,sha256=obq0oPPf_uZ8d8u6LdMSSJ7s9zX5AKfSwDZoWQLfkng,33303
325
+ regscale/integrations/public/csam/csam_agency_defined.py,sha256=e8FKwLCMyhIs83Cy_Np3ghuxXe_A1dZDfZwVi70Kt4M,6606
326
+ regscale/integrations/public/csam/csam_common.py,sha256=LiP20trTV2fkfgGCs9nBSjiWBqJosSV-LxfdOGDLBjg,5141
327
+ regscale/integrations/public/csam/csam_controls.py,sha256=rXUFzxlnmqRXE3iN-a3Q5byN6s9kuwREgKtJjovDqKs,15008
328
+ regscale/integrations/public/csam/csam_poam.py,sha256=VXyEQf-gamThqcnbXpyNQcIY6pp7FKz2sA2VfjfwZgc,4422
284
329
  regscale/integrations/public/fedramp/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
285
330
  regscale/integrations/public/fedramp/appendix_parser.py,sha256=u3Q_NHxAvYTQ1RAr1T-y3hOfqcFnkLnTmJoWnndrzeA,38281
286
- regscale/integrations/public/fedramp/click.py,sha256=kacrGQ0D4L2rfxWd3KMsES_l96lL-O-oZWv_e8PfOlI,16795
331
+ regscale/integrations/public/fedramp/click.py,sha256=hb2HkoX6taCjVT12E1kMf8-PQ-vmL_GjcRhBKxeJD2c,17420
287
332
  regscale/integrations/public/fedramp/components.py,sha256=z6PMObm-kjRR42bT04EfnjisrEULfXlwxb7576uuMmY,27010
288
333
  regscale/integrations/public/fedramp/docx_parser.py,sha256=9QP4GoPxv23A553fXrz2Tvvfci8454re3XoWgC58YwE,10989
289
- regscale/integrations/public/fedramp/fedramp_cis_crm.py,sha256=5yOOszmC4fo1wmCZ8yXnsSSnp7X_qDRE_SWgq8UMb5k,70526
334
+ regscale/integrations/public/fedramp/fedramp_cis_crm.py,sha256=s-GqxVTvNzueZmvKaHS5GvrShC7JV7pSbfSBTvtfg1A,79819
290
335
  regscale/integrations/public/fedramp/fedramp_common.py,sha256=Mdy3_WdCEcTwSXEEKXiODmr2YJTWcTg6jfyWZJWfruQ,115406
291
336
  regscale/integrations/public/fedramp/fedramp_docx.py,sha256=eKkRwfcIi4aHJp4ajKDUGJECItwrZwYfCiKzmfB2W1Q,13703
292
337
  regscale/integrations/public/fedramp/fedramp_five.py,sha256=oaLcbTTDfm1korv4fmVrMfZzmgoOyVMQV2CK1d_R3-g,96739
@@ -315,7 +360,7 @@ regscale/integrations/public/fedramp/models/__init__.py,sha256=SPtfXUaVhdehAeL8r
315
360
  regscale/integrations/public/fedramp/models/leveraged_auth_new.py,sha256=MIJ7pMYaPdVRIgMZQQ4VLlq3IB5bYOsaRJSfeRORjC4,6775
316
361
  regscale/integrations/public/fedramp/models/poam_importer.py,sha256=UP98NOwzmCgN7666q1IgiVrwfPyXbCeCalDQmXctic8,20993
317
362
  regscale/integrations/public/fedramp/poam/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
318
- regscale/integrations/public/fedramp/poam/scanner.py,sha256=M15Mx6xC1IjSbJ4ZHXjF9nZvJRlAH8FrTX-tvhBNZuM,34134
363
+ regscale/integrations/public/fedramp/poam/scanner.py,sha256=mYuXZvIPEoCtaHVa7PmRfYl6l2Gr5shhZTlfabwPcns,37341
319
364
  regscale/integrations/transformer/__init__.py,sha256=XFmkvjPjpZkQPknz0NEC0pQsWA2JNtPygbeUCf_b5jk,484
320
365
  regscale/integrations/transformer/data_transformer.py,sha256=J2FlY1vqPVzVafE4AwjJZvuN_rmsg4xP6qZjNqQtBt8,15407
321
366
  regscale/integrations/transformer/mappings/__init__.py,sha256=Pp6Qb0dVtr0ehIujmSbNLzQy2nVogLajiDfP4XY_7-w,247
@@ -326,7 +371,7 @@ regscale/models/email_style.css,sha256=d8PlsCiOxmmkp2Qc7T4qI9Ha5mT12Jn9kRBMOk2xx
326
371
  regscale/models/hierarchy.py,sha256=XnQ-pjE3LKViwRQpxdCEU0TWBGzMJo1MqWgbEJgumAU,241
327
372
  regscale/models/inspect_models.py,sha256=oRJnLeeAUYIbYXsbPKNpMCyazxQnyH5r-2XxVc5Ih9c,2521
328
373
  regscale/models/locking.py,sha256=r-nLQDgLI28F5g9vY7WOLj18syzWXJiqhFpDh43Fur4,3348
329
- regscale/models/platform.py,sha256=joM423jBiS4rDfQALFWfkOR75ab-FStgvGPpKe8fV4g,4188
374
+ regscale/models/platform.py,sha256=HN6ex1p31-1dY-WgrFPzC0zOqUS0AMdoFTuLSDfjvS8,4312
330
375
  regscale/models/app_models/__init__.py,sha256=0V4Em8RqK83EZeMIa3tm_sDh9yOS7mzvKF01v-kJug0,219
331
376
  regscale/models/app_models/catalog_compare.py,sha256=gLD8ti933nW70FcGlx6gp0Lbdo8cFnKky7JkRFAKfOU,7557
332
377
  regscale/models/app_models/click.py,sha256=2kZuBOpHFjpFKtI7rT_ht26G9bjHL_EUUoYlLC-O3B4,9961
@@ -341,7 +386,7 @@ regscale/models/integration_models/azure_alerts.py,sha256=2etrpvcxa7jVQrc98bJlVG
341
386
  regscale/models/integration_models/base64.py,sha256=sxV6O5qY1_TstJENX5jBPsSdQwmA83-NNhgJFunXiZE,570
342
387
  regscale/models/integration_models/burp.py,sha256=FBEBkH3U0Q8vq71FFoWnvgLRF5Hkr9GYmQFmNNHFrVk,16932
343
388
  regscale/models/integration_models/burp_models.py,sha256=UytDTAcCaxyu-knFkm_mEUH6UmWK3OTXKSC9Sc6OjVs,3669
344
- regscale/models/integration_models/cisa_kev_data.json,sha256=g9yH6zg8DARdu4A1E4VvQJ5pGGffuCZRpsd2RkhwjGY,1306997
389
+ regscale/models/integration_models/cisa_kev_data.json,sha256=FmWPEpU1P93b8UVShLs56vSlsJYfZCCzQTNlB6MkHC4,1310988
345
390
  regscale/models/integration_models/defender_data.py,sha256=jsAcjKxiGmumGerj7xSWkFd6r__YpuKDnYX5o7xHDiE,2844
346
391
  regscale/models/integration_models/defenderimport.py,sha256=Ze4kgwns-IYPyO7sBjEzW8PXWlxwU-DAo2fIyRcTC3k,6242
347
392
  regscale/models/integration_models/drf.py,sha256=Aq7AdLa_CH97NrnR-CxaFI22JjVN9uCxVN7Z-BBUaNU,18896
@@ -372,10 +417,10 @@ regscale/models/integration_models/flat_file_importer/__init__.py,sha256=8RNe5LU
372
417
  regscale/models/integration_models/sbom/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
373
418
  regscale/models/integration_models/sbom/cyclone_dx.py,sha256=0pFR0BWBrF5c8_cC_8mj2MXvNOMHOdHbBYXvTVfFAh8,4058
374
419
  regscale/models/integration_models/synqly_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
375
- regscale/models/integration_models/synqly_models/capabilities.json,sha256=oV1EzsM5z2abuVWhoxcgJ7Sg1mT6DQ7sNtJPbYwS330,442978
420
+ regscale/models/integration_models/synqly_models/capabilities.json,sha256=-uTN6t8qkAMRw_qV2qC3mpgqz2jYok0CwpOWkK18sTE,446942
376
421
  regscale/models/integration_models/synqly_models/connector_types.py,sha256=8nxptkTexpskySnmL0obNAff_iu_fx6tJ7i1-4hJvao,461
377
422
  regscale/models/integration_models/synqly_models/filter_parser.py,sha256=8rdnHH7gW1A_uWRTexZXzCH-HzRVy5nlvFgtc7ztcsQ,12160
378
- regscale/models/integration_models/synqly_models/ocsf_mapper.py,sha256=3M1O8yz0jBRav30lK8BU1xUL5STixetRSpIp5bWhRzg,18746
423
+ regscale/models/integration_models/synqly_models/ocsf_mapper.py,sha256=OlheLLAQ5_kKipo6JUdfmqvPgMXdOy0bcjAtPu56cMk,19907
379
424
  regscale/models/integration_models/synqly_models/param.py,sha256=Xt5Zm6lC_VkLj7LF2qXo72TJZHysqttsp5ai0NCf1po,2643
380
425
  regscale/models/integration_models/synqly_models/synqly_model.py,sha256=RPxieh3r9dVdkt7IliiNEqEqvhbXv3UFuEEZ4-MNqGc,37965
381
426
  regscale/models/integration_models/synqly_models/tenants.py,sha256=kewIZw-iv18bNXJGG3ghwuFJ4CK5iXQhn_x2-xvV0iM,1078
@@ -383,12 +428,12 @@ regscale/models/integration_models/synqly_models/connectors/__init__.py,sha256=J
383
428
  regscale/models/integration_models/synqly_models/connectors/assets.py,sha256=HHNIAVh5pRuJe8sStqhFEc6VnX2wT0FcY5178nbQgkQ,3705
384
429
  regscale/models/integration_models/synqly_models/connectors/edr.py,sha256=kio3uoEYubCHretpDOJqxdwmzid1IzbVYz0BF64zeL0,5547
385
430
  regscale/models/integration_models/synqly_models/connectors/ticketing.py,sha256=yRBuCkRAVfa_C91r3WqJ9gxrQsoD0qV9cY48YXpJl70,25358
386
- regscale/models/integration_models/synqly_models/connectors/vulnerabilities.py,sha256=7fsPHtWSrHxlqAXGURvQ4VWunmAs-acz7O8ABHshdBw,8240
431
+ regscale/models/integration_models/synqly_models/connectors/vulnerabilities.py,sha256=vViUbnyGvZx63WStAuJHWmoL867inNwlhVLGJP9Pf0U,10290
387
432
  regscale/models/integration_models/tenable_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
388
433
  regscale/models/integration_models/tenable_models/integration.py,sha256=lplL8zmjTFuhLreW-4y7G1fiCOBgzNAaATq800jgTQc,10271
389
434
  regscale/models/integration_models/tenable_models/models.py,sha256=dmG7btkN4YkDWwnfW5Ldc3tWEAGjPiaRgJjrqMOkPEU,15846
390
- regscale/models/regscale_models/__init__.py,sha256=gOGDxUUaWQ--0Kc3WmeApjeNzcBxGdBHHXrrlZ6KEpA,2602
391
- regscale/models/regscale_models/assessment.py,sha256=ekzNlcsfDGBu97PMCi7hBRGbzVgxk7Ij0RfrdGh1Rfw,20440
435
+ regscale/models/regscale_models/__init__.py,sha256=f36bxlmGVy3WU1pWfnKGBU-j7a9-Ki1f13vnZFC5WH4,2719
436
+ regscale/models/regscale_models/assessment.py,sha256=z08DnpArSGH7hmKebzwX-qdGxmH-O8usmzgqWGDRPM4,20513
392
437
  regscale/models/regscale_models/assessment_plan.py,sha256=qo2YA5ckSbUKDHnC_2BUc2I9kMTje9Gq-qTCXqvEKCY,1716
393
438
  regscale/models/regscale_models/assessment_result.py,sha256=K48yjYKwgY1-d_Y3aQUDcCvaqcTIVYdbKV5Wgicf4Ts,1283
394
439
  regscale/models/regscale_models/asset.py,sha256=MDYIFlPfngjjr6obP0wLlQPFzNw8CIFeYVAKFnpdqR4,19828
@@ -402,11 +447,11 @@ regscale/models/regscale_models/checklist.py,sha256=GM15N9krNmKNDJnOgtSDRlUTBVwY
402
447
  regscale/models/regscale_models/classification.py,sha256=kz1TxaxnqEwAS3mF8jTH7wbu6EQRZPZqGwxlXb-QEw0,775
403
448
  regscale/models/regscale_models/comment.py,sha256=EJtnk04JcyFUYeiVAHTPkoZuS8XndgmCr8KaprrywRo,1555
404
449
  regscale/models/regscale_models/compliance_settings.py,sha256=F2q7OQEgYK-HrPmDHMcV-6ywzrjnBnU5KGG3StVgK3E,4902
405
- regscale/models/regscale_models/component.py,sha256=Zbl-glM2WYtDRKtnQSyhXRDY9fqBTSSGz_2pMkAsawg,14196
450
+ regscale/models/regscale_models/component.py,sha256=zTE8JGL5ft0TbneuWfPYULXgLzF4mvdyiz3kE5CoYSw,14193
406
451
  regscale/models/regscale_models/component_mapping.py,sha256=g0cbbW4X49SDdlB_YtKMrP4eiK9OkrJqiut0ucdyVDA,2162
407
452
  regscale/models/regscale_models/control.py,sha256=mO46F1IfiXnLSb3YhylaS3SyjtT51s-r8b3hjix9Gbc,1072
408
- regscale/models/regscale_models/control_implementation.py,sha256=oLDypbjM1yi4OkkN5FdeAUo7UFoQ-b-eISl_scyNc1I,57484
409
- regscale/models/regscale_models/control_objective.py,sha256=qGh8OtATjjc4JS-3bC1AX6TbgtRtz-I0dckbuZ2RzVo,9496
453
+ regscale/models/regscale_models/control_implementation.py,sha256=VRCLginT2sIO8d4KmCRjFaFDQyD8S43x5KWTq0z1Y5Y,58505
454
+ regscale/models/regscale_models/control_objective.py,sha256=nT1Eusxoi20Fzmo9D8VBn_-45kygq_eWBg8gA2oF2vU,11606
410
455
  regscale/models/regscale_models/control_parameter.py,sha256=5VVkbVZTb2Hzy_WiybU2JtrvhQp8DLSWxRcbSKxktiI,3499
411
456
  regscale/models/regscale_models/control_test.py,sha256=FG-fLS9JJf8__a84W2LtBXtEjzOH9iq2EO949vBx3eY,949
412
457
  regscale/models/regscale_models/control_test_plan.py,sha256=ThfZB2mA6NtcQyZnJ8NyD4o1agTfewUobt7HmNZpLzs,2294
@@ -420,7 +465,7 @@ regscale/models/regscale_models/email.py,sha256=kgEzXTUZr7uHksMOCextWbXJXYuRKyXO
420
465
  regscale/models/regscale_models/evidence.py,sha256=R78f3eWjmBgusZbv8i9cd5O8Is43KjvxiaJH_CLERqE,4316
421
466
  regscale/models/regscale_models/evidence_mapping.py,sha256=eovTJsl1cjZMvbhpOv70nILIHSXmURyU4mg_r09h4VQ,1444
422
467
  regscale/models/regscale_models/facility.py,sha256=J3gGv0Tf3zNdyKGhb0iM8WjgjWqJHZLKdcN9n-jDrTA,1059
423
- regscale/models/regscale_models/file.py,sha256=zHIZvhgxMWTXX5ku98dRJcDSQ1VrRyUuorA6N9YEBzU,14711
468
+ regscale/models/regscale_models/file.py,sha256=hgYKXeZ-T25wvdgxr5zyUP-jOZkz4FQjV_h0NMx_WXA,14811
424
469
  regscale/models/regscale_models/filetag.py,sha256=jd99xcQsGheLFfy7PYtZEzT-re_Dp_ZoUF3GWYMsi0Q,1138
425
470
  regscale/models/regscale_models/form_field_value.py,sha256=Xd6pqt51YFi8snhC-rqeUqSK7xjKbICQ1ZPvPaQdJLg,5869
426
471
  regscale/models/regscale_models/functional_roles.py,sha256=Vm_j-UZBKoaiONO75VqqCKnDHE6ynP0X5XZmKXl8UT8,932
@@ -432,7 +477,7 @@ regscale/models/regscale_models/incident.py,sha256=jsS4MfigzjwFphvdIrBk62GfvbceQ
432
477
  regscale/models/regscale_models/inheritance.py,sha256=n8CtDQZ8WPQ-AwC0kq5D0nMwK1_njfB-rUN5PdjiMOs,1314
433
478
  regscale/models/regscale_models/inherited_control.py,sha256=RuQJgVyZgfoIrUG_vvwQYHECb3wsFjDH-zPj-bIFBNU,2007
434
479
  regscale/models/regscale_models/interconnection.py,sha256=8Q9CGeHEX9TXQrim_NIAj9KuM4MwaUTpBLs_LKaXAlw,1256
435
- regscale/models/regscale_models/issue.py,sha256=HhvhekeSOLePpLFEYz15ZbyFNJr78gJGTrCNluOmHNs,64848
480
+ regscale/models/regscale_models/issue.py,sha256=pOUoRLONznzDMUlqRV4Iymb0FWmajpysEcA86N1IkUE,64858
436
481
  regscale/models/regscale_models/leveraged_authorization.py,sha256=OUrL8JQV3r7T3ldHlL6Y_ZLv6KuQIC-3eZW5wZ7XFUk,4192
437
482
  regscale/models/regscale_models/line_of_inquiry.py,sha256=Uu0lQEhif0W6yTSkJo27GyQGmExSngJvyqGBTr4Q8Fg,1713
438
483
  regscale/models/regscale_models/link.py,sha256=lAY4Ig3Menm1EqfcAbVJ7jsCsRO5tWtJIf-9-G9FXT8,6593
@@ -442,7 +487,7 @@ regscale/models/regscale_models/milestone.py,sha256=KNd9Ce4bBb6FuUnol0gwwhow5d9I
442
487
  regscale/models/regscale_models/module.py,sha256=a7lalHmVTQ04ZILnJxuFWdHYDtyusBMTtonD4ICL-Wc,7272
443
488
  regscale/models/regscale_models/modules.py,sha256=yeva_tct88o2NFt93_zmqUcXZ3LucVbAv5FvQPru3cQ,8551
444
489
  regscale/models/regscale_models/objective.py,sha256=aJIpmkZ-NscqV2y8SGB4HYzm615b6mklyHnW9bL2ljk,249
445
- regscale/models/regscale_models/organization.py,sha256=E3Y5bwtgaIRL4rbKxU3DyfFVYUzP3d-1umG_CIUG3gE,714
490
+ regscale/models/regscale_models/organization.py,sha256=xNnpVbdRH92r34QIs5sMGm0EfPskZbjL-mcgSko3t44,812
446
491
  regscale/models/regscale_models/parameter.py,sha256=IEOVGaTUxRVNfwc6vN_y6eN45P5R1C4O4mz3uukiCSA,3915
447
492
  regscale/models/regscale_models/policy.py,sha256=IQ-niE1PP8L2OavYfOQQsvSInw1sw371mkJrGFyWZ94,2382
448
493
  regscale/models/regscale_models/ports_protocol.py,sha256=RGdXdNTn2C_elWPBZxwu7cs8v24oSgTiTjPnLk_tCiI,2347
@@ -457,7 +502,7 @@ regscale/models/regscale_models/questionnaire.py,sha256=QMSXfNpSoaS8tkeo80C7OWLj
457
502
  regscale/models/regscale_models/questionnaire_instance.py,sha256=1LgGTwFACmWx2xOOqUKhAUOms4_3L6NZySzuteg0_sI,8241
458
503
  regscale/models/regscale_models/rbac.py,sha256=ulT9BzOpYNNVlBVfOmreGDTTAgzkAY5Si2rQhhIcUmY,5302
459
504
  regscale/models/regscale_models/reference.py,sha256=P_7jT6H-NZIa7TyH3j98N-ZHlB6FsjpZVRZCCpms-D4,3253
460
- regscale/models/regscale_models/regscale_model.py,sha256=lVmwg65AsWg_0BbpurEp2T7-c-t4CL9mrD-2NPYKqoQ,76446
505
+ regscale/models/regscale_models/regscale_model.py,sha256=nD34_o9BvLeHQwW8mvJr230H0jdURMHQ0_yATvYuUlI,77359
461
506
  regscale/models/regscale_models/requirement.py,sha256=-8PnMbuWAZHol5X1w-fzm-moD784Et0oevSVbz6xLhU,767
462
507
  regscale/models/regscale_models/risk.py,sha256=lZFDYPpTt0aEYCrYz5FBKk1Y4y2CKXYU1A8eEKT3zzg,8661
463
508
  regscale/models/regscale_models/risk_issue_mapping.py,sha256=j6uR0x6xymJ0BsIwgnadeUQDshHNhU3VnpyItZp4dc4,2393
@@ -466,7 +511,7 @@ regscale/models/regscale_models/sbom.py,sha256=UYS3lBizGqz7A7vNPYBYzpL8PWIaXLl7Z
466
511
  regscale/models/regscale_models/scan_history.py,sha256=o4e9P2rQlqlLj4mbgSPX44jutTJo1nocI1DDXyWyf6w,16741
467
512
  regscale/models/regscale_models/search.py,sha256=rPbFDCnnBRHY5JJv9Ev3_6GjMlkdhUAsaUzC97eE2Ys,1015
468
513
  regscale/models/regscale_models/security_control.py,sha256=GJEMkIh6IDX7Gs_z7ppmm0hqiXjC5qSbSYRYt85wOUg,6365
469
- regscale/models/regscale_models/security_plan.py,sha256=Gccun2-rBf4SgOHGE1AJCNXFCEf_XO7oOvMJWB5qe3w,8676
514
+ regscale/models/regscale_models/security_plan.py,sha256=BrqoPG8ZFqfwJuw6wgWzkkH5aytvk1Zk1GGxSsaIT0k,8729
470
515
  regscale/models/regscale_models/software_inventory.py,sha256=FRAIfoUlS0kaX1HQRDyV5q4yxwRHilXbS52NSj6exo0,5555
471
516
  regscale/models/regscale_models/stake_holder.py,sha256=JIuDTIky_3acDl-NOMwylTHkppN38JgPDZ1A6wM-BGE,1956
472
517
  regscale/models/regscale_models/stig.py,sha256=y-PQuGg3pwDTfsNZGW6anaNAjIZBQoNe7GOLMiT5zfw,26329
@@ -529,7 +574,7 @@ tests/regscale/test_about.py,sha256=32YZC8XJW5QkIYIfwEVGIdIxQNUIbyzn3OzVcX_5X24,
529
574
  tests/regscale/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
530
575
  tests/regscale/core/test_api.py,sha256=25AsIT-jg8SrlkPeynUwwm4PvTOrHcRO2Ba_omnNLUY,7512
531
576
  tests/regscale/core/test_app.py,sha256=wvxpp5Wyag2T5-LmPZL02yrYiH8tedVSRle8RhrlB38,42380
532
- tests/regscale/core/test_login.py,sha256=Kl7ySS8JU7SzhmupaDexeUH8VOMjtMRJvW8-CimxHqU,1166
577
+ tests/regscale/core/test_login.py,sha256=xHQoXjwcALhhJEhpo3A5kmv91-SGje5OYEnTDBtmjXo,6759
533
578
  tests/regscale/core/test_logz.py,sha256=Yf6tAthETLlYOEp3hee3ovDw-WnZ_6fTw3e1rjx4xSw,2621
534
579
  tests/regscale/core/test_sbom_generator.py,sha256=lgzo1HRbkNIIDZIeKiM2JbbIYQsak0BpU0GlvbrcexM,2935
535
580
  tests/regscale/core/test_validation_utils.py,sha256=5GHQfSVEr3f1HzEatI5CyCgGriyc-OPyKbc1YQ9zRjI,5464
@@ -537,7 +582,7 @@ tests/regscale/core/test_version.py,sha256=q8F2ERXxdToXbYxfOcP9f6lkUYaxF4jEmsPUm
537
582
  tests/regscale/core/test_version_regscale.py,sha256=9DA1hFltt7pSWdFb3wP2bL3t4hAHsojoHvs1bolUjUw,2052
538
583
  tests/regscale/integrations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
539
584
  tests/regscale/integrations/test_api_paginator.py,sha256=42-F8FMkJwkZ1Xlsj7YYVyOb6-rbxwI4F4H6Y4ZI9jA,18973
540
- tests/regscale/integrations/test_control_matcher.py,sha256=ff-1vZmOBZKErZqd6-M842TQhGxgSS82_BgFszsC5JA,58191
585
+ tests/regscale/integrations/test_control_matcher.py,sha256=OX5iSgEhY7Da9CvUoDVplOqTsNf5ZGQ0CBmLkSDhXbg,59182
541
586
  tests/regscale/integrations/test_control_matching.py,sha256=lejjVlnNA6aX2e4qgMGFpvEGG-ofzepyjeArax9J8aQ,4593
542
587
  tests/regscale/integrations/test_integration_mapping.py,sha256=cXfWuE1h5Wrs-Nb--d83v0fllMQOs_IxYxquBJ90YNg,22549
543
588
  tests/regscale/integrations/test_issue_creation.py,sha256=L4Fjww16S6sst2kqLoE0PK6WYL_pijSMzzxpWzdajRo,12089
@@ -548,7 +593,7 @@ tests/regscale/integrations/test_update_finding_dates.py,sha256=2cyDpwnZUS965f84
548
593
  tests/regscale/integrations/test_wiz_policy_compliance_affected_controls.py,sha256=nFqOjr4-JRjZ0fJTQEhwsvnl56g4GRdX0yvS1wRpqUY,5845
549
594
  tests/regscale/integrations/commercial/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
550
595
  tests/regscale/integrations/commercial/conftest.py,sha256=zC_1h39IweO9O7bm_-hctpNiH3WedfZNPt8IZbdQQXU,918
551
- tests/regscale/integrations/commercial/test_aws.py,sha256=ojGFp4EsKZa84Ux0kLdy3bMNl77ohiGg3tayB2FBkcw,168804
596
+ tests/regscale/integrations/commercial/test_aws.py,sha256=7TXBxuCw8csM1xRUWkTCh5wRY13h9QJuxGHFXYYCpSk,168696
552
597
  tests/regscale/integrations/commercial/test_burp.py,sha256=NRXVXw7a3OgtbWozJmxomsHhE9YiRIhdhdaN9-ZIapY,1799
553
598
  tests/regscale/integrations/commercial/test_crowdstrike.py,sha256=h_vjMAbW84iyNHwkCQol4Z1JR-_6dCtf0gvR0VfBaT0,1652
554
599
  tests/regscale/integrations/commercial/test_dependabot.py,sha256=etke2B9Z11dJj7kFWtZ1QaysymqR0q2UtzVHlLpmk0U,12886
@@ -568,6 +613,44 @@ tests/regscale/integrations/commercial/test_stig_mapper.py,sha256=wHHbvnIGCQqIeo
568
613
  tests/regscale/integrations/commercial/test_stigv2.py,sha256=-y5bWHEdxHJY1xp4hqaW3PPaSz9tIw7Qg5EL69DZnHA,20102
569
614
  tests/regscale/integrations/commercial/test_wiz.py,sha256=B_eafWUcGzYyY4SznrVgSgwObFMcoULju8lQJQtLWoA,57121
570
615
  tests/regscale/integrations/commercial/test_wiz_inventory.py,sha256=796B5A7qW7XhALLwK_8U4bXUVHF0yAy8OPpw4oQNWDw,12157
616
+ tests/regscale/integrations/commercial/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
617
+ tests/regscale/integrations/commercial/aws/test_audit_manager_compliance.py,sha256=xxXPtzrPDLgXGEdaqEJHLEwRvv-fH_LNk3mYIHmgvvo,61707
618
+ tests/regscale/integrations/commercial/aws/test_audit_manager_evidence_aggregation.py,sha256=nWqizzsfKleMjy2AkxeQZsJ2gaBroNMLKFprlJeFqS0,15575
619
+ tests/regscale/integrations/commercial/aws/test_aws_audit_manager_collector.py,sha256=CZG16046PI3YcLjUWNtD3FSC7UqGLH9DEGNFBZRYFRc,50832
620
+ tests/regscale/integrations/commercial/aws/test_aws_cloudtrail_collector.py,sha256=-2_Q_1waMUKGA4jYFmllw5F68-5E2tM8V-sGAlwV_Zc,21328
621
+ tests/regscale/integrations/commercial/aws/test_aws_config_collector.py,sha256=LRmXQlto1x1zwB6nFB4wyll2L9Ji116vmCTz9nv6Uc0,16959
622
+ tests/regscale/integrations/commercial/aws/test_aws_guardduty_collector.py,sha256=qmd72SakjTUU-NCYn8bOG221M66NueG3BAdNtLdylMM,12455
623
+ tests/regscale/integrations/commercial/aws/test_aws_iam_collector.py,sha256=SSlEv8Xz--hgyeIDXKtNaLZ9InNTCDObV1LGc9YSPXQ,18142
624
+ tests/regscale/integrations/commercial/aws/test_aws_inspector_collector.py,sha256=CkcFW0NRIFzZDMvUomZWASi5K3c_K8Ss1_Olz3-V7dw,13959
625
+ tests/regscale/integrations/commercial/aws/test_aws_inventory_integration.py,sha256=6MB91R2jjbvkx0_VDVVsbaRT3EtW4hHBT9BZAWg3RrE,24513
626
+ tests/regscale/integrations/commercial/aws/test_aws_kms_collector.py,sha256=7IyyfrIQc2v03tvQyGMZByQF6PzofwH6Co0d2Eyctb8,39161
627
+ tests/regscale/integrations/commercial/aws/test_aws_s3_collector.py,sha256=ajX58v_ZHavLOVLn394E70WZ7vIhN9vvDC1gc2yYREI,32942
628
+ tests/regscale/integrations/commercial/aws/test_aws_scanner_integration.py,sha256=ZHti6FhWWelA53RaYNbzsUUSiuHaLlTwLFl7oFgU74Q,35653
629
+ tests/regscale/integrations/commercial/aws/test_aws_securityhub_collector.py,sha256=ljlj4v0R1InMJBzqmtpXzKTV6c0NmlN2ZZrHCyYds8k,33291
630
+ tests/regscale/integrations/commercial/aws/test_aws_systems_manager_collector.py,sha256=YySmKjIjGhGW4DvrDb6GBfxqWWfSGMSyyrpw7n4BC8E,38890
631
+ tests/regscale/integrations/commercial/aws/test_aws_vpc_collector.py,sha256=qQV30VmzYUUJkgqtysGXjt_qdbuoxumqc1ZiMOFYEQE,42233
632
+ tests/regscale/integrations/commercial/aws/test_cli_evidence.py,sha256=LP5ZfJNat1hqz3rC3wohgq5yHp8X2nVf8wfZ29xnZAY,17122
633
+ tests/regscale/integrations/commercial/aws/test_cloudtrail_control_mappings.py,sha256=ZPpIOyQbJtguBf7xI9PsyO9GnspMVvYsj6lQwqXUlTg,18447
634
+ tests/regscale/integrations/commercial/aws/test_cloudtrail_evidence.py,sha256=fXXkP0anDh00Ji1NdXYyCccZJINYsOHFTZXhkXxu50c,36090
635
+ tests/regscale/integrations/commercial/aws/test_config_compliance.py,sha256=W_9IoIr0xlifdYtjOIhBQb9Sr-86WOKTGX2t7t88lJ4,11437
636
+ tests/regscale/integrations/commercial/aws/test_conformance_pack_mappings.py,sha256=60nNJ01PXVOGhBZA5w9dZZqrnbNowWlria-6LdUyjXI,7809
637
+ tests/regscale/integrations/commercial/aws/test_evidence_generator.py,sha256=ydZOwZEGWb0befkbCvv9BJxZqKoHkZVc_fufpXTmAKc,14694
638
+ tests/regscale/integrations/commercial/aws/test_guardduty_control_mappings.py,sha256=qaJMnWevKqFgUTKaiLpMbzul4aDSLhmm6nmjXYfeBis,21696
639
+ tests/regscale/integrations/commercial/aws/test_guardduty_evidence.py,sha256=qoaONsjHkkgx2sbwfTHb0QorCj5vcY3c3p8UGabGPWE,43614
640
+ tests/regscale/integrations/commercial/aws/test_iam_control_mappings.py,sha256=ctEc7GudFORx29rOayIauNJ4B_xSsG948tRsbub07Ac,25688
641
+ tests/regscale/integrations/commercial/aws/test_iam_evidence.py,sha256=H4swFtoRky3TKwgkJh_SIJVaogAzqqDiByWhlNRJWq0,55380
642
+ tests/regscale/integrations/commercial/aws/test_kms_control_mappings.py,sha256=kawlbk0w2KDyZeNatU9AVKRIjmK1TZh4-Y0reFuudcE,21979
643
+ tests/regscale/integrations/commercial/aws/test_kms_evidence.py,sha256=0fIp9rwgUVOgkN6kRhe-lZltlTJ0JBsT4XTBaHXD3LE,45208
644
+ tests/regscale/integrations/commercial/aws/test_ocsf_mapper.py,sha256=Fe5qvRawTI8Xuf60VPwkuxjyIsRNy7yGc5rgpxPYcFs,15180
645
+ tests/regscale/integrations/commercial/aws/test_org_control_mappings.py,sha256=i0dcAgwtTsk-fgQ4FQVnbuWodPCf-V2Ns4seBh0t8wg,19566
646
+ tests/regscale/integrations/commercial/aws/test_org_evidence.py,sha256=AgZ5Xr-lArn-HmwiXF42LmTdkTbLhgWZaKkbxx-z_6c,49834
647
+ tests/regscale/integrations/commercial/aws/test_s3_control_mappings.py,sha256=1MsnNXAbluR3SvrlxBuSqzLp7d5b0qIhSpUJ9sXJJXc,23348
648
+ tests/regscale/integrations/commercial/aws/test_s3_evidence.py,sha256=aBwP9_SYRZIgYmM3H3E8T8HEUrBLgwe-PuZuk0-Xb5M,39285
649
+ tests/regscale/integrations/commercial/aws/test_scanner_evidence.py,sha256=WMHMyap_N8cvUKfRc9NAjdEtpsaWxdvCmcwPyGkhvkw,16071
650
+ tests/regscale/integrations/commercial/aws/test_security_hub_config_filtering.py,sha256=puP2U6T9NRLPEWv-wjfIBCvxvwelIKC_xsL_wxCJXBg,25451
651
+ tests/regscale/integrations/commercial/aws/test_session_manager.py,sha256=gLGQyIkZQIMSV4Det3lGGVLdWN4M4rRBvwas3lMkvlg,22095
652
+ tests/regscale/integrations/commercial/aws/test_ssm_control_mappings.py,sha256=HKhZ51pUVjQECGRbg0SiWw6chpQEqtPpNskXI3yHdU8,20920
653
+ tests/regscale/integrations/commercial/aws/test_ssm_evidence.py,sha256=l3rrYholPuxSOWHsUx38iJ2EL2kaL22oBCCbqKgng-U,29045
571
654
  tests/regscale/integrations/commercial/microsoft_defender/__init__.py,sha256=QbnltJbah_YSW6fOhcOdaJJJINghN67A28dhAIxT_xs,43
572
655
  tests/regscale/integrations/commercial/microsoft_defender/test_defender.py,sha256=zRfEKhtrUA0p6MbxrPB_cCPhjNQPL6lmdZaPRoehJRc,63295
573
656
  tests/regscale/integrations/commercial/microsoft_defender/test_defender_api.py,sha256=VvHpno51w03CUHGX1JZBjJOIpfHIxuh7QCh_lh5gcjM,72518
@@ -624,7 +707,7 @@ tests/regscale/integrations/transformer/test_data_transformer.py,sha256=Na-trXL2
624
707
  tests/regscale/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
625
708
  tests/regscale/models/test_asset.py,sha256=YVQ0wAyjOf6LyhbUnNCHgI5-7VMKlBvb7dU886r7br8,16668
626
709
  tests/regscale/models/test_config.py,sha256=r2mIJJDpmnLYZjw8Nw7yTzwZCsHbmfZD4rHSupfeOec,797
627
- tests/regscale/models/test_control_implementation.py,sha256=r3J5B5TnsVJfnKnQq6KlYiJnt7F1kwRr5FzZh58YcFE,1060
710
+ tests/regscale/models/test_control_implementation.py,sha256=45wWukH_GE1ZYvdEYuNv8x5kuTIno4k4fq36yjitYSA,5832
628
711
  tests/regscale/models/test_form_field_value_integration.py,sha256=HDYrJvEbvl9B_ql72onVbbeQEoCJdcinIx0FuGQvFn4,12391
629
712
  tests/regscale/models/test_import.py,sha256=wG6KThJOXJe4wlFZpv4J0Lnpe4IBmU7VE13Sl4FT7xw,3949
630
713
  tests/regscale/models/test_issue.py,sha256=ant0hGYt8OuInuKkN212JtSDFsAreW0L_WMqNnXIX9w,17167
@@ -635,9 +718,9 @@ tests/regscale/models/test_regscale_model.py,sha256=ZsrEZkC4EtdIsoQuayn1xv2gEGcV
635
718
  tests/regscale/models/test_report.py,sha256=IqUq7C__a1_q_mLaz0PE9Lq6fHggBsB14-AzEYNBxLw,4666
636
719
  tests/regscale/models/test_tenable_integrations.py,sha256=y1qaW77H094VSGHjZdlvF66UCt-nPEib9Mv3cdwbM94,32435
637
720
  tests/regscale/models/test_user_model.py,sha256=e9olv28qBApgnvK6hFHOgXjUC-pkaV8aGDirEIWASL4,4427
638
- regscale_cli-6.27.2.0.dist-info/LICENSE,sha256=ytNhYQ9Rmhj_m-EX2pPq9Ld6tH5wrqqDYg-fCf46WDU,1076
639
- regscale_cli-6.27.2.0.dist-info/METADATA,sha256=urTKR5zkhFizHfI1rxRo29oWv7HRbGHOxLSVbO8U_Ts,34231
640
- regscale_cli-6.27.2.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
641
- regscale_cli-6.27.2.0.dist-info/entry_points.txt,sha256=cLOaIP1eRv1yZ2u7BvpE3aB4x3kDrDwkpeisKOu33z8,269
642
- regscale_cli-6.27.2.0.dist-info/top_level.txt,sha256=Uv8VUCAdxRm70bgrD4YNEJUmDhBThad_1aaEFGwRByc,15
643
- regscale_cli-6.27.2.0.dist-info/RECORD,,
721
+ regscale_cli-6.28.0.0.dist-info/LICENSE,sha256=ytNhYQ9Rmhj_m-EX2pPq9Ld6tH5wrqqDYg-fCf46WDU,1076
722
+ regscale_cli-6.28.0.0.dist-info/METADATA,sha256=2Gq_dbyNQp7HqCFyPimfvbB114wZrpY8_4Ax2Gd3XBI,34231
723
+ regscale_cli-6.28.0.0.dist-info/WHEEL,sha256=oiQVh_5PnQM0E3gPdiz09WCNmwiHDMaGer_elqB3coM,92
724
+ regscale_cli-6.28.0.0.dist-info/entry_points.txt,sha256=cLOaIP1eRv1yZ2u7BvpE3aB4x3kDrDwkpeisKOu33z8,269
725
+ regscale_cli-6.28.0.0.dist-info/top_level.txt,sha256=Uv8VUCAdxRm70bgrD4YNEJUmDhBThad_1aaEFGwRByc,15
726
+ regscale_cli-6.28.0.0.dist-info/RECORD,,
@@ -1,6 +1,7 @@
1
1
  """Test the login module."""
2
2
 
3
- from unittest.mock import patch
3
+ from unittest.mock import patch, MagicMock
4
+ from requests.exceptions import HTTPError
4
5
 
5
6
  from regscale.core.login import get_regscale_token
6
7
  from regscale.core.app.api import Api
@@ -10,13 +11,32 @@ from regscale.core.app.application import Application
10
11
  @patch("regscale.core.login.Api.post")
11
12
  @patch.dict("os.environ", {"REGSCALE_DOMAIN": "example_value"})
12
13
  def test_get_regscale_token(mock_post):
14
+ """Test get_regscale_token with fallback to old API (backward compatibility)"""
13
15
  api = Api()
14
- mock_response = mock_post.return_value
15
- mock_response.status_code = 200
16
- mock_response.json.return_value = {
16
+
17
+ # Mock responses for fallback scenario
18
+ mock_response_v2 = MagicMock()
19
+ mock_response_v2.status_code = 400
20
+ mock_response_v2.raise_for_status.side_effect = HTTPError()
21
+
22
+ mock_response_v1 = MagicMock()
23
+ mock_response_v1.status_code = 200
24
+ mock_response_v1.url = "example_value/api/authentication/login"
25
+ mock_response_v1.json.return_value = {
17
26
  "id": "example_id",
18
27
  "auth_token": "example_token",
19
28
  }
29
+
30
+ # Set up side_effect for multiple calls
31
+ mock_post.side_effect = [
32
+ mock_response_v2,
33
+ mock_response_v1, # First call
34
+ mock_response_v2,
35
+ mock_response_v1, # Second call
36
+ mock_response_v2,
37
+ mock_response_v1, # Third call
38
+ ]
39
+
20
40
  result = get_regscale_token(api=api, username="example_user", password="example_password")
21
41
  result2 = get_regscale_token(
22
42
  api=api,
@@ -35,3 +55,150 @@ def test_get_regscale_token(mock_post):
35
55
  assert result == ("example_id", "example_token")
36
56
  assert result2 == ("example_id", "example_token")
37
57
  assert result3 == ("example_id", "example_token")
58
+
59
+
60
+ @patch("regscale.core.login.Api.post")
61
+ @patch.dict("os.environ", {"REGSCALE_DOMAIN": "https://example.com"})
62
+ def test_get_regscale_token_with_app_id_success(mock_post):
63
+ """Test successful authentication with app_id (API version 2.0)"""
64
+ api = Api()
65
+ mock_response = MagicMock()
66
+ mock_response.status_code = 200
67
+ mock_response.url = "https://example.com/api/authentication/login"
68
+ mock_response.json.return_value = {
69
+ "accessToken": {
70
+ "id": "new_user_id",
71
+ "authToken": "new_auth_token",
72
+ }
73
+ }
74
+ mock_post.return_value = mock_response
75
+
76
+ result = get_regscale_token(
77
+ api=api,
78
+ username="test_user",
79
+ password="test_password",
80
+ domain="https://example.com",
81
+ app_id=1,
82
+ )
83
+
84
+ assert result == ("new_user_id", "new_auth_token")
85
+ assert mock_post.call_count == 1
86
+ call_args = mock_post.call_args
87
+ assert call_args[1]["json"]["appId"] == 1
88
+ assert call_args[1]["headers"] == {"X-Api-Version": "2.0"}
89
+
90
+
91
+ @patch("regscale.core.login.Api.post")
92
+ @patch.dict("os.environ", {"REGSCALE_DOMAIN": "https://example.com"})
93
+ def test_get_regscale_token_with_custom_app_id(mock_post):
94
+ """Test authentication with custom app_id value"""
95
+ api = Api()
96
+ mock_response = MagicMock()
97
+ mock_response.status_code = 200
98
+ mock_response.url = "https://example.com/api/authentication/login"
99
+ mock_response.json.return_value = {
100
+ "accessToken": {
101
+ "id": "custom_user_id",
102
+ "authToken": "custom_auth_token",
103
+ }
104
+ }
105
+ mock_post.return_value = mock_response
106
+
107
+ result = get_regscale_token(
108
+ api=api,
109
+ username="test_user",
110
+ password="test_password",
111
+ domain="https://example.com",
112
+ app_id=5,
113
+ )
114
+
115
+ assert result == ("custom_user_id", "custom_auth_token")
116
+ call_args = mock_post.call_args
117
+ assert call_args[1]["json"]["appId"] == 5
118
+ assert call_args[1]["headers"] == {"X-Api-Version": "2.0"}
119
+
120
+
121
+ @patch("regscale.core.login.Api.post")
122
+ @patch.dict("os.environ", {"REGSCALE_DOMAIN": "https://example.com"})
123
+ def test_get_regscale_token_fallback_to_old_api(mock_post):
124
+ """Test fallback to old API version when app_id authentication fails"""
125
+ import copy
126
+
127
+ api = Api()
128
+
129
+ # Capture the arguments passed to each call
130
+ captured_calls = []
131
+
132
+ def capture_and_respond(*args, **kwargs):
133
+ # Make a deep copy of the json argument to preserve its state at call time
134
+ captured_calls.append({"json": copy.deepcopy(kwargs.get("json", {})), "headers": kwargs.get("headers", {})})
135
+
136
+ # First call raises HTTPError
137
+ if len(captured_calls) == 1:
138
+ mock_response_v2 = MagicMock()
139
+ mock_response_v2.status_code = 400
140
+ mock_response_v2.raise_for_status.side_effect = HTTPError()
141
+ return mock_response_v2
142
+ # Second call succeeds
143
+ else:
144
+ mock_response_v1 = MagicMock()
145
+ mock_response_v1.status_code = 200
146
+ mock_response_v1.url = "https://example.com/api/authentication/login"
147
+ mock_response_v1.json.return_value = {
148
+ "id": "old_user_id",
149
+ "auth_token": "old_auth_token",
150
+ }
151
+ return mock_response_v1
152
+
153
+ mock_post.side_effect = capture_and_respond
154
+
155
+ result = get_regscale_token(
156
+ api=api,
157
+ username="test_user",
158
+ password="test_password",
159
+ domain="https://example.com",
160
+ app_id=1,
161
+ )
162
+
163
+ assert result == ("old_user_id", "old_auth_token")
164
+ assert mock_post.call_count == 2
165
+
166
+ # Verify first call had app_id
167
+ assert captured_calls[0]["json"]["appId"] == 1
168
+ assert captured_calls[0]["headers"] == {"X-Api-Version": "2.0"}
169
+
170
+ # Verify second call did not have app_id
171
+ assert "appId" not in captured_calls[1]["json"]
172
+ assert captured_calls[1]["headers"] == {}
173
+
174
+
175
+ @patch("regscale.core.login.Api.post")
176
+ @patch.dict("os.environ", {"REGSCALE_DOMAIN": "https://example.com"})
177
+ def test_get_regscale_token_with_mfa_and_app_id(mock_post):
178
+ """Test authentication with both MFA token and app_id"""
179
+ api = Api()
180
+ mock_response = MagicMock()
181
+ mock_response.status_code = 200
182
+ mock_response.url = "https://example.com/api/authentication/login"
183
+ mock_response.json.return_value = {
184
+ "accessToken": {
185
+ "id": "mfa_user_id",
186
+ "authToken": "mfa_auth_token",
187
+ }
188
+ }
189
+ mock_post.return_value = mock_response
190
+
191
+ result = get_regscale_token(
192
+ api=api,
193
+ username="test_user",
194
+ password="test_password",
195
+ domain="https://example.com",
196
+ mfa_token="123456",
197
+ app_id=2,
198
+ )
199
+
200
+ assert result == ("mfa_user_id", "mfa_auth_token")
201
+ call_args = mock_post.call_args
202
+ assert call_args[1]["json"]["mfaToken"] == "123456"
203
+ assert call_args[1]["json"]["appId"] == 2
204
+ assert call_args[1]["headers"] == {"X-Api-Version": "2.0"}
File without changes