Skip to main content

Storage / Object

CCC Object Storage Controls

Version: v2026.11

IDTitleObjectiveControl FamilyThreat MappingsGuideline MappingsAssessment Requirements
CCC.ObjStor.CN01Prevent Requests to Buckets or Objects with Untrusted KMS KeysPrevent any requests to object storage buckets or objects using untrusted KMS keys to protect against unauthorized data encryption, or sensitive data decryption.Encryption434
CCC.ObjStor.CN02Enforce Bucket-Level-Only Access to Prevent Inconsistent PermissionsEnsure that a bucket-level-only access policy is enforced across all object storage buckets. This prevents the use of ad-hoc or inconsistent object-level permissions, ensuring centralized, consistent, and secure access management in accordance with the principle of least privilege.Access Control212
CCC.ObjStor.CN03Prevent Bucket Deletion Through Irrevocable Bucket Retention PolicyEnsure that object storage bucket is not deleted after creation, and that the preventative measure cannot be unset.Data Resilience222
CCC.ObjStor.CN04Apply a Default Retention Policy to All ObjectsEnsure that all objects stored in the object storage system have a retention policy applied by default, preventing premature deletion or modification of objects.Data Resilience222
CCC.ObjStor.CN05Enable Versioning for All Objects in the BucketEnsure that versioning is enabled for all objects stored in the object storage bucket to enable recovery of previous versions of objects in case of loss or corruption.Data Resilience124
CCC.ObjStor.CN07Require Multi-Factor Authentication for Object DeletionEnsure that deletion of objects stored in the object storage system is protected by multi-factor authentication (MFA), reducing the risk of accidental, unauthorized, or compromised-credential–based data destruction.Access Control323
CCC.ObjStor.CN08Enforce Constraints on Pre-Signed URL GenerationEnsure that pre-signed URLs are generated with minimum necessary permissions, limited expiry durations, and auditable generation events to prevent unauthorized access through leaked or overly permissive URLs.Access Control335
CCC.ObjStor.CN09Block Public Access by DefaultEnsure that all buckets and objects are protected from public (unauthenticated or anonymous) access by default, requiring explicit and auditable action to override.Access Control234
CCC.ObjStor.CN10Restrict Storage Class Transitions to Approved TiersEnsure that objects cannot be transitioned to storage classes with lower durability or availability guarantees without explicit authorization, preventing degradation of data resilience through misconfigured lifecycle policies or unauthorized actions.Data Resilience233
CCC.ObjStor.CN11Expire Noncurrent Object VersionsEnsure that superseded and deleted object versions are permanently removed after a bounded period, so that data users consider removed does not remain readable indefinitely.Data Resilience111
CCC.ObjStor.CN12Restrict Cross-Origin Resource Sharing to Approved OriginsEnsure that browsers may only make cross-origin requests to a bucket from web origins the organization has approved. No provider rejects such rules natively, so a policy-as-code check on bucket configuration satisfies these requirements.Access Control112
CCC.ObjStor.CN13Bound the Period of Irrevocable Retention LocksEnsure that an irrevocable retention lock cannot commit the organization to retaining data for longer than its retention policy permits. No provider bounds the period natively, so a policy-as-code check on lock requests satisfies this requirement.Data Resilience111
CCC.ObjStor.CN14Restrict Bucket Access to Organization-Owned AccountsEnsure that requests from within the trust perimeter only reach buckets owned by accounts the organization controls, so that a reclaimed or look-alike bucket name cannot receive or serve the organization's data.Access Control111
CCC.ObjStor.CN15Restrict Bucket Listing to Explicitly Authorized IdentitiesEnsure that the set of object keys and listing metadata in a bucket is disclosed only to identities explicitly granted list permission, since keys and metadata may themselves carry sensitive information.Access Control111

Imports

IDRemarks
CCC.Core.CN01Encrypt Data for Transmission
CCC.Core.CN02Encrypt Data for Storage
CCC.Core.CN03Implement Multi-factor Authentication (MFA) for Access
CCC.Core.CN04Log All Access and Changes
CCC.Core.CN05Prevent Access from Untrusted Entities
CCC.Core.CN06Restrict Deployments to Trust Perimeter
CCC.Core.CN07Alert on Unusual Enumeration Activity
CCC.Core.CN08Replicate Data to Multiple Locations
CCC.Core.CN09Ensure Integrity of Access Logs
CCC.Core.CN10Restrict Data Replication to Trust Perimeter
CCC.Core.CN11Protect Encryption Keys
CCC.Core.CN14Maintain Recent Backups
CCC.Core.CN16Alert on Changes to Protective Configuration