Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | 57x 57x 1x 56x 52x 4x 4x | import { SecurityLevel } from "../types/cia";
/**
* Gets compliance requirement text for a security component and level
*
* @param component - The CIA component (confidentiality, integrity, availability)
* @param level - The security level
* @returns Human-readable compliance requirement description
*
* @example
* ```typescript
* // Get compliance text for confidentiality
* const confText = getComplianceRequirementText('confidentiality', 'High');
* console.log(confText); // "Meets stringent compliance standards"
*
* // Check availability compliance
* const availText = getComplianceRequirementText('availability', 'Moderate');
* console.log(availText); // "Satisfies most compliance needs"
*
* // Display in compliance report
* const components = ['confidentiality', 'integrity', 'availability'] as const;
* components.forEach(comp => {
* const requirement = getComplianceRequirementText(comp, 'High');
* console.log(`${comp}: ${requirement}`);
* });
* ```
*/
export function getComplianceRequirementText(
component: "confidentiality" | "integrity" | "availability",
level: SecurityLevel
): string {
Iif (level === "None") {
return `Not sufficient for most compliance frameworks`;
}
if (level === "Low") {
return component === "availability"
? "Meets basic availability requirements"
: "Meets basic compliance requirements";
}
if (level === "Moderate") {
return component === "availability"
? "Satisfies most compliance needs"
: component === "integrity"
? "Satisfies standard compliance expectations"
: "Satisfies most regulatory requirements";
}
Eif (level === "High") {
return component === "availability"
? "Meets high availability standards"
: component === "integrity"
? "Meets advanced compliance standards"
: "Meets stringent compliance standards";
}
// Very High
return component === "availability"
? "Exceeds enterprise requirements"
: component === "integrity"
? "Exceeds regulatory requirements"
: "Exceeds most compliance requirements";
}
|