From 14e0aec4fc36063cd02d9c64c07af85c1c220ee4 Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Wed, 6 Nov 2024 14:43:17 +0000 Subject: [PATCH 1/8] Add prepared-by constraints --- features/fedramp_extensions.feature | 9 ++++++ .../constraints/content/ssp-all-VALID.xml | 29 +++++++++++++++++++ ...-responsible-party-prepared-by-INVALID.xml | 13 +++++++++ ...rty-prepared-by-location-valid-INVALID.xml | 22 ++++++++++++++ .../ssp-role-defined-prepared-by-INVALID.xml | 16 ++++++++++ .../fedramp-external-constraints.xml | 18 ++++++++++++ .../responsible-party-prepared-by-FAIL.yaml | 9 ++++++ .../responsible-party-prepared-by-PASS.yaml | 9 ++++++ ...party-prepared-by-location-valid-FAIL.yaml | 9 ++++++ ...party-prepared-by-location-valid-PASS.yaml | 9 ++++++ .../role-defined-prepared-by-FAIL.yaml | 7 +++++ .../role-defined-prepared-by-PASS.yaml | 7 +++++ src/validations/module.mk | 2 +- 13 files changed, 158 insertions(+), 1 deletion(-) create mode 100644 src/validations/constraints/content/ssp-responsible-party-prepared-by-INVALID.xml create mode 100644 src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml create mode 100644 src/validations/constraints/content/ssp-role-defined-prepared-by-INVALID.xml create mode 100644 src/validations/constraints/unit-tests/responsible-party-prepared-by-FAIL.yaml create mode 100644 src/validations/constraints/unit-tests/responsible-party-prepared-by-PASS.yaml create mode 100644 src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml create mode 100644 src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml create mode 100644 src/validations/constraints/unit-tests/role-defined-prepared-by-FAIL.yaml create mode 100644 src/validations/constraints/unit-tests/role-defined-prepared-by-PASS.yaml diff --git a/features/fedramp_extensions.feature b/features/fedramp_extensions.feature index aecf898bf..02490226f 100644 --- a/features/fedramp_extensions.feature +++ b/features/fedramp_extensions.feature @@ -167,10 +167,16 @@ Examples: | response-point-PASS.yaml | | responsible-party-is-person-FAIL.yaml | | responsible-party-is-person-PASS.yaml | + | responsible-party-prepared-by-FAIL.yaml | + | responsible-party-prepared-by-PASS.yaml | + | responsible-party-prepared-by-location-valid-FAIL.yaml | + | responsible-party-prepared-by-location-valid-PASS.yaml | | role-defined-authorizing-official-poc-FAIL.yaml | | role-defined-authorizing-official-poc-PASS.yaml | | role-defined-information-system-security-officer-FAIL.yaml | | role-defined-information-system-security-officer-PASS.yaml | + | role-defined-prepared-by-FAIL.yaml | + | role-defined-prepared-by-PASS.yaml | | role-defined-system-owner-FAIL.yaml | | role-defined-system-owner-PASS.yaml | | scan-type-FAIL.yaml | @@ -284,8 +290,11 @@ Examples: | resource-has-base64-or-rlink | | resource-has-title | | responsible-party-is-person | + | responsible-party-prepared-by | + | responsible-party-prepared-by-location-valid | | role-defined-authorizing-official-poc | | role-defined-information-system-security-officer | + | role-defined-prepared-by | | role-defined-system-owner | | scan-type | | security-level | diff --git a/src/validations/constraints/content/ssp-all-VALID.xml b/src/validations/constraints/content/ssp-all-VALID.xml index 3e81f23a4..2f8a86573 100644 --- a/src/validations/constraints/content/ssp-all-VALID.xml +++ b/src/validations/constraints/content/ssp-all-VALID.xml @@ -12,6 +12,12 @@ SSP-2024-002 + + Prepared By + +

This organization prepared the SSP.

