Workload Manager 会根据最新的最佳实践检查资源的状态,并帮助您提高在 Google Cloud上运行的工作负载的质量、可靠性和性能。
本文档列出了 Workload Manager 支持用于评估在 Google Cloud上运行的工作负载的最佳实践。如需了解 Workload Manager,请参阅产品概览。
严重级别
运行评估时,Workload Manager 会将资源的当前状态与最佳实践进行比较,从而评估资源。如果资源不符合所选的最佳实践,Workload Manager 会为其分配一个严重程度,以指示资源不合规的程度。 Google Cloud 控制台会使用图标标记每个不合规的资源。下表说明了这些图标、对应的严重程度、当前资源设置可能对工作负载产生的影响,以及有关如何修改资源以遵循最佳实践的建议。| 图标 | 严重级别 | 影响 | 建议 |
|---|---|---|---|
| 严重 | 系统可靠性、意外中断、不受支持的配置 |
尽快解决,以免因意外中断风险较高而影响系统可用性和数据完整性。 |
|
| 高 | 性能衰减、系统稳定性 | 在下一个计划维护窗口期间解决。 | |
| 中 | 性能和支持能力欠佳 | 请尽快解决。 | |
| 低 | 信息性非必要行为 | 虽然无需解决问题,但查看此最佳实践可提供有用的数据洞见。 |
支持的最佳实践
Workload Manager 支持评估以下类型的工作负载,以帮助确保它们遵循 Google Cloud 最佳实践:
- Google Cloud (常规):核心 Google Cloud 服务的最佳实践。
- API 密钥
- Access Transparency
- AlloyDB for PostgreSQL
- Apigee X
- 工件
- BigQuery
- Cloud Bigtable
- Cloud Build
- Cloud DNS
- Cloud Functions
- Cloud Interconnect
- Cloud Key Management Service
- Cloud Load Balancing
- Cloud Pub/Sub
- Cloud Router
- Cloud Run
- Cloud SQL
- Cloud Spanner
- Cloud Storage
- Cloud VPN
- Composer
- Compute Engine
- Dataproc
- Filestore
- Firestore
- Google Kubernetes Engine
- IAM
- Memorystore for Memcache
- Memorystore for Redis
- Memorystore for Redis Cluster
- 操作
- Organization Policy Service
- Resource Manager
- Secret Manager
- Security Command Center
- Sensitive Data Protection
- Gemini Enterprise Agent Platform
- Gemini Enterprise Agent Platform Workbench
- MySQL:MySQL 数据库部署的最佳实践。
- Redis:Redis 部署的最佳实践。
- SAP:SAP 系统的最佳实践。
- SQL Server:SQL Server 数据库部署的最佳实践。
- OpenShift:Red Hat OpenShift 集群的最佳实践。
以下各部分列出了在 Google Cloud上运行的工作负载支持的最佳实践。
共有 627 条最佳实践规则。
按最佳实践划分的规则数量
| 类别 | 规则计数 |
|---|---|
| API 密钥 | 4 |
| Access Transparency | 1 |
| AlloyDB for PostgreSQL | 4 |
| Apigee X | 1 |
| Artifact Registry | 1 |
| BigQuery | 10 |
| Cloud Bigtable | 3 |
| Cloud Build | 1 |
| Cloud DNS | 3 |
| Cloud Functions | 3 |
| Cloud Key Management Service | 14 |
| Cloud Load Balancing | 4 |
| Cloud Logging | 3 |
| Cloud Pub/Sub | 7 |
| Cloud Router | 6 |
| Cloud Run | 3 |
| Cloud SQL | 35 |
| Cloud Spanner | 6 |
| Cloud Storage | 20 |
| Cloud VPN | 4 |
| Composer | 1 |
| Compute Engine | 95 |
| Dataproc | 2 |
| Filestore | 5 |
| Firestore | 1 |
| Gemini Enterprise Agent Platform | 18 |
| Gemini Enterprise Agent Platform Workbench | 11 |
| Google Kubernetes Engine | 55 |
| IAM | 75 |
| Memorystore for Memcache | 2 |
| Memorystore for Redis | 8 |
| Memorystore for Redis Cluster | 3 |
| NetApp Volumes | 1 |
| 网络 | 5 |
| Organization Policy Service | 58 |
| Resource Manager | 3 |
| SecOps | 1 |
| Secret Manager | 2 |
| Security Command Center | 1 |
| 敏感数据保护 | 1 |
| MySQL:常规 | 7 |
| OpenShift:费用优化 | 1 |
| OpenShift:运营效率 | 6 |
| OpenShift:可靠性 | 5 |
| OpenShift:安全性 | 6 |
| Redis:常规 | 7 |
| SAP:常规 | 14 |
| SAP:HANA | 10 |
| SAP:HANA Insights | 18 |
| SAP:HANA 安全最佳实践 | 19 |
| SAP:高可用性 | 33 |
| SAP:NetWeaver | 3 |
| SQL Server:费用优化 | 2 |
| SQL Server:故障切换集群 | 2 |
| SQL Server:性能 | 10 |
| SQL Server:稳定性 | 3 |
| 总计 | 627 |
最佳实践会添加标记,以帮助您确定其重点领域:
- 可靠性、安全性和 FinOps 规则会映射到 Google Cloud Well-Architected Framework 的支柱。
- CSPR:云安全状况审核。
- MVSP:Minimal Viable Security Posture(最低可行安全态势)。
选择一个或多个规则类别,以过滤以下列表。
Google Cloud 最佳实践 - API 密钥(4 项结果)
-
API 密钥无限制
严重程度:媒介
标签:IAM、API 密钥、安全性、CSPR、CoNa资源:apikeys.googleapis.com/Key详情 验证是否已对所有 API 密钥应用限制,以防止滥用行为,避免导致安全漏洞、未经授权的数据访问权限和意外费用。 -
API 密钥无服务限制
严重程度:媒介
标签:IAM、API 密钥、安全性、CSPR、CoNa资源:apikeys.googleapis.com/Key详情 确保 API 密钥仅限于特定服务,防止潜在的滥用行为,以免导致未经授权的 API 激活、安全漏洞和意外费用。 -
API 密钥已超过 90 天
严重程度:低
标签:IAM、API 密钥、安全性、CSPR资源:apikeys.googleapis.com/Key详情 强制执行 90 天的 API 密钥轮替政策,以最大限度地降低因凭据丢失、泄露或遭破解而造成的安全风险。 -
API 密钥
严重程度:媒介
标签:IAM、API 密钥、安全性、CSPR资源:apikeys.googleapis.com/Key详情 标记任何 API 密钥的存在,以鼓励使用更安全的身份验证方法(例如服务账号),从而降低与静态长期有效凭据相关的风险。
Google Cloud 最佳实践 - Access Transparency(1 条结果)
-
组织访问透明度已启用
严重程度:媒介
标记:Access Transparency、serviceusage、安全性、合规性资源:serviceusage.googleapis.com/Service详情 检查 Access Transparency 服务是否已启用。Access Transparency 可为您提供有关 Google 员工在访问您的内容时所执行操作的日志。
Google Cloud 最佳实践 - AlloyDB for PostgreSQL(4 项结果)
-
Alloy 集群未启用自动备份
严重程度:媒介
标签:AlloyDB、备份、可靠性、费用、BCDR、数据保护、CSPR资源:alloydb.googleapis.com/Cluster详情 验证 AlloyDB 集群是否已启用自动备份政策,确保关键数据受到保护,不会丢失,并且可以快速恢复,从而保持业务连续性和服务可靠性。 -
Alloy 集群未启用持续备份
严重程度:媒介
标签:AlloyDB、备份、BCDR、数据保护、可靠性、费用、CSPR资源:alloydb.googleapis.com/Cluster详情 验证 AlloyDB 集群是否已启用持续备份,从而提供关键的时间点恢复 (PITR) 功能,以防数据丢失并确保业务连续性。 -
Alloy 集群维护政策
严重程度:高
标签:可靠性、运营、BCDR、CSPR资源:alloydb.googleapis.com/Cluster详情 验证 AlloyDB 集群是否已定义维护更新政策。通过定义维护政策,组织可以在非高峰时段安排更新,以最大限度地减少中断。如果未设置此政策,则表示采用默认时间,这可能会与关键运营期重合。 -
Alloy 实例公共 IP
严重程度:高
标签:AlloyDB、安全性、网络、CSPR资源:alloydb.googleapis.com/Instance详情 检查 AlloyDB 实例是否已启用公共 IP。公共 IP 地址会将实例暴露在互联网上,从而扩大受攻击面。建议改用专用 IP。
Google Cloud 最佳实践 - Apigee X(1 项结果)
-
Apigee 多区域实例
严重程度:高
标签:可靠性、API、Apigee、高可用性、BCDR、CoNa资源:apigee_Organization_RESOURCE_INSTANCE详情 验证 Apigee X 组织是否在至少 2 个不同的区域中部署了 Apigee 实例。多区域 Apigee 部署可确保 API 网关冗余、低延迟,并防范区域性服务中断。
Google Cloud 最佳实践 - Artifact Registry(1 项结果)
-
Artifact Registry 多区域
严重程度:高
标签:可靠性、可用性、BCDR资源:artifactregistry.googleapis.com/Repository详情 验证 Artifact Registry 代码库是否已配置为使用多区域位置(例如 us、europe、asia)。使用多区域位置可确保制品在多个地理区域之间复制,从而显著提高可用性并增强针对区域性服务中断的恢复能力。
Google Cloud 最佳实践 - BigQuery(10 条结果)
-
BigQuery 数据集 CMEK 已停用
严重程度:媒介
标签:BigQuery、数据集、加密、CMEK、安全性、CSPR资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否使用 Cloud KMS 中的客户管理的加密密钥 (CMEK) 进行加密。虽然 BigQuery 默认使用 Google 管理的密钥对静态数据进行加密,但 CMEK 可提供对密钥管理(包括轮换、访问权限控制和审核日志记录)的更精细控制。此规则会检查数据集配置中的 defaultEncryptionConfiguration 字段。如果缺少此字段,或者此字段存在但缺少 kmsKeyName 属性,则会触发违规。缺少 defaultEncryptionConfiguration 或 kmsKeyName 表示数据集未采用 CMEK 进行加密,这可能会影响合规性和安全性。 -
BigQuery 数据集缺少标签
严重程度:低
标签:BigQuery、数据集、标签、组织、FinOps、管理、CSPR资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否已应用标签。标签是用户定义的键值对,可帮助整理和管理 Google Cloud 中的资源。它们可用于过滤、分组和生成费用报告。此规则会检查数据集中是否存在标签字段。如果缺少或为空,则会触发违规。 -
BigQuery 数据集缺少资源标记
严重程度:低
标记:BigQuery、数据集、标记、组织、管理、访问控制、FinOps、CSPR、CoNa、MVSP资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否已应用资源标记。资源标记是通过 Resource Manager 管理的键值对。它们可用于更广泛的组织用途,包括与其他 Google Cloud 服务和外部系统集成(例如,通过标记绑定进行访问权限控制)。此规则会检查是否存在 resourceTags 字段。如果缺少或为空,则会生成违规情况。 -
BigQuery 数据集多区域
严重程度:高
标签:可靠性、BigQuery、多区域、高可用性、BCDR资源:bigquery.googleapis.com/Dataset详情 验证 BigQuery 数据集是否配置为使用多区域位置(例如“美国”或“欧盟”),以确保跨区域实现高弹性和数据冗余。区域数据集(带有连字符的配置)不符合此标准。 -
BigQuery 数据集公开
严重程度:高
标签:BigQuery、数据集、安全性、隐私权、费用、可靠性、CSPR资源:bigquery.googleapis.com/Dataset详情 检查 BigQuery 数据集是否未公开。公开暴露的数据集可能会导致意外的数据泄露和潜在的隐私权侵犯。BigQuery 通过 IAM 角色提供精细的访问权限控制,数据集应仅限授权用户和服务账号访问。此规则会检查数据集的访问权限控制列表中是否存在 allUsers 或 allAuthenticatedUsers,如果存在,则表示授予了公开访问权限。如果缺少这些条目,则表示相应数据集无法公开访问。 -
BigQuery 表 CMEK
严重程度:媒介
标签:BigQuery、表、加密、CMEK、KMS、安全性、合规性、CSPR资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否使用 Cloud KMS 中的客户管理的加密密钥 (CMEK) 进行加密。默认情况下,BigQuery 会使用 Google 管理的密钥对静态数据进行加密。CMEK 可让组织更精细地控制加密密钥,从而管理密钥轮替、访问和审核。此规则会检查表配置中的 encryptionConfiguration 字段。如果此字段缺失,或者存在但不包含 kmsKeyName,则表示相应表未使用 CMEK 进行加密。 -
BigQuery 表过期
严重程度:低
标签:BigQuery、表、过期、DataLifecycle、费用优化、数据治理、CSPR资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否已设置失效时间。为表设置过期时间是管理数据生命周期和控制存储费用的最佳实践,对于临时表或过渡表尤其如此。此规则会检查表格配置中的 expirationTime 字段。如果 expirationTime 为 null(或缺失,在 Rego 中以相同方式处理),则表示未设置表的过期时间,系统会生成违规情况。明确的过期时间是数据治理的一项良好实践。 -
BigQuery 表缺少标签
严重程度:低
标签:BigQuery、表、标签、组织、FinOps、管理、CSPR资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否已应用标签。标签是用户定义的键值对,可帮助整理和管理 Google Cloud 中的资源。它们可用于过滤、分组和生成费用报告。此规则会检查表中是否存在 labels 字段。如果缺少或为空,则会触发违规。 -
BigQuery 表缺少资源标记
严重程度:低
标签:BigQuery、表、标签、组织、管理、访问控制、FinOps、CSPR、CoNa、MVSP资源:bigquery.googleapis.com/Table详情 检查 BigQuery 表是否已应用资源标记。资源标记是通过 Resource Manager 管理的键值对。它们可用于更广泛的组织用途,包括与其他 Google Cloud 服务和外部系统集成(例如,通过标记绑定进行访问权限控制)。此规则会检查是否存在 resourceTags 字段。如果缺少 resourceTags 字段或该字段为空,系统会生成违规提示。 -
BigQuery 表分区
严重程度:低
标签:BigQuery、表、分区、过期、DataLifecycle、成本优化、时间分区、CSPR资源:bigquery.googleapis.com/Table详情 检查时间分区 BigQuery 表是否已设置分区过期时间。分区过期功能会自动删除早于指定时长的分区。这对于管理存储费用和数据生命周期至关重要,尤其对于大型时序数据集。此规则会检查 timePartitioning 字段,特别是 timePartitioning 中的 expirationMs 字段。如果缺少 timePartitioning 或 expirationMs,或者 expirationMs 不是正整数,则表示分区过期时间配置不正确,系统会生成违规情况。
Google Cloud 最佳实践 - Cloud Bigtable(3 项结果)
-
Bigtable 集群冗余
严重程度:高
标签:可靠性、数据库、Bigtable、高可用性、BCDR资源:bigtableadmin_Instance_RESOURCE_CLUSTER详情 验证 Bigtable 实例是否在 3 个或更多不同区域中部署了集群。多区域集群冗余可确保 99.999% 的可用性、强大的灾难恢复能力,并为全球分布式应用提供低延迟访问。 -
已启用 Bigtable 实例复制
严重程度:高
标签:可靠性、数据库、Bigtable、复制、高可用性资源:bigtableadmin_Instance_RESOURCE_CLUSTER详情 通过确保 Bigtable 实例在至少 2 个不同的可用区或区域中部署了集群,来验证这些实例是否已启用复制功能。复制对于实现高可用性、故障切换和灾难恢复至关重要。 -
Bigtable 配置文件多集群路由
严重程度:高
标签:可靠性、高可用性、BCDR、Bigtable资源:bigtableadmin.googleapis.com/AppProfile详情 验证 Bigtable 应用配置文件是否使用 multi_cluster_routing_use_any 来启用自动故障切换并确保高可用性。使用单集群路由会造成单点故障,如果特定集群变得不可用,可能会导致服务中断。
Google Cloud 最佳实践 - Cloud Build(1 项结果)
-
Cloudbuild 池冗余
严重程度:媒介
标签:可靠性、安全性、CloudBuild、高可用性、BCDR资源:cloudresourcemanager_Project_RESOURCE_WORKERPOOL详情 验证 Cloud Build 专用工作器池是否部署在至少 2 个不同的区域中。在多个区域中部署专用工作器池可确保在区域级 build 服务发生中断时,CI/CD 工作流能够进行故障切换。
Google Cloud 最佳实践 - Cloud DNS(3 项结果)
-
DNS 政策日志记录
严重程度:媒介
标签:DNS、政策、日志记录、安全性、审核、VPC、CSPR、CoNa、MVSP资源:dns.googleapis.com/Policy详情 检查是否已为 Cloud DNS 政策启用日志记录。DNS 政策用于定义 DNS 解析行为的规则,通常用于出站转发或专用 DNS 查找。启用日志记录功能后,系统会记录政策处理的查询,这对于安全审核和排查 VPC 网络中的 DNS 解析问题至关重要。此规则会检查 DNS 政策配置中的 enableLogging 字段。如果缺少 enableLogging 或其值为 false,则会生成违规。 -
DNS 区域公共 DNSSEC
严重程度:高
标签:DNS、DNSSEC、安全性、ManagedZone、Public、CSPR、CoNa资源:dns.googleapis.com/ManagedZone详情 检查 Cloud DNS 中是否为公开的代管式可用区启用了 DNSSEC(域名系统安全扩展)。DNSSEC 通过对 DNS 记录进行数字签名来增加一层安全性,从而防止 DNS 欺骗和缓存中毒攻击。此规则会检查受管区域配置中的 dnssecConfig 字段。如果缺少 dnssecConfig,或者其状态为“关闭”或缺失,则表示 DNSSEC 未启用。如果未为公共可用区启用 DNSSEC,系统会生成违规情况。此规则会进行过滤,仅影响公开的受管地区。 -
DNS 区域公共日志记录
严重程度:媒介
标签:DNS、ManagedZone、日志记录、安全性、审核、公开、CSPR、CoNa、MVSP资源:dns.googleapis.com/ManagedZone详情 检查是否为公开 Cloud DNS 代管式可用区启用了日志记录。启用 DNS 日志记录功能后,系统会记录地区域名服务器收到的查询,这对于安全审核、问题排查和合规性至关重要。此规则会检查受管区域配置中的 loggingConfig 字段。如果区域的公开范围为“公开”,并且缺少 loggingConfig 或 loggingConfig.enableLogging,或者 loggingConfig.enableLogging 为 false,则会生成违规情况。
Google Cloud 最佳实践 - Cloud Functions(3 项结果)
-
Cloud Functions 入口 GCLB
严重程度:高
标记:可靠性、安全性、网络、高可用性资源:cloudfunctions.googleapis.com/Function详情 验证 Cloud Functions 是否已配置为 ALLOW_INTERNAL_AND_GCLB 的入站流量设置。此设置会限制对内部流量和 Google Cloud 负载均衡的访问,这是使用全球外部负载平衡器实现多区域高可用性并防止直接公开访问的必要条件。 -
函数实例数下限
严重程度:媒介
代码:可靠性、性能、无服务器资源:cloudfunctions.googleapis.com/Function详情 确保 Cloud Functions 的 minInstances 设置配置为大于 0 的值。此配置可防止冷启动,确保实例始终处于预热状态并随时可以运行,从而在流量高峰期间保持性能稳定并缩短延迟时间。 -
项目多区域函数
严重程度:高
标签:可靠性、无服务器、Cloud Functions、高可用性、BCDR资源:cloudresourcemanager_Project_RESOURCE_FUNCTION详情 验证项目是否已在至少 2 个不同区域中部署 Cloud Functions。多区域 Cloud Function 部署可确保无服务器应用的冗余,并在发生区域性服务中断时确保无缝故障切换。
Google Cloud 最佳实践 - Cloud Key Management Service(14 条结果)
-
Cloud KMS 加密密钥保护级别 hsm
严重程度:媒介
标签:KMS、CryptoKey、安全性、HSM、ProtectionLevel、加密、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查 Cloud KMS CryptoKeys 保护级别是否设置为 HSM。protectionLevel 决定了加密操作的执行位置。HSM 表示这些操作是在硬件安全模块中进行的。HSM 可提供更高级别的安全性。此规则会检查 versionTemplate.protectionLevel 字段。如果 protectionLevel 为 HSM,则生成违规情况。虽然在某些使用场景中,SOFTWARE 保护级别可以接受,但对于安全性要求较高的场景,我们通常建议使用 HSM。 -
Cloud KMS 加密密钥保护级别软件
严重程度:媒介
标签:KMS、CryptoKey、安全性、HSM、ProtectionLevel、加密、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查 Cloud KMS CryptoKeys 保护级别是否设置为 SOFTWARE。protectionLevel 决定了加密操作的执行位置。SOFTWARE 表示操作在软件中进行,而 HSM 表示操作在硬件安全模块中进行。HSM 可提供更高级别的安全性。此规则会检查 versionTemplate.protectionLevel 字段。如果 protectionLevel 为 SOFTWARE,则会生成违规情况。虽然在某些使用场景中,SOFTWARE 保护级别可以接受,但对于安全性要求较高的场景,我们通常建议使用 HSM。 -
Cloud KMS 加密密钥对称轮替
严重程度:高
标签:KMS、CryptoKey、轮替、安全性、加密、对称、KeyRotation、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查是否已为具有 GOOGLE_SYMMETRIC_ENCRYPTION 算法且处于 ENABLED 状态的 Cloud KMS CryptoKey 配置密钥轮替。定期轮替密钥是一项关键的安全最佳实践。此规则会验证以下内容:1. 密钥状态为 ENABLED。2. 用途:密钥的用途为 ENCRYPT_DECRYPT。3. versionTemplate.algorithm 算法为 GOOGLE_SYMMETRIC_ENCRYPTION。4. rotationPeriod 或 nextRotationTime 如果缺少这两个字段中的任何一个,则表示未配置轮替,系统会生成违规情况。如果密钥遭到入侵,不轮换密钥会显著增加风险。 -
Cloud KMS EKM 连接冗余解析器
严重程度:高
标签:可靠性、安全性、KMS、ExternalKey、高可用性资源:cloudkms.googleapis.com/EkmConnection详情 确保外部密钥管理器 (EKM) 连接具有冗余的服务解析器,以防止在端点中断期间发生加密操作失败。 -
Cloud KMS 密钥文件夹公开暴露
严重程度:高
标签:IAM、Compute Engine、映像、安全性、CSPR、CoNa资源:cloudresourcemanager.googleapis.com/Folder详情 检测文件夹中公开的 KMS 密钥,以防止未经授权的访问和敏感数据解密,从而保护您的关键信息资产并降低违规风险。 -
Cloud KMS 密钥组织公开暴露
严重程度:高
标签:IAM、Compute Engine、映像、安全性、CSPR、CoNa资源:cloudresourcemanager.googleapis.com/Organization详情 通过 IAM 政策确保组织的 KMS 加密密钥不会公开泄露,从而保护敏感数据免遭未经授权的访问,并防止代价高昂的数据泄露。 -
Cloud KMS 密钥项目公开暴露
严重程度:高
标签:IAM、Compute Engine、映像、安全性、CSPR、CoNa资源:cloudresourcemanager.googleapis.com/Project详情 通过防止公开 KMS 密钥,确保关键数据安全并保持合规性。这会将加密操作限制为仅限授权身份,从而降低未经授权的访问和数据泄露风险。 -
Cloud KMS 密钥公开暴露
严重程度:高
标签:IAM、Compute Engine、映像、安全性、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 此规则可识别公开暴露的 KMS 密钥,防止未经授权的数据解密,从而保护敏感信息、确保数据完整性并避免代价高昂的违规行为。 -
Cloud KMS 密钥用途对称
严重程度:低
标签:KMS、CryptoKey、安全性、加密、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查 Cloud KMS CryptoKey 的用途是否设置为 ENCRYPT_DECRYPT。虽然 KMS 支持其他用途(例如非对称签名或解密),但此规则强制将对称加密密钥作为基准。如果特定工作负载需要非对称密钥,此规则可能会生成误报,应相应地调整范围。 -
Cloud KMS 密钥环公开暴露
严重程度:高
标签:IAM、Compute Engine、映像、安全性、CSPR、CoNa资源:cloudkms.googleapis.com/KeyRing详情 确保 KMS 密钥环 IAM 政策不授予公开权限,从而防止未经授权访问敏感的加密数据,进而保障数据机密性和完整性。 -
Cloud KMS 密钥轮替已停用
严重程度:媒介
标签:KMS、密钥轮换、安全性、加密、合规性、可靠性、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查 Google Cloud Key Management Service (KMS) 密钥是否已启用自动密钥轮替。定期轮替密钥是一项至关重要的安全最佳实践,可限制密钥泄露的潜在影响。如果密钥被破解,轮替可以限制攻击者使用该密钥的时间。此规则会标记未启用轮替的 KMS 密钥。通常,较短的轮换周期有助于提高安全性。 -
Cloud KMS 密钥轮替已启用(1 年)
严重程度:媒介
标签:KMS、密钥轮换、安全性、加密、合规性、可靠性、CSPR、CoNa资源:cloudkms.googleapis.com/CryptoKey详情 检查 Google Cloud Key Management Service (KMS) 密钥是否启用了自动密钥轮替,以及轮替周期是否在可接受的限值范围内(不超过 365 天)。定期轮替密钥是一项至关重要的安全最佳实践,可限制密钥泄露的潜在影响。如果密钥被破解,轮替可以限制攻击者使用该密钥的时间。此规则会标记未启用轮替或轮替周期超过 365 天的 KMS 密钥。通常,较短的轮换周期有助于提高安全性。 -
Cloud KMS 密钥环多区域
严重程度:高
标签:可靠性、BCDR、可用性、恢复能力资源:cloudkms.googleapis.com/KeyRing详情 验证 Cloud KMS KeyRing 是否配置为多区域或全球可用,以最大限度地提高针对区域性中断的恢复能力。存储在单个区域中的密钥不会跨多个地理区域复制,因此在区域事件期间会形成单点故障。 -
Cloud KMS Owner 角色
严重程度:媒介
标签:KMS、安全、CSPR资源:cloudkms_CryptoKey_RESOURCE_IAM_POLICY_1详情 限制 KMS 项目中权限过高的“所有者”角色可防止加密密钥遭受意外或恶意操作,从而提高数据安全性和运营稳定性。
Google Cloud 最佳实践 - Cloud Load Balancing(4 项结果)
-
计算转发规则网络层级
严重程度:高
标记:可靠性、网络、负载均衡、NetworkTier、性能资源:compute.googleapis.com/ForwardingRule详情 验证转发规则(由负载平衡器使用)是否配置为使用优质网络层级。高级层级路由通过 Google 的高速全球网络骨干网(而非公共互联网)发送流量,可确保最高可靠性、低延迟和 SLA 保证。 -
计算区域级后端服务可用区分布
严重程度:高
标记:可靠性、网络、负载均衡、高可用性资源:compute.googleapis.com/RegionBackendService详情 验证区域级后端服务(由内部负载平衡器使用)的后端是否分布在区域内的至少 2 个不同可用区中。多可用区后端分布可确保在可用区服务中断期间实现高可用性和故障切换功能。 -
Glb 后端分布
严重程度:高
标记:可靠性、网络、负载均衡、高可用性、BCDR资源:compute_BackendService_RESOURCE_RELATIONSHIP详情 验证全球负载均衡后端是否分布在至少 2 个区域和 2 个可用区中。多区域和多可用区后端分布可确保在发生区域性或可用区服务中断时实现高可用性、容错能力和无缝故障切换。 -
已启用目标池健康检查
严重程度:高
标记:可靠性、网络、负载均衡、高可用性资源:compute.googleapis.com/TargetPool详情 确保目标池(网络负载平衡器)已启用健康检查,以防止将流量路由到健康状况不佳的虚拟机后端。
Google Cloud 最佳实践 - Cloud Logging(3 条结果)
-
日志接收器
严重程度:媒介
标签:日志记录、安全性、合规性、CSPR、MVSP资源:cloudresourcemanager_Project_RESOURCE_5详情 标记在任何文件夹/组织/项目级层都没有配置有效日志接收器的 Google Cloud 项目。 -
日志记录存储桶多区域
严重程度:媒介
标签:可靠性、安全性、日志记录、高可用性、BCDR资源:logging.googleapis.com/LogBucket详情 验证 Cloud Logging 存储分区是否配置在多区域或全球位置(例如“global”“us”“eu”),以确保高可用性和弹性,从而应对区域性服务中断故障。如果区域发生服务中断,区域日志存储分区中的数据可能会丢失。 -
日志记录接收器未在文件夹或组织级层进行聚合
严重程度:媒介
标记:日志记录、安全性、CSPR资源:logging.googleapis.com/LogSink详情 用于标识未配置为聚合的文件夹级或组织级日志接收器。在文件夹/组织级层,汇总接收器对于集中来自所有子项目和资源的日志以进行安全审核和运维至关重要。
Google Cloud 最佳实践 - Cloud Pub/Sub(7 条结果)
-
Pub/Sub 指数退避算法
严重程度:高
标记:Pub/Sub、订阅、可靠性、弹性、CSPR资源:pubsub.googleapis.com/Subscription详情 通过检查是否存在 retryPolicy、minimumBackoff 和 maximumBackoff 设置,验证 Pub/Sub 订阅是否配置了指数退避算法重试政策。实现指数退避算法对于系统稳定性至关重要,因为它可以防止订阅方故障导致立即出现无序的重试风暴,从而在暂时性中断期间使消息传递系统不堪重负。 -
Pub/Sub 订阅死信主题已配置
严重程度:媒介
标记:可靠性、消息传递、灾难恢复、弹性资源:pubsub.googleapis.com/Subscription详情 确保 Pub/Sub 订阅配置了死信主题,以隔离无法处理的消息并防止数据流阻塞。 -
Pub/Sub 订阅死信
严重程度:媒介
标签:Pub/Sub、订阅、DeadLetter、可靠性、消息传递、错误处理、CSPR资源:pubsub.googleapis.com/Subscription详情 检查 Pub/Sub 订阅是否已配置死信主题。死信主题 (DLT) 对于处理消息传送失败至关重要。如果经过多次尝试后仍无法将消息传送给订阅者,则可将消息发送到 DLT,以防止消息丢失并分析传送问题。此规则会检查订阅配置中的 deadLetterPolicy 字段。如果缺少 deadLetterPolicy,或者存在 deadLetterPolicy 但没有 deadLetterTopic 字段,则该规则会生成违规情况。使用 DLT 是可靠处理消息的最佳实践。 -
配置的 Pub/Sub 订阅重试政策
严重程度:媒介
标记:可靠性、消息传递、恢复能力资源:pubsub.googleapis.com/Subscription详情 确保 Pub/Sub 订阅配置了具有指数退避算法的自定义重试政策,以便妥善处理暂时性故障。 -
Pub/Sub 主题消息保留
严重程度:高
标记:可靠性、数据保护、Pub/Sub、CoNa资源:pubsub.googleapis.com/Topic详情 验证 Pub/Sub 主题是否已配置消息保留时长。消息保留可确保消息在指定期限内持久存在,即使订阅者暂时不可用,或需要进行历史重放,也能保证消息可用。 -
Pub/Sub 主题消息 Cloud Storage 政策
严重程度:媒介
标签:可靠性、安全性、Pub/Sub、数据留存位置、合规性、CoNa资源:pubsub.googleapis.com/Topic详情 验证 Pub/Sub 主题是否配置了消息存储政策,该政策将消息持久性限制为特定区域。将消息存储限制在经过认证的区域内,可防止违规并确保满足数据驻留要求。 -
Pub/Sub 主题架构
严重程度:媒介
标签:PubSub、消息传递、架构、数据治理、可靠性资源:pubsub.googleapis.com/Topic详情 检查 Pub/Sub 主题是否已配置架构。强制执行架构可确保数据质量,并防止格式错误的消息破坏下游消费者。
Google Cloud 最佳实践 - Cloud Router(6 项结果)
-
Compute 路由器通告所有子网
严重程度:媒介
标签:可靠性、网络、Cloud Router、路由资源:compute.googleapis.com/Router详情 验证 Cloud Router 是否配置为通告所有子网(使用 DEFAULT 通告模式或使用 ALL_SUBNETS 组的 CUSTOM 模式)。这样可确保新子网自动通告到本地网络,从而防止出现连接中断的情况。 -
Compute 路由器 BFD 已启用
严重程度:高
标记:可靠性、网络、BGP、BFD、高可用性资源:compute.googleapis.com/Router详情 验证是否在 Cloud Router 的所有 BGP 对等端上启用了双向转发检测 (BFD)。BFD 提供亚秒级链路故障检测,以确保快速 BGP 故障切换和高可用性。 -
Compute 路由器 BGP keepalive
严重程度:媒介
标记:可靠性、网络、BGP、Keepalive、高可用性资源:compute.googleapis.com/Router详情 验证 Cloud Router 上的 BGP 保持活动状态计时器是否配置为正好 20 秒。20 秒的 keepalive 时间间隔可确保及时检测到对等互联故障,并实现可预测的 BGP 收敛。 -
Compute 路由器 BGP 对等方冗余
严重程度:高
标签:可靠性、网络、Cloud Router、BGP、冗余资源:compute.googleapis.com/Router详情 验证 Cloud Router 路由器是否至少配置了 2 个 BGP 对等体。冗余 BGP 会话可确保高可用性,并防止在维护或网络故障期间出现路由中断。 -
项目多区域路由器
严重程度:高
标签:可靠性、网络、路由器、高可用性、BCDR资源:cloudresourcemanager_Project_RESOURCE_ROUTER详情 验证项目是否在至少 2 个不同的区域中部署了 Cloud Router。多区域 Cloud Router 部署可确保混合网络冗余(VPN、Interconnect、NAT),并防范区域性中断。 -
项目区域级路由器的冗余
严重程度:高
标记:可靠性、网络、Cloud Router、冗余、高可用性资源:cloudresourcemanager_Project_RESOURCE_ROUTER详情 验证在项目中部署 Cloud Router 的每个区域中,是否至少配置了 2 个 Cloud Router。区域路由器冗余可确保混合连接 (VPN/Interconnect) 的高可用性,并防止出现单点故障。
Google Cloud 最佳实践 - Cloud Run(3 项结果)
-
运行全球负载均衡器入站流量
严重程度:高
标签:可靠性、高可用性、网络、Cloud Run资源:run.googleapis.com/Service详情 确保 Cloud Run 服务配置为仅接受来自内部来源和 Cloud Load Balancing 的流量。此限制会强制流量通过全球外部负载平衡器,这是实现多区域架构的高可用性、容错能力和优化延迟时间的前提条件。 -
运行服务实例数下限
严重程度:高
标签:可靠性、延迟时间、无服务器、Cloud Run资源:run.googleapis.com/Service详情 确保 Cloud Run 服务配置的实例数下限大于零。此配置对于延迟时间敏感型应用至关重要,可防止冷启动并保持即时可用性。当 autoscaling.knative.dev/minScale 注解缺失(默认为 0)或显式设置为 0 时,就会出现此问题。 -
运行服务,无 VPC 出站流量
严重程度:媒介
标签:CloudRun、无服务器、VPC、网络、安全性、出站流量、CSPR、CoNa、MVSP资源:run.googleapis.com/Service详情 验证 Cloud Run 服务是否已配置为使用无服务器 VPC 访问通道来处理出站流量。通过 VPC 连接器路由出站流量可让 Cloud Run 服务安全地访问内部资源,并且可用于通过 Cloud NAT 路由流量以获取静态出站 IP。如果缺少 run.googleapis.com/vpc-access-connector 注解,则会发生违规行为。
Google Cloud 最佳实践 - Cloud SQL(35 条结果)
-
Cloudsql 备份多区域
严重程度:媒介
标记:可靠性、备份资源:sqladmin.googleapis.com/Instance详情 验证 Cloud SQL 实例备份是否已配置为多区域存储。默认情况下,备份存储在实例所在的同一区域中,这无法防范区域性中断。配置多区域存储可确保在此类事件发生期间数据可用且业务连续。 -
Cloudsql 实例 CA 证书无效
严重程度:高
标签:CloudSQL、安全性、证书、过期、可靠性、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL 实例的证书授权机构 (CA) 证书的到期状态。定期轮替 CA 证书并确保它们未过期是一项关键的安全最佳实践。过期的 CA 证书可能会中断客户端与数据库的连接,导致应用停机。此规则会检查两项关键内容:1. 如果实例存在 CA 证书(表明可能已配置 SSL/TLS,建议这样做)。2. 如果现有 CA 证书的到期时间 (expirationTime) 是未来的时间。如果未找到任何 CA 证书,或者找到的证书已过期(其 expirationTime 位于过去),则会生成违规情况。该规则使用当前时间(通过 time.now_ns() 获取)执行过期检查。时间会转换为自纪元以来的秒数,以便进行比较。 -
Cloudsql 实例防删除保护
严重程度:高
标签:数据库、安全性、可靠性、数据保护、CSPR、CoNa资源:sqladmin.googleapis.com/Instance详情 验证 Cloud SQL 实例是否已启用删除防护,以防止意外删除和潜在的数据丢失。如果将 settings.deletionProtectionEnabled 设置为 false 或未进行配置,数据库很容易因人为错误或自动化脚本而立即被移除。 -
Cloudsql 实例维护窗口
严重程度:高
标签:可靠性、运营、维护、BCDR资源:sqladmin.googleapis.com/Instance详情 验证 Cloud SQL 实例是否已配置维护窗口,确保系统更新安排在非高峰时段进行,以最大限度地减少对业务的影响并防止意外停机。 -
Cloudsql 实例 PITR 已停用
严重程度:媒介
标签:CloudSQL、实例、备份、PITR、恢复、可靠性、数据保护、CSPR资源:sqladmin.googleapis.com/Instance详情 验证 Cloud SQL 实例是否已启用时间点恢复 (PITR)。借助 PITR,您可以将数据库恢复到特定时间点,从而提供关键的数据恢复功能。此规则直接检查 backupConfiguration 中的 pointInTimeRecoveryEnabled 设置。如果 pointInTimeRecoveryEnabled 为 false 或不存在,则表示未启用 PITR。 -
Cloud SQL 实例 Cloud Storage 自动调整大小
严重程度:媒介
标签:CloudSQL、实例、存储空间、自动调整大小、可靠性、可用性、性能、费用、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL 实例是否已启用自动调整存储空间大小功能。启用 storageAutoResize 后,实例存储容量会根据需要自动增加,从而避免潜在的存储空间不足错误和停机时间。如果不自动调整大小,实例在存储空间不足时可能会变得不可用。此规则会检查实例配置中是否存在 storageAutoResize 设置及其值。如果 storageAutoResize 为 false 或不存在,则表示自动调整存储空间大小的功能已停用,这可能会导致运营问题。启用此功能对于保持数据库的可靠性和可用性至关重要。 -
Cloudsql mysql 本地 infile 已启用
严重程度:媒介
标签:CloudSQL、MySQL、实例、安全性、标志、CSPR资源:sqladmin.googleapis.com/Instance详情 在 Cloud SQL for MySQL 上启用 local_infile 可能会使服务器遭受文件读取漏洞的攻击;除非绝对必要,否则请停用该功能。 -
Cloudsql mysql 跳过显示数据库
严重程度:媒介
标签:CloudSQL、MySQL、实例、安全性、标志、CSPR资源:sqladmin.googleapis.com/Instance详情 确保为 Cloud SQL for MySQL 实例启用 skip_show_database 标志(设置为“开启”)。启用此标志后,除非用户拥有 SHOW DATABASES 权限,否则无法使用 SHOW DATABASES 命令。这样可以限制用户发现数据库名称的能力,从而降低未经授权的访问尝试和信息披露风险,进而提高安全性。这是一种隐晦式安全。 -
Cloudsql mysql 慢查询日志已停用
严重程度:媒介
标签:CloudSQL、MySQL、实例、性能、标志、性能、问题排查、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for MySQL 实例的 slow_query_log 数据库标志是否已启用(设置为“开启”)。启用此标志会激活慢查询日志,该日志会记录执行时间超过定义阈值(由 long_query_time 控制)的 SQL 语句。慢查询日志是用于识别性能瓶颈、优化查询和排查数据库性能问题的重要工具。停用此标志会妨碍您诊断和解决查询缓慢的问题。 -
Cloudsql 无自动备份
严重程度:高
标签:可靠性、BCDR、数据保护、CSPR资源:sqladmin.googleapis.com/Instance详情 验证 Cloud SQL 实例是否已启用自动备份,确保在发生损坏、删除或服务故障时可以恢复关键数据。停用自动备份后,您将无法执行时间点恢复。 -
Cloud SQL 密码政策未启用
严重程度:高
标签:CloudSQL、实例、安全性、密码、可靠性、CSPR资源:sqladmin.googleapis.com/Instance详情 验证 Cloud SQL 实例是否已启用密码验证政策。为了遵循安全性最佳实践,强烈建议设置密码验证政策。依赖默认密码或不设置密码验证会显著增加未经授权的访问和潜在数据泄露的风险。此规则用于检查是否缺少密码验证。如果未对实例强制执行密码验证,则表示存在潜在的安全漏洞。 -
Cloudsql pgsql 日志检查点
严重程度:媒介
标签:CloudSQL、PostgreSQL、可靠性、性能、CSPR资源:sqladmin.googleapis.com/Instance详情 确保为 Cloud SQL for PostgreSQL 实例启用了 log_checkpoints 数据库标志(设置为“开启”)。检查点是事务日志序列中的关键点,在此期间,PostgreSQL 会将所有脏数据缓冲区写入磁盘并更新控制文件。记录检查点可提供有价值的信息,用于监控数据库恢复时间、诊断与 I/O 相关的性能问题,以及了解写入活动。停用此标志可能会妨碍问题排查和恢复分析。 -
Cloudsql pgsql 日志连接已停用
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、安全性、问题排查、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for PostgreSQL 实例的 log_connections 数据库标志是否已启用(设置为“开启”)。启用后,此标志会记录每次成功连接到数据库服务器的尝试,包括用户名和客户端 IP 地址。这些信息对于安全审核、跟踪数据库访问和排查连接相关问题至关重要。它与用于记录会话结束的 log_disconnections 标志相辅相成。此规则会标记连接日志记录处于停用状态的实例。 -
Cloudsql pgsql 日志断开连接已停用
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、安全性、问题排查、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for PostgreSQL 实例的 log_disconnections 数据库标志是否已启用(设置为“开启”)。启用后,此标志会记录每个客户端会话的结束时间,包括会话时长。这些信息对于审核、安全分析(例如检测异常连接模式)和排查连接相关问题非常有用。它与记录连接开始的 log_connections 标志互为补充。此规则会标记已停用断开连接日志记录的实例。 -
Cloudsql pgsql 日志错误详细程度
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、问题排查、调试、可靠性、CSPR资源:sqladmin.googleapis.com/Instance详情 确保 Cloud SQL for PostgreSQL 实例的 log_error_verbosity 数据库标志设置为“default”或“verbose”。此标志用于控制写入服务器日志的错误消息中包含的详细程度。与精简设置(可最大限度减少细节)相比,将其设置为默认或详细可提供更多信息,以便进行问题排查和调试。更详细的错误日志可显著帮助诊断数据库问题的根本原因。 -
Cloudsql pgsql 日志主机名
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、问题排查、安全性、CSPR资源:sqladmin.googleapis.com/Instance详情 确保为 Cloud SQL for PostgreSQL 实例启用(设置为“开启”)log_hostname 数据库标志。启用此标志后,系统会记录连接客户端的主机名以及 IP 地址。记录主机名对于问题排查、安全审核和识别连接来源非常有用。在 IP 地址经常更改(例如,由于 DHCP)或多个客户端通过同一 IP 地址(例如,通过代理或 NAT)进行连接的环境中,此功能特别有用。不过,启用此功能可能会因主机名而产生轻微的性能开销。 -
Cloudsql pgsql 日志锁定等待
严重程度:媒介
标签:CloudSQL、性能、可靠性、PostgreSQL、实例、日志记录、标志、CSPR资源:sqladmin.googleapis.com/Instance详情 确保为 Cloud SQL for PostgreSQL 实例启用 log_lock_waits 数据库标志(设置为“开启”)。启用此标志会记录长时间的锁等待,这通常表明数据库中存在性能瓶颈或并发问题。通过监控这些日志,管理员可以找出并解决查询缓慢或应用性能问题的根本原因。这种主动式方法有助于保持数据库的健康状态和响应能力。 -
Cloudsql pgsql 日志时长下限已停用
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、性能、问题排查、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for PostgreSQL 实例的 log_min_duration_statement 数据库标志是否设置为 1(已停用)。此标志用于控制语句在记录之前必须花费的最短执行时间(以毫秒为单位)。如果将其设置为 1,系统会停用语句时长的日志记录,从而妨碍性能监控和问题排查。一般建议设置一个特定阈值(例如,2 秒内为 2000),以便捕获慢查询,同时避免日志过多。此规则会标记基于时长的语句日志记录处于停用状态的实例。 -
Cloudsql pgsql 日志最小错误过高
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、问题排查、安全性、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for PostgreSQL 实例的 log_min_error_statement 数据库标志是否设置为“error”“log”“fatal”或“panic”。此标志用于控制记录为错误的 SQL 语句的严重级别。将其设置为“error”或更严格的级别(log、fatal、panic),可确保记录所有导致错误的语句,这对于问题排查、审核和安全分析至关重要。如果设置的严格程度低于“错误”(例如“警告”“通知”),则可能无法捕获所有错误情况,从而妨碍您诊断和解决问题。此规则会标记设置比“错误”宽松的实例。 -
Cloudsql pgsql 日志消息数量下限(非默认)
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、日志记录、问题排查、可靠性、CSPR、CoNa资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for PostgreSQL 实例的 log_min_messages 数据库标志是否已设置为其默认值 (warning)。此标志用于控制写入服务器日志的消息的严重级别。虽然默认设置(警告)通常是合适的,但建议您根据具体的操作需求和所需的日志记录详细程度调整此设置。将其设置为更详细的级别(例如,通知、信息、调试)可以提供更多信息以进行问题排查,而将其设置为不太详细的级别(例如,错误、日志、严重、panic)可以减少日志量。此规则会标记设置不是默认值的情况(警告)。是否强制执行默认值或允许偏差是政策决定。 -
Cloudsql pgsql 日志语句
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、问题排查、性能、安全性、CSPR资源:sqladmin.googleapis.com/Instance详情 验证是否已将 Cloud SQL for PostgreSQL 实例的 log_statement 数据库标志配置为“none”以外的值。log_statement 标志用于控制要记录哪些 SQL 语句。对 SQL 语句进行适当的日志记录对于审核、安全分析、性能问题排查和调试至关重要。将其设置为 ddl、mod 或 all 等值(具体取决于您的需求)可提供有关数据库活动的宝贵数据洞见。如果设置为“无”,则会完全停用语句日志记录,从而妨碍这些重要功能的正常运行。 -
Cloudsql pgsql 日志临时文件
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、日志记录、标志、CSPR资源:sqladmin.googleapis.com/Instance详情 确保为 Cloud SQL for PostgreSQL 实例启用 log_temp_files 数据库标志(设置为非零值)。此标志用于控制临时文件使用情况的日志记录。将其设置为 0 以外的值(这会停用日志记录)可让您监控查询创建的临时文件的大小和数量。临时文件创建过多可能表明查询效率低下、work_mem 设置不当或存在潜在的性能瓶颈。分析这些日志有助于优化查询性能和资源利用率。值为 0 表示停用日志记录,正值表示阈值(以 KB 为单位)。 -
Cloud SQL pgsql 连接数上限
严重程度:媒介
标签:CloudSQL、可靠性、性能、SQL、PostgreSQL、实例、连接、标志、CSPR资源:sqladmin.googleapis.com/Instance详情 确保为 Cloud SQL for PostgreSQL 实例显式配置 max_connections 数据库标志。为 max_connections 设置适当的值对于资源管理和防止连接耗尽至关重要。如果没有明确的限制,连接请求的激增可能会使数据库不堪重负,导致性能下降或拒绝服务攻击。最佳值取决于实例大小和工作负载。 -
Cloudsql pgsql pgaudit 已停用
严重程度:媒介
标签:CloudSQL、PostgreSQL、实例、审核、标志、安全性、审核、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for PostgreSQL 实例的 cloudsql.enable_pgaudit 标志是否已启用(设置为“on”)。此标志用于启用 pgaudit 扩展程序,该扩展程序可提供详细的会话和对象审核日志记录功能。借助 pgaudit,您可以跟踪特定的数据库活动,例如 SELECT、INSERT、UPDATE 和 DELETE 操作,并根据用户、角色和对象配置精细的审核规则。这对于安全审核、合规性和取证分析至关重要。 -
Cloudsql 公共访问权限
严重程度:高
标签:CloudSQL、实例、安全性、网络、CSPR、MVSP资源:sqladmin.googleapis.com/Instance详情 检测已配置为允许来自已获授权的网络中任何 IP 地址 (0.0.0.0/0) 的连接的 Cloud SQL 实例。将数据库实例暴露在公共互联网中会带来严重的安全风险,除非绝对必要,否则应避免这样做,并且务必格外谨慎。公开可访问性会大幅增加攻击面,使实例容易受到未经授权的访问、暴力攻击和数据泄露。访问权限应限定于特定已知 IP 地址或范围。 -
Cloud SQL 需要 SSL
严重程度:高
标签:CloudSQL、实例、安全性、SSL、CSPR资源:sqladmin.googleapis.com/Instance详情 强制要求所有连接到此 Cloud SQL 实例的客户端都使用 SSL/TLS 连接。要求使用 SSL/TLS 可加密传输中的数据,从而防范窃听和中间人攻击。对于处理敏感信息的任何数据库,这是一项至关重要的安全最佳实践。如果不使用 SSL/TLS,数据将以明文形式传输。 -
未设置 Cloudsql root 密码
严重程度:高
标签:CloudSQL、实例、安全性、密码、可靠性、CSPR资源:sqladmin.googleapis.com/Instance详情 检查是否为 Cloud SQL 实例设置了根密码。根据安全最佳实践,应为所有 Cloud SQL 实例设置安全系数高且唯一的根密码。此规则直接检查实例配置中的 rootPassword 字段。如果 rootPassword 字段为空或缺失,则表示存在严重的安全漏洞,因为这意味着无需密码或使用默认密码即可访问实例。 -
Cloud SQL 服务器包含的数据库身份验证已启用
严重程度:媒介
标签:CloudSQL、SQL Server、实例、安全性、身份验证、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for SQL Server 实例是否启用了包含的数据库身份验证。包含的数据库允许在数据库级别进行身份验证,而不仅仅是在实例(服务器)级别进行身份验证。虽然这可以简化数据库可移植性,但如果管理不当,也会带来潜在的安全风险。经过身份验证的用户可以绕过实例级安全控制。除非有特殊需要,并且您完全了解安全影响,否则一般建议停用独立数据库身份验证。 -
Cloudsql 服务器跨数据库所有者链
严重程度:媒介
标签:CloudSQL、可靠性、SQL Server、实例、安全性、所有权链、CSPR资源:sqladmin.googleapis.com/Instance详情 确保在 Cloud SQL for SQL Server 实例上停用(设置为“关闭”)跨数据库所有权链。停用此设置是一项至关重要的安全最佳实践。启用后,如果未仔细管理所有权链,一个数据库中的用户可能会意外获得对其他数据库中对象的访问权限。这可能会导致提权漏洞。 -
Cloudsql 服务器外部脚本已启用
严重程度:媒介
标签:CloudSQL、SQL Server、实例、安全性、标志、安全性、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for SQL Server 实例是否启用了“external scripts enabled”标志。此标志用于控制在 SQL Server 环境中执行外部脚本(例如 R、Python)的能力。虽然此功能对于高级分析和机器学习非常有用,但如果管理不当,启用此功能可能会带来潜在的安全风险。外部脚本可能会访问系统资源或执行恶意代码。除非有特殊需要,并且已采取适当的安全预防措施,否则一般建议停用此功能。 -
Cloudsql 服务器远程访问
严重程度:媒介
标签:CloudSQL、SQL Server、实例、安全性、访问控制、可靠性、CSPR资源:sqladmin.googleapis.com/Instance详情 确保 Cloud SQL SQL Server 实例的远程访问数据库标志处于停用状态(设置为“关闭”)。停用此标志会阻止远程计算机上的 SQL Server 客户端使用专用管理员连接 (DAC) 连接到此实例。虽然 DAC 是一款强大的问题排查工具,但将其使用范围限制为仅限本地连接可显著缩小受攻击面。配置错误或遭到入侵的远程访问可能会导致数据库受到未经授权的控制。 -
Cloudsql 服务器跟踪标志 3625 已启用
严重程度:媒介
标记:CloudSQL、SQL Server、实例、安全性、可靠性、安全性、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for SQL Server 实例是否启用了跟踪记录标志 3625。跟踪标志 3625 会限制在错误消息中向非系统管理员用户返回的信息量,可能会遮盖有关数据库结构或配置的敏感详细信息。虽然此跟踪标志在某些安全环境中很有用,但在开发和测试环境中,它通常处于停用状态,以便提供更详细的错误信息以供问题排查。此规则会标记启用了跟踪标志 3625 的实例。请务必了解此标志的影响,以及它是否符合您的安全和运营需求。 -
Cloudsql 服务器无限制的用户连接数
严重程度:媒介
标记:CloudSQL、SQL Server、实例、连接、标志、性能、可靠性、CSPR资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for SQL Server 实例上的用户连接数据库标志是否设置为 0(无限制)。将用户连接数设置为 0 可允许无限数量的同步用户连接,这可能会导致资源耗尽、性能下降,并可能导致拒绝服务。最佳做法是根据实例大小和预期工作负载,为用户连接配置一个合理的具体限制,以防止资源争用并保持数据库稳定性。此规则会标记连接数不受限制的实例。 -
Cloudsql 服务器用户选项已设置
严重程度:媒介
标签:CloudSQL、SQL Server、实例、配置、标志、可靠性、CSPR、CoNa资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL for SQL Server 实例是否配置了用户选项数据库标志。用户选项标志用于为所有用户指定查询处理行为的服务器级默认设置。一般建议避免设置全局用户选项,而是允许个别用户或应用根据需要配置自己的会话级设置。如果不同的应用需要不同的设置,依赖全局用户选项可能会导致意外行为或兼容性问题。此规则会标记设置了用户选项(即,不是其默认的未配置状态,通常以 0 或空字符串表示)的实例。 -
Cloudsql 可用区级实例故障切换副本
严重程度:高
标签:CloudSQL、实例、可靠性、可用性、高可用性、可用区级、故障切换、CSPR、CoNa资源:sqladmin.googleapis.com/Instance详情 检查 Cloud SQL 实例是否配置为高可用性 (HA)。此规则侧重于可用区级实例(非区域级),并验证故障切换副本是否可用。对于可用区实例,拥有故障切换副本对于提升弹性至关重要。如果可用区级实例的 failoverReplicaAvailable 为 false,则表示该实例是单点故障,容易受到相应可用区内服务中断的影响。没有故障切换副本的可用区级实例不符合高可用性要求。由于此问题会直接影响数据库的可靠性和正常运行时间,因此我们将其视为严重程度为“高”的问题。
Google Cloud 最佳实践 - Cloud Spanner(6 项结果)
-
Spanner 数据库备份时长
严重程度:媒介
标签:Spanner、备份、安全性、CSPR资源:spanner.googleapis.com/Backup详情 验证 Cloud Spanner 备份是否已超过其最短保留期限。 -
Spanner 数据库(未启用 CMEK)
严重程度:高
标签:Spanner、安全性、加密、CMEK、CSPR、MVSP资源:spanner.googleapis.com/Database详情 验证 Cloud Spanner 数据库是否使用客户管理的加密密钥 (CMEK) 而不是 Google 管理的密钥进行加密。 -
Spanner 数据库是否已启用 PITR
严重程度:高
标签:可靠性、数据库、备份、恢复、BCDR资源:spanner.googleapis.com/Database详情 通过验证版本保留期限是否设置为非默认时长,确保 Spanner 数据库已配置时间点恢复 (PITR)。 -
Spanner 数据库删除防护已停用
严重程度:高
标签:安全性、可靠性、数据保护、CSPR资源:spanner.googleapis.com/Database详情 对 Cloud Spanner 数据库强制执行删除防护,以防范意外删除,避免造成不可逆的数据丢失和严重的服务中断。此规则会检查 enableDropProtection 标志是否缺失或明确设置为 false,这会导致数据库容易遭受意外移除。 -
Spanner 实例容量不足
严重程度:高
标签:可靠性、性能、容量管理、CSPR资源:spanner.googleapis.com/Instance详情 验证 Cloud Spanner 实例是否至少预配了 1 个节点或 1, 000 个处理单元,确保为生产工作负载提供足够的容量,以防止出现延迟和节流。容量较低的实例在流量高峰期可能会遇到困难,从而影响应用可靠性。 -
Spanner 实例多区域
严重程度:高
标签:可靠性、可用性、BCDR、CSPR资源:spanner.googleapis.com/Instance详情 验证 Cloud Spanner 实例是否配置了多区域实例配置,以确保 99.999% 的可用性以及针对区域服务中断的高恢复能力。配置为单区域配置(通过配置设置中的区域前缀标识)的实例不符合此可用性标准。
Google Cloud 最佳实践 - Cloud Storage(20 条结果)
-
Cloud Storage 存储桶软删除政策已启用
严重程度:高
标签:可靠性、存储、备份、数据保护资源:storage.googleapis.com/Bucket详情 验证 Google Cloud Storage 存储分区是否已启用软删除政策,以防对象被意外或恶意删除。 -
Cloud Storage 存储桶增强型复制
严重程度:媒介
标签:可靠性、存储、复制、灾难恢复、BCDR资源:storage.googleapis.com/Bucket详情 验证 GCS 双区域存储分区是否已启用增强型复制,以保证在 Google Cloud SLA 下实现 15 分钟的 RPO。 -
Cloud Storage 存储桶中止未完成的多部分上传
严重程度:低
标签:CloudStorage、生命周期、费用优化资源:storage.googleapis.com/Bucket详情 检查 Cloud Storage 存储分区是否配置了用于中止未完成的多部分上传的生命周期规则。如果未清理,不完整的上传会占用存储空间并产生无限期的费用。 -
Cloud Storage 存储桶 CMEK 轮换
严重程度:高
资源:storage_Bucket_RESOURCE_RELATIONSHIP详情 确保 Cloud Storage 存储分区使用轮换周期不超过 90 天的客户管理的加密密钥 (CMEK) 进行加密。 -
Cloud Storage 存储桶双多区域
严重程度:媒介
标记:存储分区、可用性、恢复能力、灾难恢复资源:storage.googleapis.com/Bucket详情 验证 Cloud Storage 存储分区是否配置为双区域或多区域位置类型。此配置可将数据分布到多个地理位置,从而确保高可用性和数据弹性。区域位置类型会使数据容易受到单区域中断的影响,并且不符合高可用性要求。 -
Cloud Storage 存储桶清空生命周期
严重程度:媒介
标签:存储、存储分区、生命周期、可靠性、费用、CSPR、CoNa资源:storage.googleapis.com/Bucket详情 识别已定义生命周期规则但这些规则缺少指定操作的 Cloud Storage 存储分区。没有操作的生命周期规则无效,没有任何用途。生命周期规则旨在通过删除或存储类别转换等操作来管理对象生命周期。空操作表示应更正的配置错误。这可能表明设置不完整或配置中存在拼写错误。 -
Cloud Storage 存储桶 gdpr
严重程度:媒介
标签:存储、存储分区、GDPR、合规性、位置、欧盟、数据留存、CSPR资源:storage.googleapis.com/Bucket详情 检查 Google Cloud Storage 存储桶是否位于欧盟 (EU) 地理边界之外。对于受 GDPR 或类似数据驻留法规约束的组织,将数据存储在符合法规的位置至关重要。此规则用于识别位置字段不对应于欧盟多区域 (EU) 或特定欧盟区域(通常以 EUROPE 开头)的存储分区。在欧盟区域以外发现的存储分区可能需要接受合规性审核。 -
已启用 Cloud Storage 存储桶日志记录
严重程度:媒介
标记:存储空间、存储分区、日志记录、安全性、审核、CSPR、CoNa、MVSP资源:storage.googleapis.com/Bucket详情 检查 Cloud Storage 存储桶是否已启用日志记录。访问日志会详细记录对存储桶发出的请求,这对于安全审核和监控对敏感数据的访问非常重要。 -
Cloud Storage 存储桶缺少分类标签
严重程度:低
标签:存储、存储分区、标签、数据治理、分类、安全、CSPR、CoNa资源:storage.googleapis.com/Bucket详情 验证 Cloud Storage 存储桶是否已配置“分类”标签。分类标签(例如公开、私密、机密)对于数据治理和应用适当的安全控制措施至关重要。 -
Cloud Storage 存储桶缺少标签
严重程度:低
标签:存储、存储分区、标签、组织、FinOps、CSPR、CoNa资源:storage.googleapis.com/Bucket详情 确保 Cloud Storage 存储分区已应用标签,以便进行资源组织、费用分配和政策执行。 -
Cloud Storage 存储桶缺少所有者标签
严重程度: