Checks
Browse individual security checks available in the Prowler Registry. Filter by cloud provider, severity, or search by check ID.
Browse individual security checks available in the Prowler Registry. Filter by cloud provider, severity, or search by check ID.
rbac_minimize_secret_access
RBAC Roles and ClusterRoles granting read permissions to Kubernetes Secrets are identified. The evaluation looks for rules that allow get, list, or watch on secrets, either namespace-scoped or cluster-wide.
rbac_minimize_service_account_token_creation
Cluster-wide RBAC identifies users or groups granted create on serviceaccounts/token via ClusterRoles/ClusterRoleBindings.
Highlights principals allowed to mint service account tokens through the TokenRequest subresource.
rbac_minimize_webhook_config_access
User or group RBAC assignments that grant privileges to create, update, or delete validatingwebhookconfigurations and mutatingwebhookconfigurations are identified.
Focus is on permissions that allow modifying admission webhook configuration objects.
rbac_minimize_wildcard_use_roles
Kubernetes RBAC Roles/ClusterRoles are evaluated for wildcard use in rule resources or verbs. The presence of * means all resources or all actions are granted. This finding highlights roles whose rules include such wildcards.
rds_backup_enabled
Ensure that Huawei Cloud Relational Database Service (RDS) instances have automatic backup enabled to protect against data loss.
rds_cluster_backtrack_enabled
Aurora MySQL DB clusters have Backtrack configured with a non-zero BacktrackWindow, retaining change records to allow rewinding to a consistent earlier time. Applies to aurora-mysql engines only.
rds_cluster_copy_tags_to_snapshots
RDS DB clusters are evaluated for the CopyTagsToSnapshot setting that propagates cluster tags to their DB snapshots.
Aurora tagging is configured at the cluster level; instance-level copying isn't supported.
rds_cluster_critical_event_subscription
RDS event subscriptions for the db-cluster source type are enabled and cover critical cluster event categories: maintenance and failure (or all cluster events).
rds_cluster_default_admin
RDS DB clusters are evaluated for use of a custom administrator username, flagging clusters that use defaults such as admin or postgres.
rds_cluster_deletion_protection
RDS DB clusters have deletion protection enabled (deletion_protection=true).
rds_cluster_iam_authentication_enabled
RDS DB clusters on supported engines (MySQL/MariaDB/PostgreSQL/Aurora) have IAM database authentication enabled for database logins, indicating token-based access managed by IAM instead of static passwords.
rds_cluster_integration_cloudwatch_logs
RDS clusters running Aurora MySQL, Aurora PostgreSQL, MySQL, or PostgreSQL are assessed for CloudWatch Logs publishing, confirming that database logs are exported to a CloudWatch Logs group.
rds_cluster_minor_version_upgrade_enabled
RDS Multi-AZ DB clusters are configured for automatic minor engine upgrades via auto_minor_version_upgrade.
The evaluation checks these clusters to see if this setting is enabled so preferred minor releases are applied during the maintenance window.
rds_cluster_multi_az
RDS DB clusters are assessed for deployment across multiple Availability Zones (Multi-AZ), verifying that redundant instances exist to support automatic failover instead of a single-AZ configuration.
rds_cluster_non_default_port
RDS DB clusters are assessed for use of a non-default database port.
Evaluation focuses on whether the cluster listens on the engine's well-known default port (e.g., 3306, 5432, 1433, 1521, 50000) or on a custom port.
rds_cluster_protected_by_backup_plan
RDS DB clusters are covered by an AWS Backup backup plan when resource assignments include the cluster, either explicitly, by tags, or via an appropriate resource scope.
rds_cluster_storage_encrypted
RDS DB clusters are assessed for encryption at rest via AWS KMS. It determines whether cluster storage-and related artifacts like automated backups and snapshots-are encrypted with a KMS key.
rds_instance_backup_enabled
RDS DB instances are evaluated for automated backups by confirming the backup retention period is greater than 0 days, indicating point-in-time recovery is configured.
rds_instance_certificate_expiration
RDS DB instances are evaluated for server certificate validity windows, including default and customer-managed certificates. Certificates expired or approaching expiration (e.g., <1 month, <3 months, 3-6 months, >6 months) are identified using the certificate valid_till date.
rds_instance_copy_tags_to_snapshots
RDS DB instances are assessed for propagating instance tags to their DB snapshots using CopyTagsToSnapshot.
Aurora engines manage this at the cluster level and aren't evaluated per instance.
rds_instance_critical_event_subscription
RDS event subscriptions for DB instances are assessed for coverage of the critical categories maintenance, configuration change, and failure.
The evaluation looks for enabled db-instance subscriptions and confirms these categories are included or that all events are selected.
rds_instance_default_admin
RDS DB instances are evaluated for use of a custom administrator username. The finding identifies instances or clusters where the admin user matches common defaults like admin or postgres (checked at the instance or cluster level).
rds_instance_deletion_protection
RDS DB instances are assessed for deletion protection. If an instance belongs to an Aurora cluster, the setting is evaluated at the cluster level; otherwise, it is evaluated on the instance itself.
rds_instance_deprecated_engine_version
RDS DB instances use a supported, non-deprecated engine version for MariaDB, MySQL, or PostgreSQL. The instance's engine and engine_version are evaluated against versions currently supported in the region.