+
+
Document Creator @@ -52,6 +58,17 @@ + + CSP HQ +
+ Suite 0000 + 1234 Some Street + Haven + ME + 00000 + US +
+
US @@ -64,6 +81,15 @@
+ + Person Name 1 + + + name@example.com + 2020000001 + 27b78960-59ef-4619-82b0-ae20b9c709ac + 6b286b5d-8f07-4fa7-8847-1dd0d88f73fb + Example Organization ExOrg @@ -75,6 +101,9 @@
+ + 3360e343-9860-4bda-9dfc-ff427c3dfab6 + 11111111-0000-4000-9000-000000000001 diff --git a/src/validations/constraints/content/ssp-responsible-party-prepared-by-INVALID.xml b/src/validations/constraints/content/ssp-responsible-party-prepared-by-INVALID.xml new file mode 100644 index 000000000..b032a9770 --- /dev/null +++ b/src/validations/constraints/content/ssp-responsible-party-prepared-by-INVALID.xml @@ -0,0 +1,13 @@ + + + + Prepared By + +

This organization prepared the SSP.

+
+
+ + 3360e343-9860-4bda-9dfc-ff427c3dfab6 + +
+
\ No newline at end of file diff --git a/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml new file mode 100644 index 000000000..f565fc88d --- /dev/null +++ b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml @@ -0,0 +1,22 @@ + + + + + + CSP HQ +
+ Suite 0000 + 1234 Some Street + + ME + 00000 +
+
+ + 27b78960-59ef-4619-82b0-ae20b9c709ac + + + 3360e343-9860-4bda-9dfc-ff427c3dfab6 + +
+
\ No newline at end of file diff --git a/src/validations/constraints/content/ssp-role-defined-prepared-by-INVALID.xml b/src/validations/constraints/content/ssp-role-defined-prepared-by-INVALID.xml new file mode 100644 index 000000000..ac2413474 --- /dev/null +++ b/src/validations/constraints/content/ssp-role-defined-prepared-by-INVALID.xml @@ -0,0 +1,16 @@ + + + + Prepared By + +

The organization that prepared this SSP. If developed in-house, this is the CSP itself.

+
+
+ + 3360e343-9860-4bda-9dfc-ff427c3dfab6 + +

Exactly one

