Control types for @turbot/aws-s3
- AWS > S3 > Account > CMDB
- AWS > S3 > Account > Discovery
- AWS > S3 > Account > Public Access Block
- AWS > S3 > Bucket > ACL
- AWS > S3 > Bucket > ACL > Trusted Access
- AWS > S3 > Bucket > Access Logging
- AWS > S3 > Bucket > Active
- AWS > S3 > Bucket > Approved
- AWS > S3 > Bucket > CMDB
- AWS > S3 > Bucket > Configured
- AWS > S3 > Bucket > Discovery
- AWS > S3 > Bucket > Encryption at Rest
- AWS > S3 > Bucket > Encryption in Transit
- AWS > S3 > Bucket > Policy
- AWS > S3 > Bucket > Policy > Trusted Access
- AWS > S3 > Bucket > Policy Statements
- AWS > S3 > Bucket > Policy Statements > Approved
- AWS > S3 > Bucket > Public Access Block
- AWS > S3 > Bucket > Tags
- AWS > S3 > Bucket > Usage
- AWS > S3 > Bucket > Versioning
AWS > S3 > Account > CMDB
Record and synchronize details for the AWS S3 account into the CMDB.\n\nThe CMDB control is responsible for populating and updating all the attributes for that resource type in the Turbot CMDB.\n\nIf set to Skip then all changes to the CMDB are paused - no new resources will be discovered, no updates will be made and deleted resources will not be removed.\n\nTo cleanup resources and stop tracking changes, set this policy to "Enforce: Disabled".\n
AWS > S3 > Account > Discovery
Discover all AWS S3 account resources and add them to the CMDB.\n\nThe Discovery control is responsible for finding resources of a specific type. It periodically searches for new resources and saves them to the CMDB. Once discovered, resources are then responsible for tracking changes to themselves through the CMDB control.\n
AWS > S3 > Account > Public Access Block
Configure the AWS S3 Account Level Public Access Block
AWS > S3 > Bucket > ACL
AWS > S3 > Bucket > ACL > Trusted Access
Take an action when AWS S3 Bucket ACL is not trusted based on the\nAWS > S3 > Bucket > ACL > Trusted Access > *
policies.\n\nThe ACL Trusted Access control
evaluates the Bucket ACL against the list of allowed grantees in the ACL Trusted Access sub-policies\n- ACL > Trusted Access > Canonical IDs\n- ACL > Trusted Access > Groups\n\nThis control raises an alarm and takes the defined enforcement action. If set to Enforce: Revoke untrusted access
, access to non-trusted grantees will be removed.\n
AWS > S3 > Bucket > Access Logging
Define the Access Logging settings required for AWS > S3 > Bucket
.\n\nAWS > S3 > Bucket
provides access logs that capture detailed information\nabout requests sent to your bucket. Each log contains information such as\nthe time the request was received, the client's IP address, latencies,\nrequest paths, and server responses. You can use these access logs to\nanalyze traffic patterns and troubleshoot issues.\n
AWS > S3 > Bucket > Active
Take an action when an AWS S3 bucket is not active based on the\nAWS > S3 > Bucket > Active > *
policies.\n\nThe Active control determines whether the resource is in active use, and if not, has\nthe ability to delete / cleanup the resource. When running an automated compliance\nenvironment, it's common to end up with a wide range of alarms that are difficult\nand time consuming to clear. The Active control brings automated, well-defined\ncontrol to this process.\n\nThe Active control checks the status of all defined Active policies for the\nresource (AWS > S3 > Bucket > Active > *
),\nraises an alarm, and takes the defined enforcement action. Each Active\nsub-policy can calculate a status of active, inactive or skipped. Generally,\nif the resource appears to be Active for any reason it will be considered Active.\n\nNote the contrast with Approved, where if the resource appears to be Unapproved\nfor any reason it will be considered Unapproved.\n\nSee Active for more information.\n
AWS > S3 > Bucket > Approved
Take an action when an AWS S3 bucket is not approved based on AWS > S3 > Bucket > Approved > * policies
.\n\nThe Approved control checks the status of the defined Approved sub-policies for the resource. If the resource is not approved according to any of these policies, this control raises an alarm and takes the defined enforcement action.\n\nFor any enforcement actions that specify if new
, e.g., Enforce: Delete unapproved if new
, this control will only take the enforcement actions for resources created within the last 60 minutes.\n\nSee Approved for more information.\n
AWS > S3 > Bucket > CMDB
Record and synchronize details for the AWS S3 bucket into the CMDB.\n\nThe CMDB control is responsible for populating and updating all the attributes for that resource type in the Turbot CMDB.\n\nIf set to Skip then all changes to the CMDB are paused - no new resources will be discovered, no updates will be made and deleted resources will not be removed.\n\nTo cleanup resources and stop tracking changes, set this policy to "Enforce: Disabled".\n\nCMDB controls also use the Regions policy associated with the resource. If region is not in AWS > S3 > Bucket > Regions
policy, the CMDB control will delete the resource from the CMDB. (Note: Setting CMDB to Skip will also pause these changes.)\n
AWS > S3 > Bucket > Configured
Maintain AWS > S3 > Bucket configuration.\n\nNote: If the resource is managed by another stack, then the Skip/Check/Enforce values here are ignored\nand inherit from the stack that owns it.\n
AWS > S3 > Bucket > Discovery
Discover all AWS S3 bucket resources and add them to the CMDB.\n\nThe Discovery control is responsible for finding resources of a specific type. It periodically searches for new resources and saves them to the CMDB. Once discovered, resources are then responsible for tracking changes to themselves through the CMDB control.\n\nNote that Discovery and CMDB controls also use the Regions policy associated with the resource. If the region is not in AWS > S3 > Bucket > Regions
policy, the CMDB control will delete the resource from the CMDB.\n
AWS > S3 > Bucket > Encryption at Rest
Define the Encryption at Rest settings required for AWS > S3 > Bucket
.\n\nEncryption at Rest refers specifically to the encryption of data when written\nto an underlying storage system. This control determines whether the resource\nis encrypted at rest, and sets encryption to your desired level.\n\nThe Encryption at Rest\ncontrol compares the encryption settings against the encryption policies for the resource\n(AWS > S3 > Bucket > Encryption at Rest > *
),\nraises an alarm, and takes the defined enforcement action.\n
AWS > S3 > Bucket > Encryption in Transit
Define the Encryption in Transit settings required for AWS > S3 > Bucket
.\n\nThe Encryption in Transit control compares the Encryption in Transit settings against the Encryption in Transit policies for the resource\n(AWS > S3 > Bucket > Encryption in Transit), raises an alarm, and takes the defined enforcement action.\n\nThe Encryption in Transit control examines the bucket's policy to find a match for the below statement. An exact match across all statement fields is required for encryption in transit to be considered enabled.\n\n{\n Sid: "MustBeEncryptedInTransit",\n Effect: "Deny",\n Principal: "*",\n Action: "s3:*",\n Resource: ['arn:${partition}:s3:::${bucketName}', 'arn:${partition}:s3:::${bucketName}/*'],\n Condition: {\n Bool: {\n "aws:SecureTransport": "false"\n }\n }\n}\n
\n
AWS > S3 > Bucket > Policy
AWS > S3 > Bucket > Policy > Trusted Access
Take an action when AWS S3 bucket policy is not trusted based on the\nAWS > S3 > Bucket > Policy > Trusted Access > *
policies.\n\nThe Trusted Access control evaluates the bucket policy against the list of allowed\nmembers in each of the Trusted Access sub-policies (Trusted Access > Accounts,\nTrusted Access > Services etc.), this control raises an alarm and takes the\ndefined enforcement action.\n\nThe account that owns the bucket will always be trusted, even if its account ID is\nnot included in the Trusted Accounts policy.\n\nIf set to Enforce: Revoke untrusted access
, access to non-trusted\nmembers will be removed.\n
AWS > S3 > Bucket > Policy Statements
AWS > S3 > Bucket > Policy Statements > Approved
Configure Bucket Policy Statements checking. This control defines whether to\nverify the bucket policy statements are approved, as well as the\nsubsequent action to take on unapproved statements. Rules for all Approved
\npolicies will be compiled in Approved > Compiled Rules
and then\nevaluated.\n\nIf set to Enforce: Delete unapproved
, any unapproved principal will be\nrevoked from the bucket policy.\n
AWS > S3 > Bucket > Public Access Block
Configure the AWS S3 Bucket Level Public Access Block
AWS > S3 > Bucket > Tags
Take an action when an AWS S3 bucket tags is not updated based on the AWS > S3 > Bucket > Tags > * policies
.\n\nIf the resource is not updated with the tags defined in AWS > S3 > Bucket > Tags > Template
, this control raises an alarm and takes the defined enforcement action.\n\nSee Tags for more information.\n
AWS > S3 > Bucket > Usage
The Usage control determines whether the number of AWS S3 bucket resources exceeds the configured usage limit for this account.\n\nYou can configure the behavior of this control with the AWS > S3 > Bucket > Usage
policy, and set the limit with the AWS > S3 > Bucket > Usage > Limit
policy.\n
AWS > S3 > Bucket > Versioning
Check if the AWS S3 bucket Versioning configuration is set correctly.