create-filegrc 0.7.0 → 0.7.1
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.
- package/README.md +1 -1
- package/package.json +1 -1
- package/src/defaults.js +82 -38
- package/src/index.js +2 -2
- package/template/AGENTS.md +9 -3
- package/template/README.md +6 -2
- package/template/WORKSPACE.md +2 -0
- package/template/data/AGENTS.md +6 -4
- package/template/data/audits/AGENTS.md +10 -0
- package/template/data/documents/AGENTS.md +11 -0
- package/template/data/documents/document-data-retention-schedule.md +2 -2
- package/template/data/documents/document-security-incident-recovery-plan.md +9 -9
- package/template/data/documents/document-soc2-management-assertion.md +7 -7
- package/template/data/documents/document-soc2-management-representation.md +1 -1
- package/template/data/documents/document-soc2-period-completeness.md +4 -4
- package/template/data/documents/document-soc2-system-description.md +4 -4
- package/template/data/evidence/AGENTS.md +1 -1
- package/template/data/policies/AGENTS.md +5 -1
- package/template/data/policies/policy-information-security.json +1 -2
- package/template/data/policies/policy-information-security.md +232 -40
- package/template/data/training/training-security-awareness.md +7 -7
- package/template/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,7 +28,7 @@ For one noninteractive run, pass company and service fields together or use `--c
|
|
|
28
28
|
"serviceName": "Example Service",
|
|
29
29
|
"boundary": "The production service and supporting infrastructure.",
|
|
30
30
|
"criticality": "high",
|
|
31
|
-
"
|
|
31
|
+
"classificationId": "confidential",
|
|
32
32
|
"internetExposed": true,
|
|
33
33
|
"programGoal": "type-2"
|
|
34
34
|
}
|
package/package.json
CHANGED
package/src/defaults.js
CHANGED
|
@@ -88,7 +88,7 @@ const descriptionCriteria = [
|
|
|
88
88
|
["DC5", "Applicable criteria and controls", "Identify the applicable trust services criteria and the controls designed to address them."],
|
|
89
89
|
["DC6", "Complementary user entity controls", "Describe controls that customers are expected to operate for the service organization's controls to work as intended."],
|
|
90
90
|
["DC7", "Subservice organizations and controls", "Describe relevant subservice organizations, how their controls are treated, and complementary controls they are expected to operate."],
|
|
91
|
-
["DC8", "Criteria not relevant", "Identify any
|
|
91
|
+
["DC8", "Criteria not relevant", "Confirm that every Security Common Criterion applies. Identify any criterion from an included optional Trust Services Category that is not relevant to the system and explain the limited circumstances."],
|
|
92
92
|
["DC9", "Significant changes", "Describe significant system changes during the reporting period that could affect a report user's understanding of the system."]
|
|
93
93
|
];
|
|
94
94
|
const commonCriteriaReferences = commonCriteria.map(([reference]) => reference);
|
|
@@ -109,10 +109,10 @@ const controls = [
|
|
|
109
109
|
{
|
|
110
110
|
id: "control-policy-management",
|
|
111
111
|
code: "GOV-02",
|
|
112
|
-
title: "
|
|
113
|
-
statement: "The policy owner reviews governed policies and plans at least annually and after material changes, obtains approval
|
|
112
|
+
title: "Control and policy management",
|
|
113
|
+
statement: "Management selects and develops manual and technology Controls from approved objectives, commitments, risks, dependencies, and changes, and records each Control's owner, scope, procedure, operation pattern, evidence source, and implementation status. The policy owner reviews Controls, governed policies, and plans at least annually and after material changes, obtains separate approval for governed content, and retains approved revisions in Git.",
|
|
114
114
|
requirements: ["CC5.1", "CC5.2", "CC5.3"],
|
|
115
|
-
activity: "Review, approve, communicate, and version policies and plans.",
|
|
115
|
+
activity: "Review Control design and evidence paths, correct gaps or approve time-bound Exceptions, and review, approve, communicate, and version governed policies and plans.",
|
|
116
116
|
controlType: "preventive",
|
|
117
117
|
operationMode: "manual",
|
|
118
118
|
operationPattern: "mixed",
|
|
@@ -121,10 +121,10 @@ const controls = [
|
|
|
121
121
|
{
|
|
122
122
|
id: "control-security-communication",
|
|
123
123
|
code: "GOV-03",
|
|
124
|
-
title: "Security communication",
|
|
125
|
-
statement: "
|
|
124
|
+
title: "Security information and communication",
|
|
125
|
+
statement: "Management obtains or generates, checks, and uses relevant and reliable information from internal and external sources to operate Controls, and communicates security responsibilities, approved reporting routes, material changes, and relevant Control information to its workforce and outside parties in time for action.",
|
|
126
126
|
requirements: ["CC2.1", "CC2.2", "CC2.3"],
|
|
127
|
-
activity: "
|
|
127
|
+
activity: "Record material information sources, scope, period, ownership, and known limits; maintain reporting routes; and communicate policies, changes, and security information.",
|
|
128
128
|
controlType: "preventive",
|
|
129
129
|
operationMode: "hybrid",
|
|
130
130
|
operationPattern: "mixed",
|
|
@@ -134,12 +134,12 @@ const controls = [
|
|
|
134
134
|
id: "control-workforce-expectations",
|
|
135
135
|
code: "HR-01",
|
|
136
136
|
title: "Workforce expectations",
|
|
137
|
-
statement: "Workers agree to applicable conduct, confidentiality, acceptable-use, and security responsibilities before receiving access and are held accountable for violations.",
|
|
138
|
-
requirements: ["CC1.4"],
|
|
139
|
-
activity: "
|
|
137
|
+
statement: "Workers are screened before sensitive access when lawful and appropriate to role risk, have the competence needed for assigned duties, agree to applicable conduct, confidentiality, acceptable-use, intellectual-property, and security responsibilities before receiving access, and are held accountable for violations.",
|
|
138
|
+
requirements: ["CC1.4", "CC1.5"],
|
|
139
|
+
activity: "Record the role-based screening decision, confirm competence and authority, complete agreements and policy acknowledgement, and take corrective action when needed.",
|
|
140
140
|
controlType: "preventive",
|
|
141
141
|
operationMode: "manual",
|
|
142
|
-
operationPattern: "
|
|
142
|
+
operationPattern: "mixed",
|
|
143
143
|
policies: [INFORMATION_SECURITY_POLICY_ID]
|
|
144
144
|
},
|
|
145
145
|
{
|
|
@@ -158,9 +158,9 @@ const controls = [
|
|
|
158
158
|
id: "control-risk-assessment",
|
|
159
159
|
code: "RSK-01",
|
|
160
160
|
title: "Risk assessment and treatment",
|
|
161
|
-
statement: "The organization assesses information security risk at least annually and after material changes, assigns owners and responses, and reviews high and critical risks at least quarterly.",
|
|
161
|
+
statement: "The organization defines security objectives and risk tolerance, assesses information security, fraud, misconduct, dependency, and change risk at least annually and after material changes, assigns owners and responses, and reviews high and critical risks at least quarterly.",
|
|
162
162
|
requirements: ["CC3.1", "CC3.2", "CC3.3", "CC3.4", "CC9.1"],
|
|
163
|
-
activity: "
|
|
163
|
+
activity: "Confirm objectives and risk tolerance, identify internal and external threats, fraud and misconduct scenarios, dependencies, and changes, score risk, select treatment, and track review dates.",
|
|
164
164
|
controlType: "detective",
|
|
165
165
|
operationMode: "manual",
|
|
166
166
|
operationPattern: "mixed",
|
|
@@ -170,7 +170,7 @@ const controls = [
|
|
|
170
170
|
id: "control-monitoring-remediation",
|
|
171
171
|
code: "MON-01",
|
|
172
172
|
title: "Control monitoring and remediation",
|
|
173
|
-
statement: "Management reviews
|
|
173
|
+
statement: "Management reviews Control operation, source information, incidents, test results, Exceptions, and findings at least quarterly and after significant failures, then communicates deficiencies and assigns, tracks, and verifies corrective work through completion.",
|
|
174
174
|
requirements: ["CC4.1", "CC4.2"],
|
|
175
175
|
activity: "Review control evidence and track deficiencies, owners, due dates, and verification.",
|
|
176
176
|
controlType: "detective",
|
|
@@ -194,9 +194,9 @@ const controls = [
|
|
|
194
194
|
id: "control-strong-authentication",
|
|
195
195
|
code: "IAM-02",
|
|
196
196
|
title: "Strong authentication",
|
|
197
|
-
statement: "Important
|
|
197
|
+
statement: "Important Systems use approved strong-authentication settings, unique identities, protected credentials, changed or disabled default credentials, and separate administrative identities or roles when technically supported and appropriate to risk. Multi-factor authentication is required for workforce and administrative access to production, source control, email, identity, and Systems that provide access to Confidential or Restricted data. Customer and external-user authentication requirements follow approved Controls, customer commitments, and risk decisions. Where required MFA is unavailable, management approves a time-bound Exception with a risk assessment, compensating Controls, an accountable owner, and a review or expiration date.",
|
|
198
198
|
requirements: ["CC6.1", "CC6.2", "CC6.6"],
|
|
199
|
-
activity: "Configure and monitor authentication, credential
|
|
199
|
+
activity: "Configure and monitor authentication, credential and recovery-material protection, default credentials, privileged identities or roles, customer requirements, and approved MFA Exceptions.",
|
|
200
200
|
controlType: "preventive",
|
|
201
201
|
operationMode: "hybrid",
|
|
202
202
|
operationPattern: "continuous",
|
|
@@ -242,9 +242,9 @@ const controls = [
|
|
|
242
242
|
id: "control-encryption-transmission",
|
|
243
243
|
code: "DATA-02",
|
|
244
244
|
title: "Encryption and secure transmission",
|
|
245
|
-
statement: "Confidential and Restricted data is encrypted in transit over untrusted networks and at rest in approved
|
|
245
|
+
statement: "Confidential and Restricted data is encrypted in transit over untrusted networks and at rest in approved Systems and on devices, with named key ownership, protected key access, and risk-based key lifecycle controls.",
|
|
246
246
|
requirements: ["CC6.1", "CC6.7"],
|
|
247
|
-
activity: "Configure encryption and approved transfer methods based on classification.",
|
|
247
|
+
activity: "Configure encryption and approved transfer methods based on classification, and control key generation, storage, distribution, rotation, revocation, and recovery as applicable.",
|
|
248
248
|
controlType: "preventive",
|
|
249
249
|
operationMode: "automated",
|
|
250
250
|
operationPattern: "continuous",
|
|
@@ -259,16 +259,16 @@ const controls = [
|
|
|
259
259
|
activity: "Apply approved retention and disposal methods to active, local, backup, and vendor-held copies.",
|
|
260
260
|
controlType: "preventive",
|
|
261
261
|
operationMode: "hybrid",
|
|
262
|
-
operationPattern: "
|
|
262
|
+
operationPattern: "mixed",
|
|
263
263
|
policies: [INFORMATION_SECURITY_POLICY_ID]
|
|
264
264
|
},
|
|
265
265
|
{
|
|
266
266
|
id: "control-inventory-configuration",
|
|
267
267
|
code: "OPS-01",
|
|
268
268
|
title: "System inventory and secure configuration",
|
|
269
|
-
statement: "The organization maintains inventories of important
|
|
269
|
+
statement: "The organization maintains inventories of important Systems, Components, company and approved personal devices, software, service accounts, Vendors, and data stores, with owners, lifecycle state, and secure configuration expectations. Unsupported or unneeded important assets are upgraded, isolated, replaced, or retired according to risk.",
|
|
270
270
|
requirements: ["CC6.1", "CC7.1"],
|
|
271
|
-
activity: "Maintain inventories, baselines, ownership, classification, and approved deviations.",
|
|
271
|
+
activity: "Maintain inventories, baselines, ownership, classification, lifecycle decisions, secure retirement, and approved deviations.",
|
|
272
272
|
controlType: "preventive",
|
|
273
273
|
operationMode: "hybrid",
|
|
274
274
|
operationPattern: "mixed",
|
|
@@ -279,8 +279,8 @@ const controls = [
|
|
|
279
279
|
code: "OPS-02",
|
|
280
280
|
title: "Endpoint protection",
|
|
281
281
|
statement: "Devices that access company systems use approved configuration, encryption, screen locking, supported software, security updates, and continuous malware protection when supported.",
|
|
282
|
-
requirements: ["CC6.6", "CC7.1"],
|
|
283
|
-
activity: "Use continuous platform protection where supported and verify endpoint configuration, update, and compliance state on the risk-based schedule
|
|
282
|
+
requirements: ["CC6.6", "CC6.8", "CC7.1"],
|
|
283
|
+
activity: "Use continuous platform protection where supported and verify endpoint configuration, update, and compliance state on the approved risk-based schedule when periodic work is needed.",
|
|
284
284
|
controlType: "preventive",
|
|
285
285
|
operationMode: "automated",
|
|
286
286
|
operationPattern: "mixed",
|
|
@@ -290,9 +290,9 @@ const controls = [
|
|
|
290
290
|
id: "control-network-security",
|
|
291
291
|
code: "NET-01",
|
|
292
292
|
title: "Network and remote-access security",
|
|
293
|
-
statement: "The organization restricts network paths, protects remote access with approved encryption and authentication, and reviews material network access rules at least annually.",
|
|
293
|
+
statement: "The organization restricts network paths, separates production and nonproduction environments according to data and risk, protects remote access with approved encryption and authentication, and reviews material network access rules at least annually.",
|
|
294
294
|
requirements: ["CC6.6", "CC6.7"],
|
|
295
|
-
activity: "Manage boundaries, firewall rules, wireless safeguards, and remote production access.",
|
|
295
|
+
activity: "Manage boundaries, environment connections, firewall rules, wireless safeguards, and remote production access.",
|
|
296
296
|
controlType: "preventive",
|
|
297
297
|
operationMode: "hybrid",
|
|
298
298
|
operationPattern: "mixed",
|
|
@@ -302,12 +302,12 @@ const controls = [
|
|
|
302
302
|
id: "control-change-management",
|
|
303
303
|
code: "CHG-01",
|
|
304
304
|
title: "Change management",
|
|
305
|
-
statement: "Material software and infrastructure changes are recorded, tested, approved, deployed through an authorized process, and recoverable. Review is independent when practical; a small team records a risk-appropriate compensating or post-deployment review, or an approved Exception, when independent pre-deployment review is not possible.",
|
|
305
|
+
statement: "Source and deployment paths protect against unauthorized changes and malicious software. Material software and infrastructure changes are recorded, receive a security design or threat analysis suited to their risk, are tested, approved, deployed through an authorized process, and are recoverable. Review is independent when practical; a small team records a risk-appropriate compensating or post-deployment review, or an approved Exception, when independent pre-deployment review is not possible.",
|
|
306
306
|
requirements: ["CC6.8", "CC8.1"],
|
|
307
|
-
activity: "Record the reason, author, risk, reviewer or compensating review, test result, deployment, and rollback method.",
|
|
307
|
+
activity: "Record the reason, author, risk, security analysis when applicable, reviewer or compensating review, test result, deployment, communication, and rollback method.",
|
|
308
308
|
controlType: "preventive",
|
|
309
309
|
operationMode: "hybrid",
|
|
310
|
-
operationPattern: "
|
|
310
|
+
operationPattern: "mixed",
|
|
311
311
|
policies: [INFORMATION_SECURITY_POLICY_ID]
|
|
312
312
|
},
|
|
313
313
|
{
|
|
@@ -316,7 +316,7 @@ const controls = [
|
|
|
316
316
|
title: "Vulnerability management",
|
|
317
317
|
statement: "The organization monitors for vulnerabilities, chooses scan coverage and cadence based on exposure and risk, and assigns each confirmed vulnerability an approved risk-based remediation target or time-bound Exception.",
|
|
318
318
|
requirements: ["CC7.1", "CC7.2", "CC7.3"],
|
|
319
|
-
activity: "Choose scan coverage and cadence
|
|
319
|
+
activity: "Choose scan coverage and cadence, define approved risk-based remediation targets, and document time-bound Exceptions when a target cannot be met.",
|
|
320
320
|
controlType: "detective",
|
|
321
321
|
operationMode: "hybrid",
|
|
322
322
|
operationPattern: "mixed",
|
|
@@ -328,7 +328,7 @@ const controls = [
|
|
|
328
328
|
title: "Penetration testing",
|
|
329
329
|
statement: "Management records whether independent penetration testing is needed for the in-scope service, then documents its scope and cadence from exposure, change, customer commitments, and risk decisions. Findings are tracked to resolution or approved risk treatment.",
|
|
330
330
|
requirements: ["CC7.1", "CC7.2"],
|
|
331
|
-
activity: "
|
|
331
|
+
activity: "Review and record applicability and cadence. When testing is required, define its scope and independence, perform the test, review results, and track findings.",
|
|
332
332
|
controlType: "detective",
|
|
333
333
|
operationMode: "manual",
|
|
334
334
|
operationPattern: "scheduled",
|
|
@@ -338,9 +338,9 @@ const controls = [
|
|
|
338
338
|
id: "control-logging-monitoring",
|
|
339
339
|
code: "LOG-01",
|
|
340
340
|
title: "Logging and monitoring",
|
|
341
|
-
statement: "Important
|
|
341
|
+
statement: "Important Systems record and protect security and operational events, retain them according to the approved Data Retention Schedule, and use risk-based alerting, review, and alert-path testing. Systems with availability commitments, recovery objectives, or material operational dependencies also monitor the health, capacity, failure, and service indicators needed to detect degradation.",
|
|
342
342
|
requirements: ["CC7.2", "CC7.3"],
|
|
343
|
-
activity: "Collect, protect, alert on, test, and review important log output and
|
|
343
|
+
activity: "Collect, protect, alert on, test, and review important log output, access, and applicable health, capacity, failure, and service indicators.",
|
|
344
344
|
controlType: "detective",
|
|
345
345
|
operationMode: "hybrid",
|
|
346
346
|
operationPattern: "mixed",
|
|
@@ -398,9 +398,9 @@ const controls = [
|
|
|
398
398
|
id: "control-vendor-due-diligence",
|
|
399
399
|
code: "VEN-01",
|
|
400
400
|
title: "Vendor due diligence and contracting",
|
|
401
|
-
statement: "New Vendors receive risk-based security and privacy review and suitable contractual safeguards before access to Confidential or Restricted data. Vendors that predate Policy adoption receive a documented transition review, deadline, or approved risk acceptance.",
|
|
401
|
+
statement: "New Vendors receive risk-based security and privacy review and suitable contractual safeguards before access to Confidential or Restricted data or material reliance by an important service. Applicable contracts address permitted use and confidentiality, security responsibilities, incident notice, access and subprocessor restrictions, continuity, data return or deletion, termination, and assurance rights. Vendors that predate Policy adoption receive a documented transition review, deadline, or approved risk acceptance.",
|
|
402
402
|
requirements: ["CC9.2"],
|
|
403
|
-
activity: "Assess service, data, access, assurance, recovery, incidents, and contract
|
|
403
|
+
activity: "Assess service, data, access, assurance, recovery, incidents, dependencies, supplied Components, and applicable contract safeguards before access or material reliance.",
|
|
404
404
|
controlType: "preventive",
|
|
405
405
|
operationMode: "manual",
|
|
406
406
|
operationPattern: "event-driven",
|
|
@@ -440,7 +440,11 @@ const obligations = [
|
|
|
440
440
|
recurrence: calendar("month", 3),
|
|
441
441
|
ownerIds: [OVERSIGHT_TEAM_ID],
|
|
442
442
|
scopeResourceIds: [OVERSIGHT_TEAM_ID],
|
|
443
|
-
controlIds: [
|
|
443
|
+
controlIds: [
|
|
444
|
+
"control-security-governance",
|
|
445
|
+
"control-security-communication",
|
|
446
|
+
"control-monitoring-remediation"
|
|
447
|
+
],
|
|
444
448
|
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
445
449
|
},
|
|
446
450
|
{
|
|
@@ -454,7 +458,16 @@ const obligations = [
|
|
|
454
458
|
SECURITY_PLAN_ID,
|
|
455
459
|
RETENTION_SCHEDULE_ID
|
|
456
460
|
],
|
|
457
|
-
controlIds: ["control-policy-management"],
|
|
461
|
+
controlIds: ["control-policy-management", "control-data-retention-disposal"],
|
|
462
|
+
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
463
|
+
},
|
|
464
|
+
{
|
|
465
|
+
id: "obligation-annual-control-design-review",
|
|
466
|
+
title: "Annual Control design and evidence-path review",
|
|
467
|
+
activityType: "control-design-review",
|
|
468
|
+
recurrence: calendar("year", 1),
|
|
469
|
+
ownerIds: [OVERSIGHT_TEAM_ID],
|
|
470
|
+
controlIds: ["control-policy-management", "control-monitoring-remediation"],
|
|
458
471
|
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
459
472
|
},
|
|
460
473
|
{
|
|
@@ -466,6 +479,15 @@ const obligations = [
|
|
|
466
479
|
controlIds: ["control-risk-assessment"],
|
|
467
480
|
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
468
481
|
},
|
|
482
|
+
{
|
|
483
|
+
id: "obligation-annual-workforce-competence-review",
|
|
484
|
+
title: "Annual workforce security-role competence review",
|
|
485
|
+
activityType: "performance-review",
|
|
486
|
+
recurrence: calendar("year", 1),
|
|
487
|
+
ownerIds: [POLICY_OWNER_APPOINTMENT_ID],
|
|
488
|
+
controlIds: ["control-workforce-expectations"],
|
|
489
|
+
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
490
|
+
},
|
|
469
491
|
{
|
|
470
492
|
id: "obligation-annual-security-training",
|
|
471
493
|
title: "Annual security awareness training",
|
|
@@ -537,8 +559,8 @@ const obligations = [
|
|
|
537
559
|
},
|
|
538
560
|
{
|
|
539
561
|
id: "obligation-annual-penetration-test",
|
|
540
|
-
title: "Annual
|
|
541
|
-
activityType: "
|
|
562
|
+
title: "Annual penetration-testing applicability and cadence review",
|
|
563
|
+
activityType: "risk-assessment",
|
|
542
564
|
recurrence: calendar("year", 1),
|
|
543
565
|
ownerIds: [POLICY_OWNER_APPOINTMENT_ID],
|
|
544
566
|
controlIds: ["control-penetration-testing"],
|
|
@@ -603,6 +625,17 @@ const obligations = [
|
|
|
603
625
|
controlIds: ["control-continuity-exercise"],
|
|
604
626
|
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
605
627
|
},
|
|
628
|
+
{
|
|
629
|
+
id: "obligation-worker-start-screening",
|
|
630
|
+
title: "Record the role-based screening and competence decision before sensitive access",
|
|
631
|
+
activityType: "workforce-review",
|
|
632
|
+
recurrence: event("person-started"),
|
|
633
|
+
triggerPrompt: "New employee or contractor?",
|
|
634
|
+
window: eventWindow(0),
|
|
635
|
+
ownerIds: [POLICY_OWNER_APPOINTMENT_ID],
|
|
636
|
+
controlIds: ["control-workforce-expectations"],
|
|
637
|
+
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
638
|
+
},
|
|
606
639
|
{
|
|
607
640
|
id: "obligation-worker-start-agreements",
|
|
608
641
|
title: "Collect workforce agreements and policy acknowledgements",
|
|
@@ -694,6 +727,17 @@ const obligations = [
|
|
|
694
727
|
controlIds: ["control-access-authorization", "control-access-review-offboarding"],
|
|
695
728
|
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
696
729
|
},
|
|
730
|
+
{
|
|
731
|
+
id: "obligation-worker-role-change-training",
|
|
732
|
+
title: "Assign and complete applicable role-based security training",
|
|
733
|
+
activityType: "role-training",
|
|
734
|
+
recurrence: event("person-role-changed"),
|
|
735
|
+
triggerPrompt: "Worker role changed?",
|
|
736
|
+
window: eventWindow(30),
|
|
737
|
+
ownerIds: [POLICY_OWNER_APPOINTMENT_ID],
|
|
738
|
+
controlIds: ["control-workforce-expectations", "control-security-training"],
|
|
739
|
+
policyIds: [INFORMATION_SECURITY_POLICY_ID]
|
|
740
|
+
},
|
|
697
741
|
{
|
|
698
742
|
id: "obligation-personal-device-approval",
|
|
699
743
|
title: "Approve personal-device access and security conditions before use",
|
package/src/index.js
CHANGED
|
@@ -523,13 +523,13 @@ async function runCombinedSetup(target, input) {
|
|
|
523
523
|
async function writeMinimalLockfile(target, name, versionRange) {
|
|
524
524
|
const lock = {
|
|
525
525
|
name,
|
|
526
|
-
version: "0.7.
|
|
526
|
+
version: "0.7.1",
|
|
527
527
|
lockfileVersion: 3,
|
|
528
528
|
requires: true,
|
|
529
529
|
packages: {
|
|
530
530
|
"": {
|
|
531
531
|
name,
|
|
532
|
-
version: "0.7.
|
|
532
|
+
version: "0.7.1",
|
|
533
533
|
dependencies: { filegrc: versionRange }
|
|
534
534
|
}
|
|
535
535
|
}
|
package/template/AGENTS.md
CHANGED
|
@@ -49,7 +49,7 @@ Read `data/AGENTS.md` before changing records. More specific instructions inside
|
|
|
49
49
|
- Put policies, plans, charters, procedures, meeting minutes, training, assertions, narratives, templates, and audit responses in Markdown beside their JSON records. filegrc derives the Markdown name, so records do not contain file paths.
|
|
50
50
|
- Put signed forms, screenshots, third-party reports, and immutable exports behind evidence records. These files may be PDF, image, CSV, or another fixed format.
|
|
51
51
|
- Never fetch an external evidence reference automatically.
|
|
52
|
-
- Do not store
|
|
52
|
+
- Do not store plaintext credentials, private keys, tokens, recovery codes, session data, or personal data that may need to be erased from Git history. Source-controlled ciphertext is allowed only under the Information Security Policy's approved encryption, separate-key, access, and rotation conditions.
|
|
53
53
|
- Keep the editable local server on loopback or behind trusted authentication. Use the read-only static build for audit sharing.
|
|
54
54
|
|
|
55
55
|
## Source truth and derived workflow
|
|
@@ -233,7 +233,11 @@ npx filegrc audit-readiness audit-2026-type-2
|
|
|
233
233
|
npx filegrc audit-readiness audit-2026-type-2 --require-ready --json
|
|
234
234
|
```
|
|
235
235
|
|
|
236
|
-
The audit record’s `
|
|
236
|
+
The audit record’s `coverage` object stores the dates agreed with the CPA firm. Use `{ "kind": "as-of", "on": "YYYY-MM-DD" }` for Type 1 or `{ "kind": "range", "startsOn": "YYYY-MM-DD", "endsOn": "YYYY-MM-DD" }` for Type 2. Keep the Program candidate coverage even when the formal date or period differs.
|
|
237
|
+
|
|
238
|
+
After reviewing the engagement's Program, Systems, criteria, Controls, commitments, subservices, complementary controls, and signatories, record the reviewed Git commit in `scopeRevision`. Update that value only after another complete scope review.
|
|
239
|
+
|
|
240
|
+
Select a framework containing the complete CC1.1 through CC9.2 Security Common Criteria set, all nine SOC 2 Description Criteria, and any optional Trust Services Categories in scope. Treat every Security Common Criterion as applicable and include Controls that cover every applicable selected Trust Services criterion. For an included optional category, keep a criterion in the framework when management judges it not relevant and record the limited circumstances under DC8. Do not omit a Description Criterion. Record whether subservice organizations are identified in `subserviceConclusion` and explain the decision. If they are identified, use `subserviceTreatments` to connect each Vendor to its supplied Components inside a selected System and record the carve-out or inclusive method and rationale. An inclusive treatment also requires selected Controls linked to those Components.
|
|
237
241
|
|
|
238
242
|
{{audit_preparation_guidance}}
|
|
239
243
|
|
|
@@ -244,7 +248,9 @@ Review both evidence paths against the exact firm-agreed date or period:
|
|
|
244
248
|
|
|
245
249
|
Audit Readiness reports coverage for both paths. The packet includes the matching filegrc records and Markdown with Git history, plus Evidence Artifacts, retained attachments, delivery indexes, and checksums.
|
|
246
250
|
|
|
247
|
-
Near the end of fieldwork, link a verified fixed-format copy of the signed management representation letter to its engagement-specific document.
|
|
251
|
+
Near the end of fieldwork, link a verified fixed-format copy of the signed management representation letter to its engagement-specific document. Record the actual signing timestamp in the Evidence `businessEventAt` field. It must be on or after the Type 1 date or Type 2 period end and must match the CPA report date once `reportDate` is known. A representation that is still marked for later blocks packet delivery.
|
|
252
|
+
|
|
253
|
+
When the CPA firm issues the report, retain it as verified `third-party-report` Evidence with `artifactSubtype: "soc2-report"` and link that exact Evidence record through `reportEvidenceId`. A draft, screenshot, unrelated business record, or unverified file does not establish report issuance.
|
|
248
254
|
|
|
249
255
|
Catalog each authoritative source as a Component and assign its `evidenceSourceKinds`. A third-party application is a Component when it supports a bounded System, a Control, Evidence, or relevant operations. Create a separate Vendor for its provider and connect the Component through `vendorId`; keep contracts, due diligence, and supplier risk on the Vendor. Name the people who can access reports and keep extraction instructions in the Component's Record Markdown. For each Type 2 population, select one source Component and export the exact audit period. Split a population when different Components or queries produce its items. Link a verified `population-export` Evidence Artifact that names the same source Component and stores the query or report parameters, generation time, timezone, count, completeness check, and accuracy check. A zero count still requires the source export and query. A population linked to an in-scope Control cannot be marked not applicable.
|
|
250
256
|
|
package/template/README.md
CHANGED
|
@@ -64,7 +64,9 @@ The Program Overview shows what is done, what is blocked, and what to do next.
|
|
|
64
64
|
|
|
65
65
|

|
|
66
66
|
|
|
67
|
-
The Security starter
|
|
67
|
+
The Security starter uses one consolidated Information Security Policy with familiar policy-family headings, one Security Incident and Recovery Plan, one focused Data Retention Schedule, one Security Awareness Training record, and the Controls and Obligations needed for the Security common criteria. The headings make common customer and Vendor questionnaire topics easy to locate, but they do not prove implementation or create separate policy documents. Confirm the applicable Control status and Evidence before answering a questionnaire.
|
|
68
|
+
|
|
69
|
+
These records are proposals, so review them against how your company actually works. Suggested retention periods and schedule cadences are starting points, not adopted requirements. Add Privacy, Confidentiality, Availability, Processing Integrity, employment, anti-bribery, or other broader GRC material only when the company chooses to expand the scope.
|
|
68
70
|
|
|
69
71
|
## Built for engineers and agents
|
|
70
72
|
|
|
@@ -94,6 +96,8 @@ filegrc manages GRC records and audit evidence. Your workforce, identity, source
|
|
|
94
96
|
|
|
95
97
|
The independent CPA firm still selects samples, tests controls, evaluates exceptions, decides whether evidence is sufficient, and issues the SOC 2 report.
|
|
96
98
|
|
|
97
|
-
|
|
99
|
+
For a SOC 2 engagement, scope all 33 Security Common Criteria, all nine Description Criteria, and any optional Trust Services Categories included in the report. The Security Common Criteria remain mandatory. Record any criterion from an optional category judged not relevant under DC8 instead of omitting a Description Criterion.
|
|
100
|
+
|
|
101
|
+
Do not put plaintext credentials, private keys, tokens, recovery codes, or personal data that may need erasure into Git. Source-controlled ciphertext is allowed only under the Information Security Policy's approved encryption, separate-key, access, and rotation conditions. The editable local server has no authentication and binds to loopback by default.
|
|
98
102
|
|
|
99
103
|
Learn more at [filegrc.com](https://filegrc.com) or [view the source on GitHub](https://github.com/Alignbase/filegrc).
|
package/template/WORKSPACE.md
CHANGED
|
@@ -42,4 +42,6 @@ The editable browser uses `main` and pushes saved changes to `origin`. Connect t
|
|
|
42
42
|
|
|
43
43
|
{{starter_setup}}
|
|
44
44
|
|
|
45
|
+
Do not put plaintext credentials, private keys, authentication tokens, recovery codes, session material, or personal data that may need erasure into Git. Source-controlled ciphertext is allowed only under the Information Security Policy's approved encryption, separate-key, access, and rotation rules.
|
|
46
|
+
|
|
45
47
|
filegrc manages GRC records and audit evidence. It does not replace infrastructure logging, monitoring, identity, backup, endpoint, or incident-detection systems.
|
package/template/data/AGENTS.md
CHANGED
|
@@ -173,9 +173,9 @@ npx filegrc program-readiness --json
|
|
|
173
173
|
|
|
174
174
|
The Control stage reports Control implementation items, evidence-family source checks, governed-plan blockers, and per-Policy activation assessments. Resolve them through the source records:
|
|
175
175
|
|
|
176
|
-
1. Choose an existing
|
|
177
|
-
2. Set the
|
|
178
|
-
3. Put the exact report, filters, date range, timezone, export format, and reconciliation steps in the
|
|
176
|
+
1. Choose an existing Component or scaffold the Component that is authoritative for the family.
|
|
177
|
+
2. Set the Component to `active`, connect it to each bounded System through `systemUses` with the `evidence-source` role and a rationale, add the matching `evidenceSourceKinds`, and name current `evidenceOwnerIds`.
|
|
178
|
+
3. Put the exact report, filters, date range, timezone, export format, and reconciliation steps in the Component’s Record Markdown.
|
|
179
179
|
4. Add the Component ID to `evidenceSourceComponentIds` on every Control in the family that it supports.
|
|
180
180
|
5. Finish the Control’s owner, procedure, scope, operation pattern, mappings, and implementation date. Put every calendar or event schedule in an Obligation.
|
|
181
181
|
6. Enable each required Obligation. It stays dormant while a governing Policy is inactive.
|
|
@@ -208,6 +208,8 @@ npx filegrc evidence-packet --audit AUDIT_ID --preview --json
|
|
|
208
208
|
|
|
209
209
|
Run Program Readiness before creating the normal audit engagement. Step 2 checks independent Policy approval without requiring activation. Evidence Readiness separately checks active Policies, implemented Controls, enabled schedules, and evidence mapping without an audit ID. Fix readiness errors in Policy, Control, Component, System, governed schedule, and Evidence records. Do not edit packet output under `.filegrc/`. A delivery-ready filegrc packet means the management checks passed; the engagement team still judges evidence and performs the examination.
|
|
210
210
|
|
|
211
|
+
For a real engagement, select the Program and its bounded Systems, a framework containing the complete CC1.1 through CC9.2 Security Common Criteria set, all nine SOC 2 Description Criteria, any optional Trust Services Categories in scope, and Controls that cover every applicable selected Trust Services criterion. Treat every Security Common Criterion as applicable. For an included optional category, keep a criterion in the framework when management judges it not relevant and record the limited circumstances in the System Description's DC8 disclosure. Do not omit any of the nine Description Criteria. Use `coverage.kind: "as-of"` with `on` for Type 1 or `coverage.kind: "range"` with `startsOn` and `endsOn` for Type 2. Record the Git commit for management's complete scope review in `scopeRevision`. Record `subserviceConclusion` and its rationale. When subservice organizations are identified, each `subserviceTreatments` item must connect one Vendor to its supplied Components within a selected System and choose the carve-out or inclusive method. Inclusive treatments also need the selected Controls that operate on those Components.
|
|
212
|
+
|
|
211
213
|
## Finish every change
|
|
212
214
|
|
|
213
215
|
```sh
|
|
@@ -217,6 +219,6 @@ git status --short
|
|
|
217
219
|
git diff
|
|
218
220
|
```
|
|
219
221
|
|
|
220
|
-
Review every changed JSON, Markdown, and attachment. Confirm the diff contains no
|
|
222
|
+
Review every changed JSON, Markdown, and attachment. Confirm the diff contains no plaintext credentials, private keys, tokens, recovery codes, improperly controlled ciphertext, temporary files, source exports with prohibited data, or derived `.filegrc/` output. Make one focused commit whose message says why the compliance record changed.
|
|
221
223
|
|
|
222
224
|
These commands are for CLI and agent work, which continues to manage Git explicitly. Browser saves in trunk mode commit automatically from the configured authoritative branch, then push in the background while the UI reports `Syncing`. Do not start another write until it reports `Synced`. Do not use a feature branch as a record approval state, and never include application changes when this workspace lives in a monorepo.
|
|
@@ -15,6 +15,10 @@ npx filegrc audit-readiness AUDIT_ID --json
|
|
|
15
15
|
|
|
16
16
|
Preparation creates engagement-specific management documents and, for Type 2, population records. It does not approve documents, implement controls, reconcile populations, or create evidence.
|
|
17
17
|
|
|
18
|
+
Before fieldwork, link the accepted engagement terms as an active approved Document with `documentKind: "soc2-engagement-terms"`. Record the actual acknowledgement date, on or after approval and no later than fieldwork start, and the current management people who acknowledged the terms.
|
|
19
|
+
|
|
20
|
+
Select a framework containing every CC1.1 through CC9.2 Security Common Criterion, all nine SOC 2 Description Criteria, and any optional Trust Services Categories included in the report. Treat every Security Common Criterion as applicable. For an included optional category, keep a criterion in the framework when management judges it not relevant, record the limited circumstances, and disclose them under DC8. Do not omit any Description Criterion. Bind management's complete scope review to its Git commit in `scopeRevision`. The selected auditor Vendor must represent the CPA firm engaged for the examination and must have been active during the engagement period.
|
|
21
|
+
|
|
18
22
|
Review both evidence paths for the exact formal date or period:
|
|
19
23
|
|
|
20
24
|
1. filegrc Evidence consists of dated Step 4 operating records. Complete the record, link it to the applicable Controls, record the result in its fields or Markdown, and link any external artifact needed to support that result.
|
|
@@ -30,3 +34,9 @@ npx filegrc evidence-packet --audit AUDIT_ID
|
|
|
30
34
|
```
|
|
31
35
|
|
|
32
36
|
Do not state that an auditor accepted evidence, selected a sample, cleared an exception, or issued a report unless that fact came from the engagement team. filegrc tracks management preparation; the CPA firm owns examination judgments and the report.
|
|
37
|
+
|
|
38
|
+
The signed representation requires verified `signed-record` Evidence with `artifactSubtype: "signed-management-representation"` and a fixed-format attachment. Record the letter's actual signing timestamp in `businessEventAt`; `collectedOn` only records when FileGRC received it. The signing date must match the CPA report date once `reportDate` is known. Store the issued SOC 2 report as verified `third-party-report` Evidence with `artifactSubtype: "soc2-report"`, record its actual issuance timestamp in `sourceGeneratedAt`, and link it through `reportEvidenceId` before closing the Audit. Reconcile `reportDate` and `opinionDate` to the date on that issued report.
|
|
39
|
+
|
|
40
|
+
At report draft and again before closure, record the subsequent-events review through the CPA report date. Name the actual reviewers, review on or after the through date, state management's conclusion, and link relevant incidents, findings, and Evidence.
|
|
41
|
+
|
|
42
|
+
For each packet delivery, name the people who performed the least-disclosure review and approved delivery. Record the redaction decision, recipient, approved delivery System, exact packet Git revision, SHA-256 manifest checksum, chronological review, approval, and delivery dates, and the receipt reference. Final assertion and representation signers must have active authority Appointments linked from the Audit.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Governed Document Instructions
|
|
2
|
+
|
|
3
|
+
The companion Markdown in this collection is the governed document that management reviews, approves, signs, or gives to the service auditor. Write it as a standalone company artifact.
|
|
4
|
+
|
|
5
|
+
Do not put FileGRC commands, record-entry instructions, readiness states, relationship IDs, or starter-library mechanics in the governed prose. Keep those details in this guide, the record editor, and calculated work guidance. A document may name FileGRC only when FileGRC itself is part of the document's subject, such as an actual system component or evidence source.
|
|
6
|
+
|
|
7
|
+
Bracketed prompts mark facts management must supply. Replace every prompt with a reviewed fact before approval, activation, signature, or delivery. FileGRC treats unresolved prompts as content blockers where the document lifecycle requires complete content.
|
|
8
|
+
|
|
9
|
+
Keep resource links in the Document JSON and supporting records. In the Markdown, describe the underlying business fact in ordinary terms. For example, use “management's control matrix,” “authoritative-source export,” or “signed letter reference” instead of a FileGRC record type or ID.
|
|
10
|
+
|
|
11
|
+
The SOC 2 assertion, representation letter, period-completeness statement, and system description are management deliverables. Reconcile them to the selected Audit, criteria, Controls, populations, events, and Evidence, but do not describe the repository workflow in the final artifact. The service auditor supplies or approves final engagement wording where applicable.
|
|
@@ -16,11 +16,11 @@ Retention periods may come from law, contract, tax, audit, security, or a docume
|
|
|
16
16
|
| Customer and service records | [Complete before approval: Systems or Components] | [Complete before approval: owner] | [Complete before approval: trigger] | [Complete before approval: retention] | Delete or anonymize | Contract, law, and business need |
|
|
17
17
|
| Incident and investigation records | Approved incident and Evidence Systems | Incident owner | Incident closure | [Complete before approval: retention] | Archive or securely delete | Legal, insurance, contract, and security needs |
|
|
18
18
|
|
|
19
|
-
Add rows for each important data class in the System and Vendor inventories. A row is incomplete until it names the source System or Component, owner, trigger, period, disposal action, and authority.
|
|
19
|
+
Add rows for each important data class in the System and Vendor inventories. A row is incomplete until it names the source System or Component, owner, trigger, period, disposal action, and authority. Remove each bracketed prompt only after replacing it with a reviewed fact.
|
|
20
20
|
|
|
21
21
|
## Holds and exceptions
|
|
22
22
|
|
|
23
|
-
An approved legal hold, investigation, or preservation duty suspends normal deletion for the affected records. Record the authority, scope, owner, start date, and release decision
|
|
23
|
+
An approved legal hold, investigation, or preservation duty suspends normal deletion for the affected records. Record the authority, scope, owner, start date, and release decision in controlled legal-hold records.
|
|
24
24
|
|
|
25
25
|
Any retention exception needs a reason, owner, approval, compensating safeguards, and expiration or next review date.
|
|
26
26
|
|
|
@@ -2,13 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
## Purpose
|
|
4
4
|
|
|
5
|
-
This plan coordinates reporting, response, recovery, and continuity when a security event or disruption affects {{company_name}} or an in-scope service.
|
|
5
|
+
This plan coordinates reporting, response, recovery, and continuity when a security event or disruption affects {{company_name}} or an in-scope service. Supporting procedures, system records, and retained evidence document the actual technical configuration and operation.
|
|
6
6
|
|
|
7
7
|
## Reporting routes
|
|
8
8
|
|
|
9
9
|
The primary reporting route is {{security_contact_email}}.
|
|
10
10
|
|
|
11
|
-
[Complete before activation: Name a usable alternate reporting route, its owner, protected location, and how workers can find it when the primary email, identity, or collaboration System is unavailable, compromised, or involved in the concern. Do not put
|
|
11
|
+
[Complete before activation: Name a usable alternate reporting route, its owner, protected location, and how workers can find it when the primary email, identity, or collaboration System is unavailable, compromised, or involved in the concern. Do not put plaintext credentials, private keys, tokens, or recovery codes in this plan.]
|
|
12
12
|
|
|
13
13
|
Reports may describe suspected unauthorized access, malware, data loss, credential exposure, security-Control failure, service disruption, fraud affecting the service, or another policy violation. The recipient records the report, protects confidentiality, preserves relevant information, and assigns an initial owner.
|
|
14
14
|
|
|
@@ -22,7 +22,7 @@ The Policy Owner maintains this plan and ensures that the organization assigns t
|
|
|
22
22
|
- Executive decision-maker for major business, customer, insurance, or legal decisions
|
|
23
23
|
- Communication owner for workforce, customer, Vendor, and public messages
|
|
24
24
|
|
|
25
|
-
If an incident raises a legal, privacy, or insurance question, the incident lead
|
|
25
|
+
If an incident raises a legal, privacy, or insurance question, the incident lead obtains suitable advice at that time. A pre-arranged counsel relationship or standing legal retainer is required only when management determines that the organization's obligations and risk warrant one.
|
|
26
26
|
|
|
27
27
|
[Complete before activation: Record the emergency contact arrangement, its owner, alternate communication channel, protected storage location, and review schedule.]
|
|
28
28
|
|
|
@@ -49,24 +49,24 @@ The team does not destroy Evidence, promise external notification, or make publi
|
|
|
49
49
|
|
|
50
50
|
## Recovery priorities and procedures
|
|
51
51
|
|
|
52
|
-
[Complete before activation:
|
|
52
|
+
[Complete before activation: Document every important System's approved recovery time objective, recovery point objective, maximum tolerable downtime, dependencies, owner, and critical customer commitments.]
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
Supporting recovery documentation for each important System must identify:
|
|
55
55
|
|
|
56
56
|
- The backup or alternate recovery approach
|
|
57
57
|
- Scope, frequency, retention, monitoring, and failure response
|
|
58
58
|
- Recovery and restoration procedure
|
|
59
59
|
- People who can access the procedure and required Systems
|
|
60
|
-
- Restore-validation method and
|
|
60
|
+
- Restore-validation method and approved schedule
|
|
61
61
|
- Dependencies, fallback paths, and validation steps
|
|
62
62
|
|
|
63
|
-
[Confirm or replace before activation: The
|
|
63
|
+
[Confirm or replace before activation: The proposed starting point for important production data is a daily backup, 30-day retention period, and annual restore validation. Document the approved choice for every important System in its recovery procedures and the Data Retention Schedule.]
|
|
64
64
|
|
|
65
65
|
If no approved objective or procedure exists during an event, the incident lead records an interim decision based on customer impact, data risk, and dependencies, then assigns the missing permanent decision as follow-up work.
|
|
66
66
|
|
|
67
67
|
## Alternate plan access
|
|
68
68
|
|
|
69
|
-
[Complete before activation: Record the protected alternate location and access method responders will use when the primary identity, source-control, or collaboration Systems are unavailable. Confirm that authorized responders can retrieve the plan without exposing secrets.]
|
|
69
|
+
[Complete before activation: Record the protected alternate location and access method responders will use when the primary identity, source-control, or collaboration Systems are unavailable. Confirm that authorized responders can retrieve the plan without exposing plaintext secrets or decryption keys.]
|
|
70
70
|
|
|
71
71
|
## Closure and follow-up
|
|
72
72
|
|
|
@@ -74,6 +74,6 @@ The incident lead closes the incident only after affected Systems are stable, se
|
|
|
74
74
|
|
|
75
75
|
## Exercises and maintenance
|
|
76
76
|
|
|
77
|
-
Management tests a representative security alert from generation through receipt, acknowledgement, escalation, and fallback on the approved
|
|
77
|
+
Management tests a representative security alert from generation through receipt, acknowledgement, escalation, and fallback on the approved schedule. It also exercises incident coordination, alternate plan access, emergency contacts, and recovery of selected important Systems on their approved schedules.
|
|
78
78
|
|
|
79
79
|
Each exercise records scope, participants, objectives, result, Evidence, Exceptions, findings, and follow-up. The owner reviews this plan after a material incident, failed exercise, important System change, or reporting-path change and on the approved Policy-review schedule.
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
# {{company_name}} Management Assertion
|
|
2
2
|
|
|
3
|
-
> Draft preparation document.
|
|
3
|
+
> Draft preparation document. Retain the section that matches the engagement, remove the other draft section, and reconcile the final wording with the service auditor before approval.
|
|
4
|
+
|
|
5
|
+
## Type 1 Assertion Draft
|
|
4
6
|
|
|
5
|
-
<!-- type-1:start -->
|
|
6
7
|
Management is responsible for the attached description of the in-scope system as of [as-of date] and for designing, implementing, and documenting the controls within that system.
|
|
7
8
|
|
|
8
9
|
Based on the criteria selected for the engagement, management asserts that:
|
|
9
10
|
|
|
10
|
-
1. The description presents the system
|
|
11
|
+
1. The attached description presents the system as designed and implemented as of [as-of date], in accordance with the applicable SOC 2 Description Criteria.
|
|
11
12
|
2. The controls stated in the description were suitably designed to provide reasonable assurance that the applicable service commitments, system requirements, and Trust Services Criteria would be met, assuming the complementary controls identified in the description operated effectively.
|
|
12
|
-
<!-- type-1:end -->
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
## Type 2 Assertion Draft
|
|
15
|
+
|
|
15
16
|
Management is responsible for the attached description of the in-scope system for [start date] through [end date] and for designing, implementing, operating, and documenting the controls within that system.
|
|
16
17
|
|
|
17
18
|
Based on the criteria selected for the engagement, management asserts that:
|
|
18
19
|
|
|
19
|
-
1. The description presents the system
|
|
20
|
+
1. The attached description presents the system as designed and implemented during [start date] through [end date], in accordance with the applicable SOC 2 Description Criteria.
|
|
20
21
|
2. The controls stated in the description were suitably designed to provide reasonable assurance that the applicable service commitments, system requirements, and Trust Services Criteria would be met, assuming the complementary controls identified in the description operated effectively.
|
|
21
22
|
3. The controls operated effectively throughout [start date] through [end date].
|
|
22
|
-
<!-- type-2:end -->
|
|
23
23
|
|
|
24
24
|
[Identify the responsible management signer, title, signature or approval method, and date.]
|
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
Reporting period: [start date] through [end date]
|
|
6
6
|
|
|
7
|
-
Management reconciled every
|
|
7
|
+
Management reconciled every population used for this engagement to its authoritative source and included every item relevant to the in-scope system and controls. The accompanying `population-index.csv` is incorporated into this statement by reference and records each population reference, source system, query, timezone, count, validation, reviewer, conclusion, and fixed export.
|
|
8
8
|
|
|
9
|
-
| Population |
|
|
9
|
+
| Population | Population reference | Result or exception |
|
|
10
10
|
| --- | --- | --- |
|
|
11
11
|
| Workforce starts, role changes, and departures | [Population ID] | [Result] |
|
|
12
12
|
| Access grants, changes, reviews, and removals | [Population ID] | [Result] |
|
|
@@ -19,7 +19,7 @@ Management reconciled every audit-population record linked to this engagement to
|
|
|
19
19
|
| Backup failures and restoration tests | [Population ID] | [Result] |
|
|
20
20
|
| Security exceptions and control findings | [Population ID] | [Result] |
|
|
21
21
|
|
|
22
|
-
For a population with zero items, retain the source
|
|
22
|
+
For a population with zero items, retain the authoritative-source export or report that produced the zero count. Describe any source limitation, omitted item, or reconciliation difference below.
|
|
23
23
|
|
|
24
24
|
## Exceptions and Source Limitations
|
|
25
25
|
|
|
@@ -27,6 +27,6 @@ For a population with zero items, retain the source-Component export or report t
|
|
|
27
27
|
|
|
28
28
|
## Management Confirmation
|
|
29
29
|
|
|
30
|
-
To the best of management's knowledge after the reconciliations above,
|
|
30
|
+
To the best of management's knowledge after the reconciliations above, management's records and linked evidence contain the complete populations and reportable events relevant to the engagement period.
|
|
31
31
|
|
|
32
32
|
[Identify the responsible signer, title, signature or approval method, and date.]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# {{company_name}} SOC 2 System Description
|
|
2
2
|
|
|
3
|
-
> Draft preparation document. Complete every bracketed item, reconcile it to
|
|
3
|
+
> Draft preparation document. Complete every bracketed item, reconcile it to management's authoritative records, and have the service auditor review the final presentation.
|
|
4
4
|
|
|
5
5
|
## Reporting Period and Scope
|
|
6
6
|
|
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
## DC2: Service Commitments and System Requirements
|
|
18
18
|
|
|
19
|
-
[Summarize customer commitments, contractual security promises, internal objectives, and the system requirements needed to meet them.
|
|
19
|
+
[Summarize customer commitments, contractual security promises, internal objectives, and the system requirements needed to meet them. Reconcile the summary to supporting commitment records.]
|
|
20
20
|
|
|
21
21
|
## DC3: System Components
|
|
22
22
|
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
|
|
47
47
|
## DC5: Applicable Criteria and Controls
|
|
48
48
|
|
|
49
|
-
[Reference the selected criteria and control matrix
|
|
49
|
+
[Reference the selected criteria and management's control matrix.]
|
|
50
50
|
|
|
51
51
|
## DC6: Complementary User Entity Controls
|
|
52
52
|
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
|
|
59
59
|
## DC8: Criteria Not Relevant
|
|
60
60
|
|
|
61
|
-
[
|
|
61
|
+
[State that CC1.1 through CC9.2 remain in scope for the mandatory Security category. For any optional Trust Services Category, identify a criterion that the service auditor agrees is not relevant in the limited circumstances allowed by the criteria, and explain why. Otherwise state that management identified no criteria as not relevant.]
|
|
62
62
|
|
|
63
63
|
## DC9: Significant Changes
|
|
64
64
|
|
|
@@ -29,4 +29,4 @@ For a signed acknowledgement, bind the attestation to the exact content Git revi
|
|
|
29
29
|
|
|
30
30
|
For a `population-export`, also record the authoritative `sourceComponentId`, exact period, generation timestamp, timezone, query or report parameters, item count, completeness check, and accuracy check. A zero-item population still needs its source export and query.
|
|
31
31
|
|
|
32
|
-
Do not commit
|
|
32
|
+
Do not commit plaintext credentials, private keys, tokens, recovery codes, session data, regulated data, or personal data that may need erasure. Source-controlled ciphertext is allowed only under the Information Security Policy's approved encryption, separate-key, access, and rotation conditions. Use an approved external reference when Git is not an appropriate store.
|
|
@@ -10,7 +10,9 @@ Use the `content` Markdown slot for the policy text. Keep ownership and approval
|
|
|
10
10
|
|
|
11
11
|
Keep a Policy `draft` until its text, owner, scope, related Requirements and Controls, review Obligation, and acknowledgement requirement are ready for independent review. Move it to `approved` when management accepts the exact content revision. Approval does not require every linked Control to be implemented and does not make the Policy effective.
|
|
12
12
|
|
|
13
|
-
The Security starter contains one Information Security Policy.
|
|
13
|
+
The Security starter contains one consolidated Information Security Policy. Its section headings use common policy-family names so a customer, auditor, or questionnaire reviewer can locate topics such as access control, personnel security, vulnerability management, incident response, continuity, and Vendor risk. Cite the consolidated Policy and exact section when that accurately answers a request. Do not claim that each section is a separate document, that the heading proves implementation, or that FileGRC supplies a certification.
|
|
14
|
+
|
|
15
|
+
Add another Policy only when management expands the program scope or has a distinct approval audience, owner, or legal requirement.
|
|
14
16
|
|
|
15
17
|
During Step 3, implement Controls while the governing Policy is approved but inactive. Configure and enable its schedules, which remain dormant. Use the Controls-page cutover or `activate-policies --scaffold` to review the approved Policy. Before selecting it for activation:
|
|
16
18
|
|
|
@@ -25,3 +27,5 @@ The independent Policy approver is a management reviewer, not the CPA auditor. A
|
|
|
25
27
|
If a proposed effective date has passed, choose a current or future activation date. Never backdate adoption.
|
|
26
28
|
|
|
27
29
|
For a material revision, preserve Git history, obtain a new approval, and require a new acknowledgement when the audience’s responsibilities changed. Do not reuse the audit firm as a management approver without confirming independence.
|
|
30
|
+
|
|
31
|
+
After updating the `filegrc` package, run `npx filegrc policy-library` to review optional starter updates. The command prints exact diffs and skips customized or adopted Policy content. It writes only after you accept the named proposal and exact revision with the printed `--accept`, `--proposal-revision`, and `--yes` command. Acceptance fails if the proposal changed after review. It does not approve the Policy or mark a linked Control implemented.
|
|
@@ -4,95 +4,287 @@
|
|
|
4
4
|
|
|
5
5
|
This Policy defines the information security requirements for {{company_name}} and its in-scope services. It applies to employees, contractors, authorized users, Systems, Components, devices, code, data, facilities, and Vendors used to provide or protect those services. Vendor requirements apply through approved contracts and oversight.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
This consolidated Policy uses security-policy names commonly requested in customer questionnaires and assurance reviews. A questionnaire response may cite this Policy and the applicable section, but it must reflect the organization's actual scope, implemented Controls, approved Exceptions, and available Evidence. A section title does not establish a separate document or prove that a Control operates.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
This Policy establishes management requirements. Approval means the company accepts those requirements, which become effective only on the recorded effective date. Approval does not by itself demonstrate implementation or operation. Management documents supporting procedures, configurations, Control operation, and Evidence separately.
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
## Consolidated policy index
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
- **Governance and workforce:** Information Security Governance and Organization; Risk Management and Compliance; Personnel and Human Resources Security; Security Awareness and Training; Acceptable Use, Clear Desk, and Clear Screen.
|
|
14
|
+
- **Assets, data, and access:** Asset Management; Data Classification, Handling, and Protection; Access Control; Identification, Authentication, and Password.
|
|
15
|
+
- **Technology protection:** Cryptography, Encryption, Key, and Secrets Management; Endpoint, Mobile Device, BYOD, and Malware Protection; Remote Access and Remote Work; Physical and Environmental Security; Network and Communications Security; Configuration Management and System Maintenance.
|
|
16
|
+
- **Engineering and security operations:** Secure Development and Change Management; Vulnerability, Patch, and Penetration Testing; Logging, Monitoring, and Audit Trail; Incident Response.
|
|
17
|
+
- **Resilience and third parties:** Business Continuity and Disaster Recovery; Backup and Restoration; Vendor, Third-Party, and Supply Chain Risk Management; Exceptions, Compliance, Enforcement, and Policy Review.
|
|
14
18
|
|
|
15
|
-
|
|
19
|
+
## Definitions
|
|
16
20
|
|
|
17
|
-
|
|
21
|
+
- **Worker:** An employee or contractor.
|
|
22
|
+
- **System:** An application, service, process, or infrastructure used to store or process information or support an in-scope service.
|
|
23
|
+
- **Component:** A technology, process, facility, or provider-supplied element within or supporting a System.
|
|
24
|
+
- **Control:** An administrative, technical, or physical safeguard.
|
|
25
|
+
- **Evidence:** Retained information that supports a security fact, decision, or activity.
|
|
26
|
+
- **Vendor:** An external party that provides a product or service.
|
|
27
|
+
- **Exception:** A management-approved, time-bound departure from a requirement.
|
|
28
|
+
- **Important System or Component:** A System or Component included in the approved service boundary or relied upon to meet a security objective, service commitment, recovery objective, Control, or Evidence need.
|
|
29
|
+
- **Approved:** Authorized by the accountable owner or management under the applicable governance process.
|
|
18
30
|
|
|
19
|
-
|
|
31
|
+
These definitions set the minimum scope. Management may classify additional assets as important based on risk.
|
|
20
32
|
|
|
21
|
-
|
|
33
|
+
## Information Security Governance and Organization Policy
|
|
22
34
|
|
|
23
|
-
|
|
35
|
+
### Roles and oversight
|
|
24
36
|
|
|
25
|
-
|
|
37
|
+
- **Policy Owner:** Maintains this Policy, the risk program, Controls, approved supporting plans, Exceptions, and improvement work.
|
|
38
|
+
- **System and process owners:** Approve access, maintain safeguards, keep inventories and recovery facts current, and resolve findings.
|
|
39
|
+
- **Independent reviewer:** Remains separate from the Policy Owner, approves the Policy, and challenges management's assessment of Control operation.
|
|
40
|
+
|
|
41
|
+
### Program review
|
|
42
|
+
|
|
43
|
+
Management reviews the security program on its approved schedule and after material change. Reviews cover objectives, service commitments, applicable duties, fraud and misconduct risk, threats, system and Vendor changes, incidents, findings, Exceptions, overdue work, and Control results. Management documents the participants, cadence, decisions, and follow-up for each review.
|
|
44
|
+
|
|
45
|
+
### Information and communication
|
|
46
|
+
|
|
47
|
+
Management obtains or generates, checks, and uses relevant information from internal and external sources to operate and evaluate Controls. Control reports identify their source, scope, period, owner, and known limits when those facts affect a decision. Material security and Control information is communicated in time to the people and outside parties responsible for acting on it.
|
|
48
|
+
|
|
49
|
+
### Conduct and reporting
|
|
50
|
+
|
|
51
|
+
Everyone in scope must act honestly, protect company and customer information, follow approved security processes, disclose conflicts that could affect security decisions, and preserve accurate records. Fraud, deliberate Control bypass, false Evidence, credential sharing, unauthorized access, concealment of a security event, and retaliation for a good-faith report are prohibited.
|
|
52
|
+
|
|
53
|
+
Suspected security events, Control failures, fraud, or policy violations must be reported promptly through the primary route at {{security_contact_email}} or the usable alternate route documented in the Security Incident and Recovery Plan. A person may use the alternate route when the primary route is unavailable, compromised, or involved in the concern. Management investigates credible reports, limits disclosure to people who need the information, preserves relevant records, and records corrective action.
|
|
54
|
+
|
|
55
|
+
## Risk Management and Compliance Policy
|
|
56
|
+
|
|
57
|
+
### Obligations and risk assessment
|
|
58
|
+
|
|
59
|
+
Management identifies security risks and applicable legal, regulatory, contractual, customer, and service commitments, then assigns responsibility through approved requirements, Controls, Systems, Vendor oversight, and governance records. Management obtains qualified legal or other professional advice when an obligation is uncertain.
|
|
60
|
+
|
|
61
|
+
Risk assessment considers objectives, information, threats, vulnerabilities, fraud, dependencies, service and technology changes, likelihood, impact, existing Controls, and risk tolerance. Risks receive an owner, response, target date, approval when accepted, and a review date. Management reassesses risk on the approved schedule and after material change. Management documents the assessment method, cadence, decisions, and follow-up.
|
|
62
|
+
|
|
63
|
+
### Control design and review
|
|
64
|
+
|
|
65
|
+
Management selects and develops manual and technology Controls that respond to approved objectives, commitments, risks, system dependencies, and changes. Each Control has a documented owner, scope, procedure, operating pattern, Evidence source, implementation status, and review path. Management reviews Control design at least annually and after material change, then corrects gaps or records a time-bound Exception.
|
|
66
|
+
|
|
67
|
+
## Personnel and Human Resources Security Policy
|
|
68
|
+
|
|
69
|
+
### Responsibilities and screening
|
|
70
|
+
|
|
71
|
+
Management defines security responsibilities for workers and confirms that people have the competence and authority needed for their assigned duties. Screening or reference checks are performed before sensitive access when lawful, proportionate to the role and risk, and approved by management. Screening is not required when management records that it is unlawful, unavailable, or not warranted for the role.
|
|
72
|
+
|
|
73
|
+
### Workforce lifecycle
|
|
74
|
+
|
|
75
|
+
Workers must accept applicable confidentiality, acceptable-use, intellectual-property, and security responsibilities before receiving access. Managers notify access administrators of starts, role changes, extended absences when relevant, and departures. Company property and access are returned, disabled, or removed when employment, services, or business need ends. Management documents approved timing, Evidence, and escalation requirements for onboarding, access changes, and offboarding in supporting procedures and schedules.
|
|
76
|
+
|
|
77
|
+
### Competence review
|
|
78
|
+
|
|
79
|
+
Management reviews at least annually and after a material role change whether workers remain capable of their assigned security and Control duties and assigns training, supervision, reassignment, or corrective action when needed. The review may be limited to security and Control responsibilities and does not mandate a broader performance-management process.
|
|
80
|
+
|
|
81
|
+
## Security Awareness and Training Policy
|
|
82
|
+
|
|
83
|
+
Workers receive security awareness training on approved onboarding and recurring schedules. Role-specific instruction is assigned when access or duties require it, including for privileged administration, engineering, incident response, privacy, finance, and people operations when applicable.
|
|
84
|
+
|
|
85
|
+
Training addresses reporting, credential and device protection, data handling, social engineering, acceptable use, incident responsibilities, and current risks relevant to the audience. Completion is tied to the content revision reviewed and followed up when overdue. Management documents the covered population, schedules, acknowledgements, completion, and Evidence in the training program records.
|
|
86
|
+
|
|
87
|
+
## Acceptable Use, Clear Desk, and Clear Screen Policy
|
|
26
88
|
|
|
27
89
|
Users must:
|
|
28
90
|
|
|
29
91
|
- Use approved identities, devices, applications, storage, messaging, meeting, and transfer services.
|
|
30
92
|
- Protect credentials, authentication devices, company equipment, customer information, and security records.
|
|
31
93
|
- Keep company data out of personal accounts and unapproved applications.
|
|
32
|
-
- Lock unattended devices and protect papers, screens, and
|
|
94
|
+
- Lock unattended devices and protect papers, screens, conversations, and remote meetings from unauthorized access.
|
|
95
|
+
- Keep Confidential and Restricted information from unattended work areas and dispose of it through approved methods.
|
|
33
96
|
- Report lost, stolen, compromised, or unexpectedly reconfigured devices promptly.
|
|
34
|
-
- Return company property and stop using company access when employment, services, or
|
|
97
|
+
- Return company property and stop using company access when employment, services, or business need ends.
|
|
98
|
+
|
|
99
|
+
Users must not bypass security safeguards, install unauthorized software, connect unapproved devices or storage, use company Systems for unlawful activity, or disclose information without authorization.
|
|
100
|
+
|
|
101
|
+
## Asset Management Policy
|
|
35
102
|
|
|
36
|
-
|
|
103
|
+
{{company_name}} inventories important Systems, Components, company and approved personal devices, software, service accounts, Vendors, and data stores. Records identify an owner, purpose, lifecycle state, classification, dependencies, and recovery needs where relevant.
|
|
37
104
|
|
|
38
|
-
|
|
105
|
+
Owners approve assets before they process Confidential or Restricted data or support an important service. Unsupported or unneeded important assets must be upgraded, isolated, replaced, or retired according to risk. Retirement removes company data, software, credentials, access, and inventory assignments through an approved process and retains dated disposal Evidence when the applicable Control requires it.
|
|
39
106
|
|
|
40
|
-
|
|
107
|
+
## Data Classification, Handling, and Protection Policy
|
|
108
|
+
|
|
109
|
+
### Classification and minimization
|
|
41
110
|
|
|
42
111
|
Data owners classify information as Public, Internal, Confidential, or Restricted and approve its collection, use, access, storage, sharing, retention, and disposal. When classification is uncertain, users protect the data as Confidential until an owner decides. Collect and retain only information needed for an approved purpose.
|
|
43
112
|
|
|
44
|
-
|
|
113
|
+
### Handling and transfer
|
|
114
|
+
|
|
115
|
+
Confidential and Restricted data must use approved Systems, least-privilege access, protected transfer methods, and safeguards appropriate to its classification and risk. Production data must not enter development or test Systems unless an owner approves the use and equivalent protection. Public links and exports of Confidential or Restricted data require explicit authorization.
|
|
116
|
+
|
|
117
|
+
### Media, retention, and disposal
|
|
118
|
+
|
|
119
|
+
Removable media containing Confidential or Restricted data requires owner approval, encryption where supported, controlled custody, and approved disposal. Owners must consider active copies, local copies, media, backups, and Vendor-held copies when applying retention or deletion. Legal holds and active investigations suspend normal disposal for affected records.
|
|
120
|
+
|
|
121
|
+
The Data Retention Schedule defines the approved period and disposal method for important in-scope record classes. Supporting standards, procedures, and system records document implementation. Disposal must be suitable for the media and classification, with dated proof when the Control requires it.
|
|
122
|
+
|
|
123
|
+
## Cryptography, Encryption, Key, and Secrets Management Policy
|
|
124
|
+
|
|
125
|
+
### Encryption requirements
|
|
126
|
+
|
|
127
|
+
Confidential and Restricted data must use approved encryption in transit over untrusted networks and encryption at rest. Management selects cryptographic methods based on data classification, exposure, technical capability, commitments, and risk, and documents selected methods and configurations in approved standards, procedures, or system records.
|
|
128
|
+
|
|
129
|
+
### Key and secret management
|
|
130
|
+
|
|
131
|
+
Encryption keys and other secrets require:
|
|
132
|
+
|
|
133
|
+
- **Ownership and access:** Named ownership and least-privilege access.
|
|
134
|
+
- **Generation and storage:** Protected generation and storage.
|
|
135
|
+
- **Distribution and use:** Controlled distribution and use.
|
|
136
|
+
- **Rotation and revocation:** Rotation or replacement based on risk and events, and revocation when access or trust ends.
|
|
137
|
+
- **Recovery:** Recoverability when loss would prevent an approved business or recovery process.
|
|
138
|
+
|
|
139
|
+
Plaintext credentials, private keys, tokens, and recovery codes must not appear in source files, tickets, chat, logs, policy records, audit records, or other general-purpose business records. Source-controlled ciphertext may be used when management approves the encryption method, decryption keys are stored separately in an approved secrets-management System, repository access alone cannot decrypt the material, and access and rotation are controlled.
|
|
140
|
+
|
|
141
|
+
## Access Control Policy
|
|
142
|
+
|
|
143
|
+
### Access lifecycle
|
|
144
|
+
|
|
145
|
+
Access requires a documented business need, owner approval, a unique identity, and least privilege. Authorized administrators provision, change, and remove access. Owners review privileged and production access and other important access on the approved schedules. Dormant, expired, excessive, or unneeded access must be removed.
|
|
45
146
|
|
|
46
|
-
|
|
147
|
+
### Privileged, shared, and service accounts
|
|
47
148
|
|
|
48
|
-
|
|
149
|
+
- **Privileged access:** Limited to approved duties and uses separate administrative identities or roles where technically supported and appropriate to risk.
|
|
150
|
+
- **Shared accounts:** Require a documented technical need, named owner, restricted use, protected credentials, and logging.
|
|
151
|
+
- **Service accounts:** Require a named owner, approved purpose, minimum permissions, protected credentials, lifecycle dates or review, and monitoring appropriate to risk.
|
|
49
152
|
|
|
50
|
-
##
|
|
153
|
+
## Identification, Authentication, and Password Policy
|
|
51
154
|
|
|
52
|
-
|
|
155
|
+
### Authentication and passwords
|
|
53
156
|
|
|
54
|
-
|
|
157
|
+
Important Systems use approved strong-authentication settings, unique identities, protected credentials, and safeguards against common authentication attacks. Default credentials must be changed or disabled before use. Only authorized administrators may change authentication and lockout settings.
|
|
55
158
|
|
|
56
|
-
|
|
159
|
+
Passwords and other authenticators must meet settings approved for the System's risk and technical capability. Users must not reuse company passwords in personal services, share authenticators, or store them in plaintext. Systems protect stored authenticators and recovery material against unauthorized disclosure and use. Management documents password length, composition, reuse, lockout, session, and recovery settings in approved authentication standards or System-specific procedures.
|
|
57
160
|
|
|
58
|
-
|
|
161
|
+
### Multi-factor authentication
|
|
162
|
+
|
|
163
|
+
- **Workforce and administrative access:** MFA is required for access to production, source control, email, identity, and Systems that provide access to Confidential or Restricted data.
|
|
164
|
+
- **Customer and external-user access:** MFA is required when an approved Control, customer commitment, or risk decision requires it.
|
|
165
|
+
- **Exceptions:** Where required MFA is unavailable, management must approve a time-bound Exception with a risk assessment, compensating Controls, an accountable owner, and a review or expiration date.
|
|
166
|
+
|
|
167
|
+
## Endpoint, Mobile Device, BYOD, and Malware Protection Policy
|
|
168
|
+
|
|
169
|
+
### Company devices and platform protection
|
|
59
170
|
|
|
60
171
|
Devices used for company work must run supported software, install security updates, require authentication, lock automatically, use encryption and host protections appropriate to the platform, and permit remote removal when company-managed and technically supported. Users must not disable management, security, logging, encryption, or remote-removal safeguards.
|
|
61
172
|
|
|
62
|
-
Platforms
|
|
173
|
+
Platforms may provide continuous native malware and application protection without a user-triggered full scan. Management documents the continuous protections in use and the periodic process that verifies configuration, update, and compliance state. A scheduled scan applies only when the selected technology and risk decision require one.
|
|
174
|
+
|
|
175
|
+
### Personal devices
|
|
176
|
+
|
|
177
|
+
Personal-device access requires prior approval, registration, verified safeguards, defined company-data boundaries, and exit steps. Management may restrict or prohibit personal-device use based on data, access, legal, customer, support, or recovery needs.
|
|
178
|
+
|
|
179
|
+
## Remote Access and Remote Work Policy
|
|
180
|
+
|
|
181
|
+
Remote access to important Systems is limited to authorized users, uses approved encryption and authentication, and is protected in proportion to data, privilege, network trust, and risk. Remote production administration requires MFA and approved access paths. Public or untrusted networks require approved encrypted access and any additional safeguards selected for the risk.
|
|
182
|
+
|
|
183
|
+
Remote workers must protect devices, papers, screens, calls, home networks, and travel locations. Management documents remote-access configuration and session restrictions in approved standards, procedures, or System records.
|
|
184
|
+
|
|
185
|
+
## Physical and Environmental Security Policy
|
|
186
|
+
|
|
187
|
+
Physical access to nonpublic work areas, infrastructure, and protected assets is limited to authorized people. Visitors are controlled and accompanied where sensitive work or information is present. Keys, badges, and other physical access methods are issued, reviewed, recovered, and disabled according to risk.
|
|
188
|
+
|
|
189
|
+
Owners protect important equipment and media against theft, tampering, damage, and environmental conditions relevant to their location. Facilities supplied by Vendors are addressed through Vendor review, contracts, and assurance rather than unsupported claims about facilities {{company_name}} does not operate.
|
|
63
190
|
|
|
64
|
-
|
|
191
|
+
## Network and Communications Security Policy
|
|
65
192
|
|
|
66
|
-
|
|
193
|
+
Owners restrict inbound, outbound, and internal network paths and management interfaces to approved business needs. They use approved encrypted administrative protocols, disable unnecessary services and ports, protect remote production access, and review material access rules on the approved schedule.
|
|
67
194
|
|
|
68
|
-
|
|
195
|
+
Production, development, test, and general-user environments must be separated to the extent needed for their data, exposure, privileges, and change risk. Connections between environments require approved paths and safeguards. Wireless and other local networks used for company work require authentication and encryption appropriate to current risk and technical capability.
|
|
196
|
+
|
|
197
|
+
## Configuration Management and System Maintenance Policy
|
|
198
|
+
|
|
199
|
+
Important Systems and Components use documented secure configuration expectations based on trusted guidance, technical capability, and risk. Owners change or disable unnecessary default accounts, credentials, services, ports, features, and configurations. Deviations require review and, when material, an approved Exception.
|
|
200
|
+
|
|
201
|
+
Configuration and maintenance work must use authorized access, protect credentials and data, record material changes, and validate security and service behavior. Unsupported important Systems or Components are upgraded, isolated, replaced, or retired according to the Asset Management Policy.
|
|
202
|
+
|
|
203
|
+
## Secure Development and Change Management Policy
|
|
204
|
+
|
|
205
|
+
### Change control
|
|
69
206
|
|
|
70
207
|
Software and infrastructure changes must be recorded, tested, approved, deployed through an authorized process, and recoverable in proportion to risk. Use independent pre-deployment review when practical. When team size or urgency makes that separation impossible, record a risk-appropriate compensating or post-deployment review. Use a time-bound Exception when the remaining departure is material.
|
|
71
208
|
|
|
72
|
-
|
|
209
|
+
### Security design and development safeguards
|
|
210
|
+
|
|
211
|
+
Material or high-risk designs and changes receive a documented security analysis suited to the change. This may include threat analysis, abuse cases, architecture review, data-flow review, or another approved method. Based on applicability and risk, Development and deployment Controls address protected branches, controlled credentials, dependency and secret detection, input and authorization checks, production-data restrictions, security testing, emergency change review, deployment approval, communication, and rollback.
|
|
212
|
+
|
|
213
|
+
## Vulnerability, Patch, and Penetration Testing Policy
|
|
214
|
+
|
|
215
|
+
### Vulnerability and patch management
|
|
216
|
+
|
|
217
|
+
{{company_name}} monitors trusted sources for vulnerabilities affecting in-scope Systems and Components. Management selects scanning coverage, penetration-testing applicability, remediation targets, and review cadence from exposure, material change, customer commitments, technical capability, and risk. Management documents the selected coverage, targets, cadence, and review decisions.
|
|
218
|
+
|
|
219
|
+
Findings receive validated scope, severity, an owner, treatment, and target date. A missed target requires documented exposure, compensating Controls, a revised date, and risk approval or Exception. Security updates are obtained from trusted sources, tested when appropriate, and applied according to the approved risk-based targets.
|
|
73
220
|
|
|
74
|
-
|
|
221
|
+
### Penetration testing
|
|
75
222
|
|
|
76
|
-
|
|
223
|
+
Penetration testing is performed when an approved Control, customer commitment, material exposure, significant change, or risk decision requires it. Its independence, scope, method, and cadence must fit the reason for testing. This Policy does not require every System to receive an annual penetration test.
|
|
77
224
|
|
|
78
|
-
|
|
225
|
+
## Logging, Monitoring, and Audit Trail Policy
|
|
79
226
|
|
|
80
|
-
|
|
227
|
+
### Logging and audit trails
|
|
81
228
|
|
|
82
|
-
|
|
229
|
+
Important Systems record and protect the security and operational events needed to investigate misuse, operate the service, and meet approved commitments. Depending on risk, events may include authentication activity, privileged actions, identity and access changes, production changes, access to Restricted data, security alerts, and Control failures.
|
|
83
230
|
|
|
84
|
-
|
|
231
|
+
Logs use synchronized time, restrict alteration and access, and avoid unnecessary secrets or personal data. Each System's retention period belongs in the approved Data Retention Schedule. Owners document risk-based alerts, review paths, thresholds, and response ownership in approved standards, procedures, and schedules.
|
|
85
232
|
|
|
86
|
-
|
|
233
|
+
### Monitoring and alert testing
|
|
87
234
|
|
|
88
|
-
|
|
235
|
+
Systems with availability commitments, recovery objectives, or material operational dependencies monitor the health, capacity, failure, and service indicators needed to detect degradation. Representative alert paths are tested from generation through acknowledgement, escalation, and fallback on the approved schedule and after a material path change. This requirement does not prescribe a particular monitoring or log-management product.
|
|
89
236
|
|
|
90
|
-
|
|
237
|
+
## Incident Response Policy
|
|
91
238
|
|
|
92
|
-
|
|
239
|
+
The Security Incident and Recovery Plan defines reporting, alternate access, severity, declaration, roles, containment, Evidence handling, notification assessment, communication, recovery, closure, and exercises. Suspected unauthorized access, malware, data loss, credential exposure, service disruption, or security-Control failure must be reported promptly.
|
|
93
240
|
|
|
94
|
-
|
|
241
|
+
Reported events receive an owner, assessment, and documented resolution or escalation. Responders preserve relevant Evidence, limit access, coordinate required legal, contractual, privacy, insurance, customer, and regulatory review, validate recovery, and track corrective work. Management exercises the process and representative alert paths on their approved schedules and after material changes when warranted.
|
|
242
|
+
|
|
243
|
+
## Business Continuity and Disaster Recovery Policy
|
|
244
|
+
|
|
245
|
+
Each important System records approved recovery priorities and objectives, dependencies, responsible people, alternate communication and access needs, and a backup or alternate recovery approach. Management selects continuity strategies according to service commitments, business impact, data risk, dependencies, and technical capability.
|
|
246
|
+
|
|
247
|
+
The Security Incident and Recovery Plan records activation, communication, response, recovery, and return-to-normal responsibilities. Management tests continuity and disaster recovery on the approved schedule, records results and findings, and tracks follow-up work.
|
|
248
|
+
|
|
249
|
+
## Backup and Restoration Policy
|
|
250
|
+
|
|
251
|
+
Important Systems use backups or an approved alternate recovery approach that meets their recovery objectives. Management documents backup or alternate-recovery scope, frequency, retention, encryption and access needs, monitoring, failure response, procedures, and test schedules.
|
|
252
|
+
|
|
253
|
+
Backup or recovery access is limited to authorized people and protected from the failures it is intended to address. Restoration or alternate recovery is validated on the approved schedule and after material change when prior results no longer represent the System. Policy adoption does not assert that every System uses daily backups or a fixed retention period.
|
|
254
|
+
|
|
255
|
+
## Vendor, Third-Party, and Supply Chain Risk Management Policy
|
|
256
|
+
|
|
257
|
+
### Due diligence
|
|
258
|
+
|
|
259
|
+
New Vendors receive a risk-based security and privacy review and suitable contractual safeguards before access to Confidential or Restricted data or material reliance by an important service. Reviews consider service scope, data, access, assurance, recovery, incident history, dependencies, supplied Components, and contract terms.
|
|
260
|
+
|
|
261
|
+
### Contract safeguards
|
|
262
|
+
|
|
263
|
+
When applicable to the service and risk, contracts address:
|
|
264
|
+
|
|
265
|
+
- Permitted use and confidentiality.
|
|
266
|
+
- Security responsibilities and incident notice.
|
|
267
|
+
- Access and subprocessor restrictions.
|
|
268
|
+
- Continuity and data return or deletion.
|
|
269
|
+
- Termination.
|
|
270
|
+
- Assurance or audit rights.
|
|
271
|
+
|
|
272
|
+
Management does not require every term for every Vendor, but records omissions that create material risk or conflict with an approved commitment.
|
|
273
|
+
|
|
274
|
+
### Existing Vendors and ongoing monitoring
|
|
275
|
+
|
|
276
|
+
For a Vendor already in use when this Policy becomes effective, the owner records a transition review and deadline or an approved risk acceptance. Policy adoption does not imply that a historical pre-access review occurred. Management documents Vendor monitoring cadence and change-driven reassessment windows in approved Vendor-management procedures and schedules.
|
|
277
|
+
|
|
278
|
+
## Exceptions, Compliance, Enforcement, and Policy Review
|
|
279
|
+
|
|
280
|
+
### Exceptions and enforcement
|
|
95
281
|
|
|
96
282
|
An Exception requires a specific scope and reason, risk assessment, compensating Controls, accountable owner, approval, and expiration or review date. Violations may result in access removal, corrective action, contract remedies, or other action allowed by law and agreement.
|
|
97
283
|
|
|
98
|
-
|
|
284
|
+
### Policy review
|
|
285
|
+
|
|
286
|
+
The Policy Owner reviews this Policy on the approved schedule and after a material change to services, Systems, risks, commitments, or obligations. The independent reviewer approves each revised version. The organization retains the reviewed Policy version, approval, effective date, and change history under its document-control process.
|
|
287
|
+
|
|
288
|
+
### Representations
|
|
289
|
+
|
|
290
|
+
Questionnaire, customer, auditor, and management representations must reflect the Policy revision, actual Control status, scope, Exceptions, and available Evidence. The presence of this consolidated Policy or one of its section headings does not justify answering that a Control is implemented when it is planned, partial, not applicable, or unsupported by Evidence.
|
|
@@ -76,9 +76,9 @@ Report a lost or stolen device, badge, authentication token, paper record, or re
|
|
|
76
76
|
## Identity and authentication
|
|
77
77
|
|
|
78
78
|
- Use a unique identity for company work. Do not share accounts.
|
|
79
|
-
- Use
|
|
79
|
+
- Use a unique password for each account and store it only through the credential-protection method approved for that System.
|
|
80
80
|
- Prefer long, randomly generated passwords or long passphrases. Do not make predictable substitutions or reuse passwords.
|
|
81
|
-
- Keep passwords, recovery codes, private keys, and authentication tokens out of email, chat, tickets, source code, and general-purpose documents.
|
|
81
|
+
- Keep plaintext passwords, recovery codes, private keys, and authentication tokens out of email, chat, tickets, source code, and general-purpose documents. Approved source-controlled ciphertext must follow the Policy and keep decryption keys separate.
|
|
82
82
|
- Use multi-factor authentication when required.
|
|
83
83
|
- Protect authentication devices and report an unexpected prompt, lost factor, or suspected credential exposure.
|
|
84
84
|
- Never disclose a password or authentication code to someone who asks for it.
|
|
@@ -92,7 +92,7 @@ Use a company-managed device for company work unless another arrangement is appr
|
|
|
92
92
|
- Keep the operating system, browser, applications, and security tools supported and updated.
|
|
93
93
|
- Enable automatic security updates when approved.
|
|
94
94
|
- Keep disk encryption, screen locking, malware protection, firewall, logging, and device-management controls enabled.
|
|
95
|
-
- Lock the screen whenever the device is unattended. Company-managed devices use the automatic-lock setting
|
|
95
|
+
- Lock the screen whenever the device is unattended. Company-managed devices must use the approved automatic-lock setting.
|
|
96
96
|
- Use a standard user account for routine work. Use administrative access only when authorized and needed.
|
|
97
97
|
- Install applications and browser extensions only through an approved process.
|
|
98
98
|
- Do not connect unapproved removable media.
|
|
@@ -105,7 +105,7 @@ Do not wipe, reset, power off, or materially alter a suspected compromised devic
|
|
|
105
105
|
|
|
106
106
|
- Use trusted networks or an approved encrypted connection.
|
|
107
107
|
- Treat public and shared networks as untrusted.
|
|
108
|
-
- Use approved remote-access methods and multi-factor authentication.
|
|
108
|
+
- Use approved remote-access methods and multi-factor authentication when the Policy, Control, customer commitment, or risk decision requires it.
|
|
109
109
|
- Do not discuss or display confidential information where another person can see or hear it.
|
|
110
110
|
- Keep work data out of personal accounts and unapproved applications.
|
|
111
111
|
- Use approved mobile applications, device encryption, screen locking, and remote lock or wipe where supported.
|
|
@@ -132,7 +132,7 @@ Follow the Information Security Policy and use the highest applicable classifica
|
|
|
132
132
|
- Store company data only in approved systems.
|
|
133
133
|
- Use least privilege and approved sharing settings.
|
|
134
134
|
- Do not use production data in development or testing unless approved and equally protected.
|
|
135
|
-
- Do not put credentials, authentication tokens, or cryptographic keys in
|
|
135
|
+
- Do not put plaintext credentials, authentication tokens, or cryptographic keys in source repositories or general-purpose Systems. Approved source-controlled ciphertext must meet the Policy's separate-key, access, and rotation conditions.
|
|
136
136
|
- Dispose of paper, devices, and media through an approved process.
|
|
137
137
|
- Report unintended disclosure, excessive access, improper disposal, or an unexpected public link.
|
|
138
138
|
|
|
@@ -142,13 +142,13 @@ People who design, build, review, deploy, or administer company Systems must:
|
|
|
142
142
|
|
|
143
143
|
- Keep code, infrastructure changes, and production access in approved repositories and workflows.
|
|
144
144
|
- Protect branches and deployments with the reviews, tests, and approvals required by the Change Management Control.
|
|
145
|
-
- Keep secrets out of source code, build output, tickets, chat, and logs.
|
|
145
|
+
- Keep plaintext secrets out of source code, build output, tickets, chat, and logs. Repository access alone must never decrypt approved source-controlled ciphertext.
|
|
146
146
|
- Validate input, authorization, error handling, and sensitive-data use at trust boundaries.
|
|
147
147
|
- Review new and changed dependencies, resolve security findings within the approved risk targets, and record Exceptions when a target cannot be met.
|
|
148
148
|
- Separate development and production duties when practical. Record a compensating or post-deployment review when team size or urgency prevents independent pre-deployment review.
|
|
149
149
|
- Record emergency changes, limit their scope, validate the result, and complete the required follow-up review.
|
|
150
150
|
|
|
151
|
-
|
|
151
|
+
Approved supporting standards, procedures, and schedules document the tools, settings, approval paths, and evidence.
|
|
152
152
|
|
|
153
153
|
## Physical security and clear workspaces
|
|
154
154
|
|