+
+
+
+
\ No newline at end of file diff --git a/src/validations/constraints/fedramp-external-constraints.xml b/src/validations/constraints/fedramp-external-constraints.xml index 8bcfe5503..e7abe6ad0 100644 --- a/src/validations/constraints/fedramp-external-constraints.xml +++ b/src/validations/constraints/fedramp-external-constraints.xml @@ -150,6 +150,9 @@ + + + Data Center Alternate @@ -176,6 +179,16 @@ For roles 'system-owner' and 'information-system-security-officer', the responsible-role party MUST be a party of type 'person'. + + Responsible Party Prepared By + + A FedRAMP SSP MUST have a responsible party that references a role defined as "prepared-by". + + + Responsible Party Prepared By Location Valid + + A FedRAMP SSP MUST have a responsible party defined as "prepared-by" that references a party with a valid location. + Role Defined Authorizing Official POC @@ -187,6 +200,11 @@ A FedRAMP SSP MUST define a role for the point of contact for an information system security officer. + + Role Defined Prepared By + + A FedRAMP SSP MUST have a role defined as "prepared-by". + Role Defined System Owner diff --git a/src/validations/constraints/unit-tests/responsible-party-prepared-by-FAIL.yaml b/src/validations/constraints/unit-tests/responsible-party-prepared-by-FAIL.yaml new file mode 100644 index 000000000..20dd9ebe4 --- /dev/null +++ b/src/validations/constraints/unit-tests/responsible-party-prepared-by-FAIL.yaml @@ -0,0 +1,9 @@ +test-case: + name: Negative Test for responsible-party-prepared-by + description: >- + This test case validates the behavior of constraint + responsible-party-prepared-by + content: ../content/ssp-responsible-party-prepared-by-INVALID.xml + expectations: + - constraint-id: responsible-party-prepared-by + result: fail diff --git a/src/validations/constraints/unit-tests/responsible-party-prepared-by-PASS.yaml b/src/validations/constraints/unit-tests/responsible-party-prepared-by-PASS.yaml new file mode 100644 index 000000000..3f55f7247 --- /dev/null +++ b/src/validations/constraints/unit-tests/responsible-party-prepared-by-PASS.yaml @@ -0,0 +1,9 @@ +test-case: + name: Positive Test for responsible-party-prepared-by + description: >- + This test case validates the behavior of constraint + responsible-party-prepared-by + content: ../content/ssp-all-VALID.xml + expectations: + - constraint-id: responsible-party-prepared-by + result: pass diff --git a/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml new file mode 100644 index 000000000..95bac42d9 --- /dev/null +++ b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml @@ -0,0 +1,9 @@ +test-case: + name: Negative Test for responsible-party-prepared-by-location-valid + description: >- + This test case validates the behavior of constraint + responsible-party-prepared-by-location-valid + content: ../content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml + expectations: + - constraint-id: responsible-party-prepared-by-location-valid + result: fail diff --git a/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml new file mode 100644 index 000000000..be2cb57b4 --- /dev/null +++ b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml @@ -0,0 +1,9 @@ +test-case: + name: Positive Test for responsible-party-prepared-by-location-valid + description: >- + This test case validates the behavior of constraint + responsible-party-prepared-by-location-valid + content: ../content/ssp-all-VALID.xml + expectations: + - constraint-id: responsible-party-prepared-by-location-valid + result: pass diff --git a/src/validations/constraints/unit-tests/role-defined-prepared-by-FAIL.yaml b/src/validations/constraints/unit-tests/role-defined-prepared-by-FAIL.yaml new file mode 100644 index 000000000..8e16c1f6a --- /dev/null +++ b/src/validations/constraints/unit-tests/role-defined-prepared-by-FAIL.yaml @@ -0,0 +1,7 @@ +test-case: + name: Negative Test for role-defined-prepared-by + description: This test case validates the behavior of constraint role-defined-prepared-by + content: ../content/ssp-role-defined-prepared-by-INVALID.xml + expectations: + - constraint-id: role-defined-prepared-by + result: fail diff --git a/src/validations/constraints/unit-tests/role-defined-prepared-by-PASS.yaml b/src/validations/constraints/unit-tests/role-defined-prepared-by-PASS.yaml new file mode 100644 index 000000000..20380bce1 --- /dev/null +++ b/src/validations/constraints/unit-tests/role-defined-prepared-by-PASS.yaml @@ -0,0 +1,7 @@ +test-case: + name: Positive Test for role-defined-prepared-by + description: This test case validates the behavior of constraint role-defined-prepared-by + content: ../content/ssp-all-VALID.xml + expectations: + - constraint-id: role-defined-prepared-by + result: pass diff --git a/src/validations/module.mk b/src/validations/module.mk index e299327e6..53161039c 100644 --- a/src/validations/module.mk +++ b/src/validations/module.mk @@ -24,7 +24,7 @@ lint-validations: build-validations: @echo "Running Cucumber Tests" $(OSCAL_CLI) server start -bg - @npm run test:server + @npm run test $(OSCAL_CLI) server stop clean-validations: From 0faf4130ee236159d38a1925130aaa9c31eb6fe4 Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Wed, 6 Nov 2024 16:51:33 +0000 Subject: [PATCH 2/8] Add check for embedded address assembly in party --- ...rty-prepared-by-location-valid-VALID-1.xml | 473 ++++++++++++++++++ .../fedramp-external-constraints.xml | 3 +- ...party-prepared-by-location-valid-PASS.yaml | 9 +- 3 files changed, 481 insertions(+), 4 deletions(-) create mode 100644 src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-VALID-1.xml diff --git a/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-VALID-1.xml b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-VALID-1.xml new file mode 100644 index 000000000..deffeb3d5 --- /dev/null +++ b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-VALID-1.xml @@ -0,0 +1,473 @@ + + + + Enhanced Example System Security Plan + 2024-08-01T14:30:00Z + 2024-08-01T14:30:00Z + 1.1 + 1.1.2 + SSP-2024-002 + + + + Prepared By + +

This organization prepared the SSP.

+
+
+ + Document Creator + + + Content Approver + + + System Administrator + + + Asset Owner + + + System Owner + + + Authorizing Official Point of Contact + + + Information System Security Officer (or Equivalent) + + + Information System Management Point of Contact (POC) + +

The highest level manager who is responsible for system operation on behalf of the System Owner.

+
+
+ + Information System Technical Point of Contact + +

The individual or individuals leading the technical operation of the system.

