适用于 ISO 27001 的预定义状况模板

本页面介绍了 v1.0 版本中包含的检测策略。 预定义安全状况模板的国际组织 标准 (ISO) 27001 标准。此模板包含一个政策集,用于 适用于必须符合以下要求的工作负载的 Security Health Analytics 检测器 符合 ISO 27001 标准。

您无需进行任何更改即可部署此状况模板。

Security Health Analytics 检测器

下表介绍了 安全状况模板。

检测器名称 说明
SQL_CROSS_DB_OWNERSHIP_CHAINING

此检测器会检查 Cloud SQL for SQL Server 中的 cross_db_ownership_chaining 标志是否未关闭。

INSTANCE_OS_LOGIN_DISABLED

此检测器会检查 OS Login 是否未开启。

SQL_SKIP_SHOW_DATABASE_DISABLED

此检测器会检查 Cloud SQL for MySQL 中的 skip_show_database 标志是否未开启。

ESSENTIAL_CONTACTS_NOT_CONFIGURED

此检测器会检查您是否至少有一位重要联系人

AUDIT_LOGGING_DISABLED

此检测器会检查是否为资源关闭了审核日志记录。

VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED

此检测器会检查 VPC 流日志是否未开启。

API_KEY_EXISTS

此检测器会检查项目是否使用的是 API 密钥而不是标准身份验证。

SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY

此检测器会检查 Cloud SQL for PostgreSQL 中的 log_min_error_statement 标志是否没有适当的严重级别。

LOCKED_RETENTION_POLICY_NOT_SET

此检测器会检查是否为日志设置了锁定的保留政策。

SQL_LOG_DISCONNECTIONS_DISABLED

此检测器会检查 Cloud SQL for PostgreSQL 中的 log_disconnections 标志是否未开启。

COMPUTE_SERIAL_PORTS_ENABLED

此检测器会检查串行端口是否已启用。

COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED

此检测器会检查是否使用了项目级 SSH 密钥。

KMS_KEY_NOT_ROTATED

此检测器会检查是否未开启 Cloud Key Management Service 加密轮替。

DNS_LOGGING_DISABLED

此检测器会检查 VPC 网络是否启用了 DNS 日志记录。

SQL_LOCAL_INFILE

此检测器会检查 Cloud SQL for MySQL 中的 local_infile 标志是否未关闭。

SQL_LOG_MIN_DURATION_STATEMENT_ENABLED

此检测器会检查 Cloud SQL for PostgreSQL 中的 log_min_duration_statement 标志是否未设置为 -1

PUBLIC_DATASET

此检测器会检查数据集是否已配置为允许公开访问。如需了解详情,请参阅数据集漏洞发现结果

DISK_CSEK_DISABLED

此检测器会检查虚拟机是否停用了客户提供的加密密钥 (CSEK) 支持。

SQL_USER_CONNECTIONS_CONFIGURED

此检测器会检查是否已配置 Cloud SQL for SQL Server 中的 user connections 标志。

SERVICE_ACCOUNT_ROLE_SEPARATION

此检测器会检查服务账号密钥的职责分离。

AUDIT_CONFIG_NOT_MONITORED

此检测器会检查审核配置更改是否被监控。

BUCKET_IAM_NOT_MONITORED

此检测器会检查是否对 Cloud Storage 中的 IAM 权限更改关闭了日志记录。

PUBLIC_SQL_INSTANCE

此检测器会检查 Cloud SQL 是否允许来自所有 IP 地址的连接。

AUTO_BACKUP_DISABLED

此检测器会检查 Cloud SQL 数据库是否未开启自动备份。

DATAPROC_CMEK_DISABLED

此检测器会检查是否对 Dataproc 集群停用了 CMEK 支持。

LOG_NOT_EXPORTED

此检测器会检查资源是否未配置日志接收器。

KMS_PROJECT_HAS_OWNER

此检测器会检查用户是否对包含密钥的项目具有 Owner 权限。

KMS_ROLE_SEPARATION

此检测器会检查 Cloud KMS 密钥的职责分离。

API_KEY_APIS_UNRESTRICTED

此检测器会检查 API 密钥的使用是否过于宽泛。

SQL_LOG_MIN_MESSAGES

此检测器会检查 Cloud SQL for PostgreSQL 中的 log_min_messages 标志是否未设置为 warning

SQL_PUBLIC_IP

此检测器会检查 Cloud SQL 数据库是否具有外部 IP 地址。

DATASET_CMEK_DISABLED

此检测器会检查是否为 BigQuery 数据集停用了 CMEK 支持。

FIREWALL_NOT_MONITORED

此检测器会检查是否未将日志指标和提醒配置为监控 VPC 防火墙规则更改。

SQL_LOG_STATEMENT

此检测器会检查 Cloud SQL for PostgreSQL Server 中的 log_statement 标志是否未设置为 ddl

BIGQUERY_TABLE_CMEK_DISABLED

