Skip to content

Commit b8ebab7

Browse files
authored
feat: add additional project policies (#207)
1 parent d27047c commit b8ebab7

File tree

5 files changed

+52
-3
lines changed

5 files changed

+52
-3
lines changed

src/database/migrations/1739183546535_alter_projects.js

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,13 @@ exports.up = async (knex) => {
1818
table.boolean('has_npmOrgMFA_policy').nullable()
1919
table.boolean('has_npmPublicationMFA_policy').nullable()
2020
table.boolean('has_upgradePathDocs_policy').nullable()
21+
table.boolean('has_patchNonCriticalVulns90Days_policy').nullable()
22+
table.boolean('has_patchCriticalVulns30Days_policy').nullable()
23+
table.boolean('has_twoOrMoreOwnersForAccess_policy').nullable()
24+
table.boolean('has_injectedSecretsAtRuntime_policy').nullable()
25+
table.boolean('has_preventScriptInjection_policy').nullable()
26+
table.boolean('has_resolveLinterWarnings_policy').nullable()
27+
table.boolean('has_annualDependencyRefresh_policy').nullable()
2128
})
2229
}
2330

@@ -41,5 +48,12 @@ exports.down = async (knex) => {
4148
table.dropColumn('has_npmOrgMFA_policy')
4249
table.dropColumn('has_npmPublicationMFA_policy')
4350
table.dropColumn('has_upgradePathDocs_policy')
51+
table.dropColumn('has_patchNonCriticalVulns90Days_policy')
52+
table.dropColumn('has_patchCriticalVulns30Days_policy')
53+
table.dropColumn('has_twoOrMoreOwnersForAccess_policy')
54+
table.dropColumn('has_injectedSecretsAtRuntime_policy')
55+
table.dropColumn('has_preventScriptInjection_policy')
56+
table.dropColumn('has_resolveLinterWarnings_policy')
57+
table.dropColumn('has_annualDependencyRefresh_policy')
4458
})
4559
}

src/database/migrations/1739185914475_alter_compliance_checks.js

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,27 @@ const checks = [
5353
}, {
5454
code_name: 'upgradePathDocs',
5555
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/106'
56+
}, {
57+
code_name: 'patchNonCriticalVulns90Days',
58+
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/81'
59+
}, {
60+
code_name: 'patchCriticalVulns30Days',
61+
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/80'
62+
}, {
63+
code_name: 'twoOrMoreOwnersForAccess',
64+
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/79'
65+
}, {
66+
code_name: 'injectedSecretsAtRuntime',
67+
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/68'
68+
}, {
69+
code_name: 'preventScriptInjection',
70+
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/104'
71+
}, {
72+
code_name: 'resolveLinterWarnings',
73+
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/84'
74+
}, {
75+
code_name: 'annualDependencyRefresh',
76+
implementation_details_reference: 'https://github.com/OpenPathfinder/visionBoard/issues/112'
5677
}
5778
]
5879

src/database/schema/schema.sql

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -731,7 +731,14 @@ CREATE TABLE public.projects (
731731
"has_ciAndCdPipelineAsCode_policy" boolean,
732732
"has_npmOrgMFA_policy" boolean,
733733
"has_npmPublicationMFA_policy" boolean,
734-
"has_upgradePathDocs_policy" boolean
734+
"has_upgradePathDocs_policy" boolean,
735+
"has_patchNonCriticalVulns90Days_policy" boolean,
736+
"has_patchCriticalVulns30Days_policy" boolean,
737+
"has_twoOrMoreOwnersForAccess_policy" boolean,
738+
"has_injectedSecretsAtRuntime_policy" boolean,
739+
"has_preventScriptInjection_policy" boolean,
740+
"has_resolveLinterWarnings_policy" boolean,
741+
"has_annualDependencyRefresh_policy" boolean
735742
);
736743

737744

src/importers/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ const { initializeStore } = require('../store')
44
const { simplifyObject } = require('@ulisesgascon/simplify-object')
55
const fs = require('fs')
66

7-
const projectPolicies = ['defineFunctionalRoles', 'orgToolingMFA', 'softwareArchitectureDocs', 'MFAImpersonationDefense', 'includeCVEInReleaseNotes', 'assignCVEForKnownVulns', 'incidentResponsePlan', 'regressionTestsForVulns', 'vulnResponse14Days', 'useCVDToolForVulns', 'securityMdMeetsOpenJSCVD', 'consistentBuildProcessDocs', 'machineReadableDependencies', 'identifyModifiedDependencies', 'ciAndCdPipelineAsCode', 'npmOrgMFA', 'npmPublicationMFA', 'upgradePathDocs']
7+
const projectPolicies = ['defineFunctionalRoles', 'orgToolingMFA', 'softwareArchitectureDocs', 'MFAImpersonationDefense', 'includeCVEInReleaseNotes', 'assignCVEForKnownVulns', 'incidentResponsePlan', 'regressionTestsForVulns', 'vulnResponse14Days', 'useCVDToolForVulns', 'securityMdMeetsOpenJSCVD', 'consistentBuildProcessDocs', 'machineReadableDependencies', 'identifyModifiedDependencies', 'ciAndCdPipelineAsCode', 'npmOrgMFA', 'npmPublicationMFA', 'upgradePathDocs', 'upgradePathDocs', 'patchNonCriticalVulns90Days', 'patchCriticalVulns30Days', 'twoOrMoreOwnersForAccess', 'injectedSecretsAtRuntime', 'preventScriptInjection', 'resolveLinterWarnings', 'annualDependencyRefresh']
88

99
const bulkImport = async (knex, filePath) => {
1010
logger.info('Bulk importing data...')

src/schemas/bulkImport.json

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,14 @@
2929
"ciAndCdPipelineAsCode",
3030
"npmOrgMFA",
3131
"npmPublicationMFA",
32-
"upgradePathDocs"
32+
"upgradePathDocs",
33+
"patchNonCriticalVulns90Days",
34+
"patchCriticalVulns30Days",
35+
"twoOrMoreOwnersForAccess",
36+
"injectedSecretsAtRuntime",
37+
"preventScriptInjection",
38+
"resolveLinterWarnings",
39+
"annualDependencyRefresh"
3340
],
3441
"examples": ["softwareDesignTraining"]
3542
},

0 commit comments

Comments
 (0)