+
+
+ + General Point of Contact (POC) + +

A general point of contact for the system, designated by the system owner.

+
+
+ +
+ US +
+ +
+ +
+ US +
+ +
+ + Person Name 1 + + + name@example.com + 2020000001 +
+ Suite 0000 + 1234 Some Street + Haven + ME + 00000 + US +
+ 6b286b5d-8f07-4fa7-8847-1dd0d88f73fb +
+ + Example Organization + ExOrg + + + + Jane Doe + jane.doe@example.com +
+ + + + 3360e343-9860-4bda-9dfc-ff427c3dfab6 + + + 11111111-0000-4000-9000-000000000001 + + + 22222222-0000-4000-9000-000000000002 + + + + 22222222-0000-4000-9000-000000000002 + + + 22222222-0000-4000-9000-000000000002 + + + 22222222-0000-4000-9000-000000000002 + + + 22222222-0000-4000-9000-000000000002 + + + 22222222-0000-4000-9000-000000000002 + + + 22222222-0000-4000-9000-000000000002 + + + 22222222-0000-4000-9000-000000000002 + + + +

This SSP is an example for demonstration purposes.

+
+ + + + + + F00000001 + Enhanced Example System + System's Short Name or Acronym + +

This is an enhanced example system for demonstration purposes, incorporating more FedRAMP-specific elements.

+
+ + + + + + + fips-199-moderate + + + Financial Information + +

Contains sensitive financial data related to organizational operations.

+
+ + C.2.8.12 + + + fips-199-high + fips-199-high + + + + fips-199-moderate + fips-199-low + +

Required if the base and selected values do not match.

+
+
+ + fips-199-high + fips-199-low + +

Required if the base and selected values do not match.

+
+
+
+
+ + fips-199-moderate + fips-199-moderate + fips-199-moderate + + + + +

The authorization boundary includes all components within the main data center and the disaster recovery site.

+
+ + +

A diagram-specific explanation.

+
+ + Authorization Boundary Diagram +
+
+ + +

A holistic, top-level explanation of the network architecture.

+
+ + +

A diagram-specific explanation.

+
+ + Network Diagram +
+
+ + +

A holistic, top-level explanation of the system's data flows.

+
+ + +

A diagram-specific explanation.

+
+ + Data Flow Diagram +
+
+
+ + + + System Administrator + + + + system-admin + + Admin +

admin user

+ administration +
+ +
+ + + Primary Application Server + +

Main application server hosting the core system functionality.

+
+ main line + + + 11111111-0000-4000-9000-000000000001 + + +

This is the primary application server for the system.

+
+
+ + + External API Connection + +

Secure connection to an external API for data enrichment.

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

This connection is used for secure data exchange with external systems.

+
+
+ + + +

Primary database server

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

Implementation of controls for the Enhanced Example System

+
+ + + + + + + +

Access Control Policy and Procedures (AC-1) is fully implemented in our system.

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

Information System Component Inventory (CM-8) is partially implemented.

+
+ + + 11111111-0000-4000-9000-000000000001 + +
+
+
+ + + + Access Control Policy + +

Detailed access control policy document

+
+ + +
+ + User's Guide + +

User's Guide

+
+ + + + +

Table 12-1 Attachments: User's Guide Attachment

+

May use rlink with a relative path, or embedded as base64.

+
+
+ + Document Title + +

Rules of Behavior

+
+ + + + + 00000000 + +

Table 12-1 Attachments: Rules of Behavior (ROB)

+

May use rlink with a relative path, or embedded as base64.

+
+
+ + Document Title + +

Contingency Plan (CP)

+
+ + + + + 00000000 + +

Table 12-1 Attachments: Contingency Plan (CP) Attachment

+

May use rlink with a relative path, or embedded as base64.

+
+
+ + Document Title + +

Configuration Management (CM) Plan

+
+ + + + + 00000000 + +

Table 12-1 Attachments: Configuration Management (CM) Plan Attachment

+

May use rlink with a relative path, or embedded as base64.

+
+
+ + Document Title + +

Incident Response (IR) Plan

+
+ + + + + 00000000 + +

Table 12-1 Attachments: Incident Response (IR) Plan Attachment

+

May use rlink with a relative path, or embedded as base64.