此检测器会检查 BigQuery 表是否未配置为使用客户管理的加密密钥 (CMEK)。如需了解详情,请参阅数据集漏洞发现结果

CONFIDENTIAL_COMPUTING_DISABLED

此检测器会检查机密计算是否已关闭。

SQL_INSTANCE_NOT_MONITORED

此检测器会检查是否为 Cloud SQL 配置更改关闭了日志记录。

KMS_PUBLIC_KEY

此检测器会检查 Cloud Key Management Service 加密密钥是否可公开访问。如需了解详情,请参阅 KMS 漏洞发现结果

DEFAULT_NETWORK

此检测器会检查项目中是否存在默认网络。

SQL_TRACE_FLAG_3625

此检测器会检查 Cloud SQL for SQL Server 中的 3625 (trace flag) 标志是否未开启。

API_KEY_NOT_ROTATED

此检测器会检查 API 密钥在过去 90 天内是否发生了轮替。

DNSSEC_DISABLED

此检测器会检查 Cloud DNS 的 DNS 安全性 (DNSSEC) 是否已停用。如需了解详情,请参阅 DNS 漏洞发现结果

SQL_LOG_CONNECTIONS_DISABLED

此检测器会检查 Cloud SQL for PostgreSQL 中的 log_connections 标志是否未开启。

LEGACY_NETWORK

此检测器会检查项目中是否存在旧版网络。

PUBLIC_IP_ADDRESS

此检测器会检查实例是否具有外部 IP 地址。

FULL_API_ACCESS

此检测器会检查实例是否使用对所有 Google Cloud API 拥有完整访问权限的默认服务账号。

SQL_CONTAINED_DATABASE_AUTHENTICATION

此检测器会检查 Cloud SQL for SQL Server 中的 contained database authentication 标志是否未关闭。

OS_LOGIN_DISABLED

此检测器会检查 OS Login 是否已关闭。

SQL_USER_OPTIONS_CONFIGURED

此检测器会检查是否已配置 Cloud SQL for SQL Server 中的 user options 标志。

ADMIN_SERVICE_ACCOUNT

此检测器检查服务账号是否具有 Admin(管理员)、Owner(所有者)或 Editor(编辑者)权限。

DEFAULT_SERVICE_ACCOUNT_USED

此检测器会检查是否正在使用默认服务账号。

NETWORK_NOT_MONITORED

此检测器会检查是否未将日志指标和提醒配置为监控 VPC 网络更改。

PUBLIC_BUCKET_ACL

此检测器会检查存储桶是否可公开访问。

CUSTOM_ROLE_NOT_MONITORED

此检测器会检查是否已针对自定义角色更改关闭了日志记录。

SQL_LOG_ERROR_VERBOSITY

此检测器会检查 Cloud SQL for PostgreSQL 中的 log_error_verbosity 标志是否未设置为 default

LOAD_BALANCER_LOGGING_DISABLED

此检测器会检查负载均衡器是否关闭了日志记录。

OVER_PRIVILEGED_SERVICE_ACCOUNT_USER

此检测器会检查用户是否在项目级(而不是特定服务账号)拥有服务账号角色。

SQL_REMOTE_ACCESS_ENABLED

此检测器会检查 Cloud SQL for SQL Server 中的 remote_access 标志是否未关闭。

RSASHA1_FOR_SIGNING

此检测器会检查是否使用了 RSASHA1 进行 Cloud DNS 区域中的密钥签名。

CLOUD_ASSET_API_DISABLED

此检测器会检查 Cloud Asset Inventory 是否已停用。

BUCKET_POLICY_ONLY_DISABLED

此检测器会检查是否配置了统一存储桶级访问权限。

ROUTE_NOT_MONITORED

此检测器会检查是否未将日志指标和提醒配置为监控 VPC 网络路由更改。

OWNER_NOT_MONITORED

此检测器会检查是否已针对项目所有权分配和更改关闭了日志记录。

YAML 定义

以下是 ISO 27001 安全状况模板的 YAML 定义。

