Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New controls.yaml for Database/Warehouse #473

Open
wants to merge 2 commits into
base: main
Choose a base branch
from
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
164 changes: 164 additions & 0 deletions services/database/warehouse/controls.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
common_controls:
- CCC.C01 # Prevent unencrypted requests
- CCC.C02 # Ensure data encryption at rest for all stored data
- CCC.C03 # Implement multi-factor authentication (MFA) for access
- CCC.C04 # Log all access and changes
- CCC.C05 # Prevent access from untrusted entities
- CCC.C06 # Prevent deployment in restricted regions
- CCC.C07 # Alert on non-human enumeration
- CCC.C09 # Prevent tampering, deletion, or unauthorized access to access logs
- CCC.C10 # Prevent data replication to destinations outside of defined trust perimeter

controls:
- id: CCC.DataWar.C01 # Prevent Datasets from Being Publicly Accessible
title: Prevent Datasets from Being Publicly Accessible
objective: |
Ensure that datasets in the Cloud Data Warehouse are not publicly readable or set to `allUsers` or `allAuthenticatedUsers`, both at the dataset level and via IAM policies. This prevents unauthorized data access and potential data leakage.
control_family: Identity and Access Management
threats:
- CCC.TH01 # Unauthorized access through elevated privileges
- CCC.TH06 # Data is lost or corrupted
nist_csf: PR.AC-4 # Access permissions are managed with least privilege
control_mappings:
CCM:
- IAM-12 # Identity and Access Management
ISO_27001:
- 2013 A.9.1.2 # Access to networks and network services
NIST_800_53:
- AC-3 # Access Enforcement
- AC-6 # Least Privilege
test_requirements:
- id: CCC.DataWar.C01.TR01
text: |
Verify that no datasets are accessible by `allUsers` or `allAuthenticatedUsers` in the Cloud Data Warehouse.
tlp_levels:
- tlp_red
- tlp_amber
- id: CCC.DataWar.C01.TR02
text: |
Check IAM policies for datasets to ensure no bindings include `allUsers` or `allAuthenticatedUsers`.
tlp_levels:
- tlp_red
- tlp_amber

- id: CCC.DataWar.C02 # Encrypt Individual Values in Tables
title: Encrypt Individual Values in Tables
objective: |
Enhance data security by encrypting individual sensitive data values within tables using authenticated encryption functions, protecting data at a granular level.
control_family: Data Protection
threats:
- CCC.TH06 # Data is lost or corrupted
- CCC.TH02 # Data is intercepted in transit
nist_csf: PR.DS-5 # Protections against data leaks are implemented
control_mappings:
CCM:
- DSI-06 # Data Encryption
ISO_27001:
- 2013 A.10.1.1 # Cryptographic controls
NIST_800_53:
- SC-13 # Cryptographic Protection
test_requirements:
- id: CCC.DataWar.C02.TR01
text: |
Verify that sensitive data fields are encrypted using appropriate encryption functions within the database.
tlp_levels:
- tlp_red
- tlp_amber

- id: CCC.DataWar.C03 # Use Authorized Views for Data Sharing
title: Use Authorized Views for Data Sharing
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like Authorized Views is a GCP term?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adjusted to Managed Views

objective: |
Implement authorized views to share query results with specific users or groups without granting direct access to the underlying source data, enhancing data security and privacy.
control_family: Identity and Access Management
threats:
- CCC.TH01 # Unauthorized access through elevated privileges
- CCC.DataWar.TH02 # Data Exfiltration via Unauthorized Views
nist_csf: PR.AC-4 # Access permissions are managed with least privilege
control_mappings:
CCM:
- IAM-12 # Identity and Access Management
ISO_27001:
- 2013 A.9.1.2 # Access to networks and network services
NIST_800_53:
- AC-3 # Access Enforcement
- AC-6 # Least Privilege
test_requirements:
- id: CCC.DataWar.C03.TR01
text: |
Ensure that authorized views are used to grant access to query results without exposing underlying data.
tlp_levels:
- tlp_red
- tlp_amber

- id: CCC.DataWar.C04 # Implement Column-Level Security
title: Implement Column-Level Security
objective: |
Apply column-level security policies to enforce fine-grained access control, ensuring users can only access data they are authorized to view, enhancing compliance and data protection.
control_family: Identity and Access Management
threats:
- CCC.TH01 # Unauthorized access through elevated privileges
- CCC.DataWar.TH03 # Exposure of Sensitive Data through Inadequate Column-Level Security
nist_csf: PR.AC-4 # Access permissions are managed with least privilege
control_mappings:
CCM:
- IAM-12 # Identity and Access Management
ISO_27001:
- 2013 A.9.1.2 # Access to networks and network services
NIST_800_53:
- AC-3 # Access Enforcement
- AC-6 # Least Privilege
test_requirements:
- id: CCC.DataWar.C04.TR01
text: |
Verify that column-level security policies are configured and enforced for sensitive columns.
tlp_levels:
- tlp_red
- tlp_amber

- id: CCC.DataWar.C05 # Implement Row-Level Security
title: Implement Row-Level Security
objective: |
Enforce row-level security policies to provide fine-grained access control to subsets of data within tables, ensuring users access only the data pertinent to them.
control_family: Identity and Access Management
threats:
- CCC.TH01 # Unauthorized access through elevated privileges
nist_csf: PR.AC-4 # Access permissions are managed with least privilege
control_mappings:
CCM:
- IAM-12 # Identity and Access Management
ISO_27001:
- 2013 A.9.1.2 # Access to networks and network services
NIST_800_53:
- AC-3 # Access Enforcement
- AC-6 # Least Privilege
test_requirements:
- id: CCC.DataWar.C05.TR01
text: |
Ensure row-level security policies are implemented and correctly restrict access to data rows based on user roles.
tlp_levels:
- tlp_red
- tlp_amber

- id: CCC.DataWar.C06 # Monitor Resource Usage with Admin Resource Charts
title: Monitor Resource Usage with Admin Resource Charts
objective: |
Utilize administrative resource monitoring tools to observe and manage resource utilization, query performance, and slot usage within the Cloud Data Warehouse, ensuring efficient operation and cost management.
control_family: Monitoring and Logging
threats:
- CCC.TH12 # Resource constraints are exhausted
nist_csf: DE.DP-4 # Detection processes are tested
control_mappings:
CCM:
- TVM-02 # Vulnerability Management
ISO_27001:
- 2013 A.12.6.1 # Management of technical vulnerabilities
NIST_800_53:
- SI-2 # Flaw Remediation
test_requirements:
- id: CCC.DataWar.C06.TR01
text: |
Verify that resource monitoring tools (e.g., Admin Resource Charts) are configured and actively monitored for resource utilization and performance metrics.
tlp_levels:
- tlp_green
- tlp_amber
- tlp_red
Loading