From 372a8f3b74b83f3671a74d4951b9e1d3981ed3a2 Mon Sep 17 00:00:00 2001 From: "~ . ~" <156969148+wandmagic@users.noreply.github.com> Date: Thu, 9 Jan 2025 14:54:24 -0500 Subject: [PATCH] Squashed commit of the following: commit 8c1a343b60cc162ab325b9a9ee75aab9cca01bfd Author: Gabeblis Date: Thu Jan 9 11:45:37 2025 -0500 Add new metapath target to 'security-level' constraint (#1079) commit 608080ddc3697c5de8fdf0488b221146aeadd678 Author: wandmagic <156969148+wandmagic@users.noreply.github.com> Date: Thu Jan 9 09:29:17 2025 -0500 add additional sample content (#1081) commit 1f55a73df1df93e8e33f5e2d3509a613adf823c3 Author: Gabeblis Date: Thu Jan 9 09:22:28 2025 -0500 Correct constraint message. (#1085) commit 18a02c93b47d11c623730fe458feaeae6a2101e4 Author: wandmagic <156969148+wandmagic@users.noreply.github.com> Date: Wed Jan 8 09:37:15 2025 -0500 Hotfix styles (#1076) * style guide hotfix * Update fedramp-external-constraints.xml commit 60b3c5077782c17e0decb20863e5468e7b8b0888 Author: DimitriZhurkin Date: Wed Jan 8 07:14:14 2025 -0700 Add the inter-boundary-component-has-information-type constraint (#1066) * Add the inter-boundary-component-has-information-type constraint * clean up ssp-inter-boundary-component-has-information-type-INVALID.xml commit d7b06235c1d8779c7a57fc68bf60f92859a30a1d Author: wandmagic <156969148+wandmagic@users.noreply.github.com> Date: Tue Jan 7 14:47:44 2025 -0500 fix constraints (#1070) commit fc50a42fe67741fa534a71e8b36600950c02a7fc Author: wandmagic <156969148+wandmagic@users.noreply.github.com> Date: Fri Jan 3 14:21:47 2025 -0500 hotfix develop (#1064) --- .../ssp/xml/fedramp-ssp-example.oscal.xml | 48 +++++-- .../content/resolved-example-profile.xml | 33 +++++ ...ssp-has-required-response-points-VALID.xml | 118 ++++++++++++++++++ .../content/ssp-security-level-INVALID.xml | 9 ++ .../fedramp-external-allowed-values.xml | 5 +- .../fedramp-external-constraints.xml | 4 +- .../has-required-response-points-PASS.yaml | 4 +- 7 files changed, 209 insertions(+), 12 deletions(-) create mode 100644 src/validations/constraints/content/resolved-example-profile.xml create mode 100644 src/validations/constraints/content/ssp-has-required-response-points-VALID.xml diff --git a/src/content/rev5/examples/ssp/xml/fedramp-ssp-example.oscal.xml b/src/content/rev5/examples/ssp/xml/fedramp-ssp-example.oscal.xml index 769cc3a18..171d69de9 100644 --- a/src/content/rev5/examples/ssp/xml/fedramp-ssp-example.oscal.xml +++ b/src/content/rev5/examples/ssp/xml/fedramp-ssp-example.oscal.xml @@ -2577,8 +2577,9 @@ SSP authors must add implmentations for all required controls. at least every 3 years at least annually - - + + +

Describe how Part a is satisfied within the system.

Legacy approach. If no policy component is defined, describe here how the policy satisfies part a.

@@ -2608,6 +2609,37 @@ SSP authors must add implmentations for all required controls.
+ + + +

Describe how Part a is satisfied within the system.

+

Legacy approach. If no policy component is defined, describe here how the policy satisfies part a.

+

In this case, a link must be provided to the policy.

+

FedRAMP prefers all policies and procedures be attached as a resource in the back-matter. The link points to a resource.

+
+ + + + + 11111111-0000-4000-9000-000000000001 + + +

The specified component is the system itself.

+

Any control implementation response that can not be associated with another component is associated with the component representing the system.

+
+
+ + +

Describe how this policy component satisfies part a.

+

Component approach. This links to a component representing the Identity Management and Access Control Policy.

+

That component contains a link to the policy, so it does not have to be linked here too.

+
+ + + 11111111-0000-4000-9000-000000000001 + +
+
@@ -2841,7 +2873,7 @@ SSP authors must add implmentations for all required controls. - +

Describe how Part a is satisfied.

@@ -2911,7 +2943,7 @@ SSP authors must add implmentations for all required controls. 11111111-2222-4000-8000-004000000011 - +

Describe how the control is satisfied within the system.

@@ -3811,7 +3843,7 @@ SSP authors must add implmentations for all required controls. All employees, contractors, and third-party vendors who handle sensitive information or have access to organizational media. 11111111-2222-4000-8000-004000000011 - +

Describe how the control is satisfied within the system.

@@ -3826,7 +3858,9 @@ SSP authors must add implmentations for all required controls. 11111111-0000-4000-9000-000000000001
-
+ + +

For the portion of the control satisfied by the service provider, describe how the control is met.

@@ -3896,7 +3930,7 @@ SSP authors must add implmentations for all required controls. All personnel with access to company facilities or systems, including employees, contractors, and third-party vendors. 11111111-2222-4000-8000-004000000011 - +

Describe how the control is satisfied within the system.

diff --git a/src/validations/constraints/content/resolved-example-profile.xml b/src/validations/constraints/content/resolved-example-profile.xml new file mode 100644 index 000000000..ce2dd5bc1 --- /dev/null +++ b/src/validations/constraints/content/resolved-example-profile.xml @@ -0,0 +1,33 @@ + + + + Sample + 2025-01-08T00:00:00Z + 1.0 + 1.1.3 + + + Sample 1 + + + +

Should be INCLUDED (sample-1_smt.a)

+ + +

Should be INCLUDED (sample-1_smt.a.1)

+
+
+
+ + + + +

this should be EXCLUDED (sample-1_obj.a)

+ + +

this should be EXCLUDED (sample-1_obj.a-1)

+
+
+
+
+
\ No newline at end of file diff --git a/src/validations/constraints/content/ssp-has-required-response-points-VALID.xml b/src/validations/constraints/content/ssp-has-required-response-points-VALID.xml new file mode 100644 index 000000000..c32acfbf1 --- /dev/null +++ b/src/validations/constraints/content/ssp-has-required-response-points-VALID.xml @@ -0,0 +1,118 @@ + + + + + + + + + + + + + organization-defined personnel or roles + + + Chief Information Security Officer, Information System Security Officers, and System Administrators + + + + +

There

+
+ + + +

Describe the plan to complete the implementation.

+
+
+
+ + +

Describe how this policy currently satisfies part a.

+
+ + +

Describe the plan for addressing the missing policy elements.

+
+
+ + +

Identify what is currently missing from this policy.

+
+
+
+
+ + + +

Describe how Part a is satisfied within the system.

+

Legacy approach. If no policy component is defined, describe here how the policy satisfies part a.

+

In this case, a link must be provided to the policy.

+

FedRAMP prefers all policies and procedures be attached as a resource in the back-matter. The link points to a resource.

+
+ + + + +

The specified component is the system itself.

+

Any control implementation response that can not be associated with another component is associated with the component representing the system.

+
+
+ + +

Describe how this policy component satisfies part a.

+

Component approach. This links to a component representing the Identity Management and Access Control Policy.

+

That component contains a link to the policy, so it does not have to be linked here too.

+
+ +
+
+ + + +

There

+
+ + + +

Describe the plan to complete the implementation.

+
+
+
+ + +

Describe how this policy currently satisfies part a.

+
+ + +

Describe the plan for addressing the missing policy elements.

+
+
+ + +

Identify what is currently missing from this policy.

+
+
+
+
+ + + + +

Describe how Part b-1 is satisfied.

+
+ +
+
+ + + +

Describe how Part b-2 is satisfied.

+
+ +
+
+
+
+
\ No newline at end of file diff --git a/src/validations/constraints/content/ssp-security-level-INVALID.xml b/src/validations/constraints/content/ssp-security-level-INVALID.xml index 33d9cdaef..fa4f426b4 100644 --- a/src/validations/constraints/content/ssp-security-level-INVALID.xml +++ b/src/validations/constraints/content/ssp-security-level-INVALID.xml @@ -24,4 +24,13 @@ INVALID-fips-199-moderate + + + + +

For now, this is a required field. In the future we intend to pull this information directly from FedRAMP's records based on the "leveraged-system-identifier" property's value.

+
+
+
+
\ No newline at end of file diff --git a/src/validations/constraints/fedramp-external-allowed-values.xml b/src/validations/constraints/fedramp-external-allowed-values.xml index 592df480c..4e2013a05 100644 --- a/src/validations/constraints/fedramp-external-allowed-values.xml +++ b/src/validations/constraints/fedramp-external-allowed-values.xml @@ -647,9 +647,10 @@ + - - + + Security Impact Level The security objective level as defined by NIST SP 800-60. diff --git a/src/validations/constraints/fedramp-external-constraints.xml b/src/validations/constraints/fedramp-external-constraints.xml index 856cad3df..af1baef6b 100644 --- a/src/validations/constraints/fedramp-external-constraints.xml +++ b/src/validations/constraints/fedramp-external-constraints.xml @@ -66,7 +66,7 @@ - + Statements implimented in SSP This index includes all statements defined in a FedRAMP SSP @@ -151,7 +151,7 @@ Leveraged Authorization Has Valid Impact Level - A FedRAMP SSP MUST define the appropriate FIPS-199 impact level (low, moderate, or high) for each leveraged authorization. + The FIPS-199 impact level of the leveraged system MUST be the same or higher than the impact level of this system. Non-Provider Responsible Role References User diff --git a/src/validations/constraints/unit-tests/has-required-response-points-PASS.yaml b/src/validations/constraints/unit-tests/has-required-response-points-PASS.yaml index 719e673d1..0f80b159d 100644 --- a/src/validations/constraints/unit-tests/has-required-response-points-PASS.yaml +++ b/src/validations/constraints/unit-tests/has-required-response-points-PASS.yaml @@ -3,7 +3,9 @@ test-case: description: >- This test case validates the behavior of constraint has-required-response-points - content: ../../../content/rev5/examples/ssp/xml/fedramp-ssp-example.oscal.xml + content: + - ../../../content/rev5/examples/ssp/xml/fedramp-ssp-example.oscal.xml + - ../content/ssp-has-required-response-points-VALID.xml expectations: - constraint-id: has-required-response-points result: pass