name: organizations/123/locations/global/postureTemplates/iso_27001
description: Posture Template to make your workload ISO-27001 compliant.
revision_id: v.1.0
state: ACTIVE
policy_sets:
- policy_set_id: ISO-27001 detective policy set
  description: 63 SHA modules that new customers can automatically enable.
  policies:
  - policy_id: SQL cross DB ownership chaining
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_CROSS_DB_OWNERSHIP_CHAINING
  - policy_id: Instance OS login disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: INSTANCE_OS_LOGIN_DISABLED
  - policy_id: SQL skip show database disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_SKIP_SHOW_DATABASE_DISABLED
  - policy_id: Essential contacts not configured
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: ESSENTIAL_CONTACTS_NOT_CONFIGURED
  - policy_id: Audit logging disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: AUDIT_LOGGING_DISABLED
  - policy_id: VPC flow logs settings not recommended
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED
  - policy_id: API key exists
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: API_KEY_EXISTS
  - policy_id: SQL log min error statement severity
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY
  - policy_id: Locked retention policy not set
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: LOCKED_RETENTION_POLICY_NOT_SET
  - policy_id: SQL log disconnections disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOG_DISCONNECTIONS_DISABLED
  - policy_id: Compute serial ports enabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: COMPUTE_SERIAL_PORTS_ENABLED
  - policy_id: Compute project wide ssh keys allowed
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED
  - policy_id: KMS key not rotated
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: KMS_KEY_NOT_ROTATED
  - policy_id: DNS logging disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: DNS_LOGGING_DISABLED
  - policy_id: SQL local infile
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOCAL_INFILE
  - policy_id: SQL log min duration statement enabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOG_MIN_DURATION_STATEMENT_ENABLED
  - policy_id: Public dataset
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: PUBLIC_DATASET
  - policy_id: Disk CSEK disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: DISK_CSEK_DISABLED
  - policy_id: SQL user connections configured
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_USER_CONNECTIONS_CONFIGURED
  - policy_id: Service account role separation
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SERVICE_ACCOUNT_ROLE_SEPARATION
  - policy_id: Audit config not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: AUDIT_CONFIG_NOT_MONITORED
  - policy_id: Bucket IAM not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: BUCKET_IAM_NOT_MONITORED
  - policy_id: Public SQL instance
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: PUBLIC_SQL_INSTANCE
  - policy_id: Auto backup disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: AUTO_BACKUP_DISABLED
  - policy_id: Dataproc CMEK disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: DATAPROC_CMEK_DISABLED
  - policy_id: Log not exported
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: LOG_NOT_EXPORTED
  - policy_id: KMS project has owner
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: KMS_PROJECT_HAS_OWNER
  - policy_id: KMS role separation
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: KMS_ROLE_SEPARATION
  - policy_id: API key APIs unrestricted
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: API_KEY_APIS_UNRESTRICTED
  - policy_id: SQL log min messages
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOG_MIN_MESSAGES
  - policy_id: SQL public IP
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_PUBLIC_IP
  - policy_id: Dataset CMEK disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: DATASET_CMEK_DISABLED
  - policy_id: Firewall not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: FIREWALL_NOT_MONITORED
  - policy_id: SQL log statement
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOG_STATEMENT
  - policy_id: BigQuery table CMEK disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: BIGQUERY_TABLE_CMEK_DISABLED
  - policy_id: Confidential computing disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: CONFIDENTIAL_COMPUTING_DISABLED
  - policy_id: SQL instance not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_INSTANCE_NOT_MONITORED
  - policy_id: KMS public key
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: KMS_PUBLIC_KEY
  - policy_id: Default network
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: DEFAULT_NETWORK
  - policy_id: SQL trace flag 3625
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_TRACE_FLAG_3625
  - policy_id: API key not rotated
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: API_KEY_NOT_ROTATED
  - policy_id: DNSSEC disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: DNSSEC_DISABLED
  - policy_id: SQL log connections disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOG_CONNECTIONS_DISABLED
  - policy_id: Legacy network
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: LEGACY_NETWORK
  - policy_id: Public IP address
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: PUBLIC_IP_ADDRESS
  - policy_id: Full API access
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: FULL_API_ACCESS
  - policy_id: SQL contained database authentication
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_CONTAINED_DATABASE_AUTHENTICATION
  - policy_id: OS login disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: OS_LOGIN_DISABLED
  - policy_id: SQL user options configured
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_USER_OPTIONS_CONFIGURED
  - policy_id: Admin service account
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: ADMIN_SERVICE_ACCOUNT
  - policy_id: Default service account used
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: DEFAULT_SERVICE_ACCOUNT_USED
  - policy_id: Network not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: NETWORK_NOT_MONITORED
  - policy_id: Public bucket ACL
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: PUBLIC_BUCKET_ACL
  - policy_id: Custom role not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: CUSTOM_ROLE_NOT_MONITORED
  - policy_id: SQL log error verbosity
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_LOG_ERROR_VERBOSITY
  - policy_id: Load balancer logging disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: LOAD_BALANCER_LOGGING_DISABLED
  - policy_id: Over privileged service account user
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: OVER_PRIVILEGED_SERVICE_ACCOUNT_USER
  - policy_id: SQL remote access enabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: SQL_REMOTE_ACCESS_ENABLED
  - policy_id: RSASHA1 for signing
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: RSASHA1_FOR_SIGNING
  - policy_id: Cloud asset API disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: CLOUD_ASSET_API_DISABLED
  - policy_id: Bucket policy only disabled
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: BUCKET_POLICY_ONLY_DISABLED
  - policy_id: Route not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: ROUTE_NOT_MONITORED
  - policy_id: Owner not monitored
    constraint:
      securityHealthAnalyticsModule:
        moduleEnablementState: ENABLED
        moduleName: OWNER_NOT_MONITORED

后续步骤