+
+
+ + Separation of Duties Matrix + +

Separation of Duties Matrix

+
+ + + + + 00000000 + +

May use rlink with a relative path, or embedded as base64.

+
+
+ + + + Authorization Boundary + +

Authorization Boundary Diagram

+
+ + + + + 00000000 + +

May use rlink with a relative path, or embedded as base64.

+
+
+ + + Network Architecture + +

Network Architecture Diagram

+
+ + + + + 00000000 + +

May use rlink with a relative path, or embedded as base64.

+
+
+ + + Data Flow + +

Data flow Diagram

+
+ + + + + 00000000 + +

May use rlink with a relative path, or embedded as base64.

+
+
+ + + +
+ diff --git a/src/validations/constraints/fedramp-external-constraints.xml b/src/validations/constraints/fedramp-external-constraints.xml index e7abe6ad0..2c7bb2933 100644 --- a/src/validations/constraints/fedramp-external-constraints.xml +++ b/src/validations/constraints/fedramp-external-constraints.xml @@ -151,6 +151,7 @@ + @@ -184,7 +185,7 @@ A FedRAMP SSP MUST have a responsible party that references a role defined as "prepared-by". - + Responsible Party Prepared By Location Valid A FedRAMP SSP MUST have a responsible party defined as "prepared-by" that references a party with a valid location. diff --git a/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml index be2cb57b4..f0f790e02 100644 --- a/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml +++ b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-PASS.yaml @@ -1,9 +1,12 @@ test-case: name: Positive Test for responsible-party-prepared-by-location-valid description: >- - This test case validates the behavior of constraint - responsible-party-prepared-by-location-valid - content: ../content/ssp-all-VALID.xml + This test case validates the behavior of constraint responsible-party-prepared-by-location-valid. + Scenario 1: Tests when a party references a location assembly. + Scenario 2: Tests when a party has an address assembly embedded. + content: + - ../content/ssp-all-VALID.xml + - ../content/ssp-responsible-party-prepared-by-location-valid-VALID-1.xml expectations: - constraint-id: responsible-party-prepared-by-location-valid result: pass From e2e80fe9a7a14dc81914e32ca733da70f04a4cbb Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Thu, 7 Nov 2024 04:31:12 +0000 Subject: [PATCH 3/8] Fix messages to be less jargony --- .../constraints/fedramp-external-constraints.xml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/validations/constraints/fedramp-external-constraints.xml b/src/validations/constraints/fedramp-external-constraints.xml index 2c7bb2933..1ae9dc696 100644 --- a/src/validations/constraints/fedramp-external-constraints.xml +++ b/src/validations/constraints/fedramp-external-constraints.xml @@ -183,12 +183,12 @@ Responsible Party Prepared By - A FedRAMP SSP MUST have a responsible party that references a role defined as "prepared-by". + A FedRAMP SSP MUST have a responsible party that defines which party performs the role of preparing the document. Responsible Party Prepared By Location Valid - A FedRAMP SSP MUST have a responsible party defined as "prepared-by" that references a party with a valid location. + A FedRAMP SSP MUST have a responsible party for preparing the document, and that party MUST define an address. Role Defined Authorizing Official POC @@ -204,7 +204,7 @@ Role Defined Prepared By - A FedRAMP SSP MUST have a role defined as "prepared-by". + A FedRAMP SSP MUST define a role for preparing this document. Role Defined System Owner From 09e771082ea95a7f6725da2877fca515d9c8895c Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Thu, 7 Nov 2024 04:34:06 +0000 Subject: [PATCH 4/8] indent --- ...ssp-responsible-party-prepared-by-location-valid-INVALID.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml index f565fc88d..fbdad1f26 100644 --- a/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml +++ b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml @@ -2,7 +2,7 @@ - + CSP HQ
Suite 0000 From 335f2979bd7e64bcc53c520bf61ac1521b3bb877 Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Thu, 7 Nov 2024 04:41:52 +0000 Subject: [PATCH 5/8] Parenthesis to cleanup test expression --- src/validations/constraints/fedramp-external-constraints.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/validations/constraints/fedramp-external-constraints.xml b/src/validations/constraints/fedramp-external-constraints.xml index 1ae9dc696..eab907bb2 100644 --- a/src/validations/constraints/fedramp-external-constraints.xml +++ b/src/validations/constraints/fedramp-external-constraints.xml @@ -185,7 +185,7 @@ A FedRAMP SSP MUST have a responsible party that defines which party performs the role of preparing the document. - + Responsible Party Prepared By Location Valid A FedRAMP SSP MUST have a responsible party for preparing the document, and that party MUST define an address. From 069c896548fb46657c2fc30347ac8a139733c1de Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Thu, 7 Nov 2024 04:50:03 +0000 Subject: [PATCH 6/8] Add extra negative test case --- ...ty-prepared-by-location-valid-INVALID-1.xml | 18 ++++++++++++++++++ ...-party-prepared-by-location-valid-FAIL.yaml | 9 ++++++--- 2 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID-1.xml diff --git a/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID-1.xml b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID-1.xml new file mode 100644 index 000000000..bcf8d206b --- /dev/null +++ b/src/validations/constraints/content/ssp-responsible-party-prepared-by-location-valid-INVALID-1.xml @@ -0,0 +1,18 @@ + + + + + +
+ Suite 0000 + 1234 Some Street + + ME + 00000 +
+
+ + 3360e343-9860-4bda-9dfc-ff427c3dfab6 + +
+
\ No newline at end of file diff --git a/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml index 95bac42d9..d4a1be275 100644 --- a/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml +++ b/src/validations/constraints/unit-tests/responsible-party-prepared-by-location-valid-FAIL.yaml @@ -1,9 +1,12 @@ test-case: name: Negative Test for responsible-party-prepared-by-location-valid description: >- - This test case validates the behavior of constraint - responsible-party-prepared-by-location-valid - content: ../content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml + This test case validates the behavior of constraint responsible-party-prepared-by-location-valid. + Scenario 1: Tests the case of an invalid location assembly. + Scenario 2: Tests the case of an invalid address directly in the party itself. + content: + - ../content/ssp-responsible-party-prepared-by-location-valid-INVALID.xml + - ../content/ssp-responsible-party-prepared-by-location-valid-INVALID-1.xml expectations: - constraint-id: responsible-party-prepared-by-location-valid result: fail From e045fb773129a088a4f9f2b9362d6d53b532491a Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Thu, 7 Nov 2024 13:01:41 +0000 Subject: [PATCH 7/8] undo workaround --- src/validations/module.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/validations/module.mk b/src/validations/module.mk index 53161039c..e299327e6 100644 --- a/src/validations/module.mk +++ b/src/validations/module.mk @@ -24,7 +24,7 @@ lint-validations: build-validations: @echo "Running Cucumber Tests" $(OSCAL_CLI) server start -bg - @npm run test + @npm run test:server $(OSCAL_CLI) server stop clean-validations: From 7332cb6d4c46986179a47f2248bcb6013c96b32a Mon Sep 17 00:00:00 2001 From: Gabeblis Date: Fri, 8 Nov 2024 19:46:51 +0000 Subject: [PATCH 8/8] Suggested improvements to constraint level and ssp-all-VALID --- src/validations/constraints/content/ssp-all-VALID.xml | 2 +- src/validations/constraints/fedramp-external-constraints.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/validations/constraints/content/ssp-all-VALID.xml b/src/validations/constraints/content/ssp-all-VALID.xml index 2f8a86573..6d5a69e17 100644 --- a/src/validations/constraints/content/ssp-all-VALID.xml +++ b/src/validations/constraints/content/ssp-all-VALID.xml @@ -15,7 +15,7 @@ Prepared By -

This organization prepared the SSP.

+

This party prepared the SSP.

diff --git a/src/validations/constraints/fedramp-external-constraints.xml b/src/validations/constraints/fedramp-external-constraints.xml index eab907bb2..fdfdc433c 100644 --- a/src/validations/constraints/fedramp-external-constraints.xml +++ b/src/validations/constraints/fedramp-external-constraints.xml @@ -185,7 +185,7 @@ A FedRAMP SSP MUST have a responsible party that defines which party performs the role of preparing the document.
- + Responsible Party Prepared By Location Valid A FedRAMP SSP MUST have a responsible party for preparing the document, and that party MUST define an address.