已知问题

本页面列出了 Sensitive Data Protection 的已知问题,以及可用于避免这些问题或在发生此类问题时恢复服务的方法。

将结果存储到 BigQuery

当作业或发现扫描将结果存储到 BigQuery 时,日志中会显示 Already exists 错误。该错误并不表示存在问题;您的结果将按预期存储。

BigQuery 扫描

本部分介绍了在检查或分析 BigQuery 数据时可能会遇到的问题。

检查和性能分析操作的常见问题

以下问题适用于 BigQuery 检查和分析操作。

无法扫描具有行级安全性的行

行级安全政策可能会阻止 Sensitive Data Protection 检查受保护的 BigQuery 表并为其创建分析文件。如果您对 BigQuery 表应用了行级安全性政策,我们建议您设置 TRUE 过滤条件,并将服务代理添加到被授权者列表中:

重复行

将数据写入 BigQuery 表时,Sensitive Data Protection 可能会写入重复的行。

最近流式传输的数据

Sensitive Data Protection 不会扫描最近流式传输的数据(以前称为流式传输缓冲区)。如需了解详情,请参阅 BigQuery 文档中的流式数据可用性。

BigQuery 检查问题

以下问题仅适用于对 BigQuery 数据的检查操作。它们不会影响数据分析。

导出的发现结果中 row_number 字段没有值

将 Sensitive Data Protection 配置为将发现结果保存到 BigQuery 时,系统会在扫描输入表时推断生成的 BigQuery 表中的 location.content_locations.record_location.record_key.big_query_key.row_number 字段。其值是不确定的,无法查询,并且对于检查作业可以为 null。

如果需要标识存在发现结果的特定行,请在创建作业时指定 inspectJob.storageConfig.bigQueryOptions.identifyingFields。

在生成的 BigQuery 表的 location.content_locations.record_location.record_key.id_values 字段中可以找到标识字段。

将扫描范围限制为新的 BigQuery 内容

如果您将扫描范围限制为仅扫描新内容,并且使用 BigQuery Storage Write API (gRPC) 填充输入表,则 Sensitive Data Protection 可能会跳过扫描某些行。

为缓解此问题,请在检查作业中确保 TimespanConfig 对象的 timestampField 是 BigQuery 自动生成的提交时间戳。不过,仍然无法保证不会跳过任何行,因为 Sensitive Data Protection 不会从最近流式传输的数据中读取数据。

如果您想为某一列自动生成提交时间戳,并且使用旧版 Streaming API 填充输入表,请执行以下操作:

  1. 在输入表的架构中,确保时间戳列的类型为 TIMESTAMP。

    架构示例

    以下示例定义了 commit_time_stamp 字段并将其类型设置为 TIMESTAMP:

    ...
    {
     "name": "commit_time_stamp",
     "type": "TIMESTAMP"
    }
    ...
    
  2. 在 tabledata.insertAll 方法的 rows[].json 字段中,确保时间戳列中的值设置为 AUTO。

    JSON 示例

    以下示例将 commit_time_stamp 字段的值设置为 AUTO:

    {
      ...
      "commit_time_stamp": "AUTO",
      ...
    }
    

通过设置最大百分比或行数来限制扫描

如果您根据表行总数的百分比 (rowsLimitPercent) 设置采样限制,Sensitive Data Protection 检查的行数可能会超出预期。如果您需要对要扫描的行数设置硬性限制,我们建议您改为设置行数上限 (rowsLimit)。

BigQuery 分析问题

以下问题仅适用于对 BigQuery 数据执行的分析操作。如需了解详情,请参阅 BigQuery 数据的数据配置文件。

拥有超过 5 亿个表的组织或项目

如果您尝试对包含超过 5 亿个表的组织或项目进行分析,Sensitive Data Protection 会返回错误。如果您遇到此错误,请按照出错提示中的说明操作。

如果您的组织拥有超过 5 亿个表,但您有些项目的表数量较少,则请尝试执行项目级层扫描。

如需了解表和列的限制,请参阅数据剖析限制。

检查模板

检查模板必须与要分析的数据位于同一区域。如果您的数据分布在多个区域,请使用多个检查模板,每个数据所在区域各一个。您还可以使用存储在 global 区域中的检查模板。 如果您在 global 区域中添加了模板,Sensitive Data Protection 会将其用于任何没有区域模板的数据。如需了解详情,请参阅数据驻留注意事项。

存储的 InfoType

检查模板中引用的存储的 infoType(也称为存储的自定义字典检测器)必须存储在以下任一位置:

  • global 区域。
  • 与检查模板位于同一区域。

否则,性能分析操作会失败,并显示错误 Resource not found。

资源可见性

在表数据分析中,为 BigQuery 表提供的资源公开范围分类取决于包含该表的数据集的公开范围,而不是该表的公开范围。因此,如果表的 IAM 权限与数据集的 IAM 权限不同,则数据分析中指示的表的资源公开范围可能不正确。此问题会影响 BigQuery 发现和 Vertex AI 发现。

在 Google Cloud 控制台中,资源公开范围会显示在表数据配置文件的公开字段中。在 Cloud Data Loss Prevention API 中,资源可见性在 TableDataProfile 的 resourceVisibility 字段中指明。

对于不会过期的表,到期时间戳不正确

在 2025 年 7 月至 2026 年 6 月期间,对于不会过期的表,保存到 BigQuery 的某些表数据配置文件在 expiration_time 中包含不正确的 1970-01-01 时间戳,而不是 NULL。

Cloud Storage 扫描

本部分介绍了您在检查或去标识化数据时可能会遇到的问题。

不支持检查 Strict XLSX 文件

扩展名为 .xlsx 的文件可以是以下两种类型之一。一种类型是严格 Office Open XML 电子表格,Sensitive Data Protection 不支持该类型。另一种类型是默认的 Microsoft Excel 工作簿,这种类型受支持。

正在以二进制模式扫描结构化文件

在某些情况下,通常在结构化解析模式下扫描的文件可能会在二进制模式下扫描,该模式不包含结构化解析模式的增强功能。如需了解详情,请参阅在结构化解析模式下扫描结构化文件。

对分隔文件进行去标识化处理

当您使用检查作业去标识化分隔文件(例如 CSV 文件)时,输出中的某些行可能会有额外的空单元格。为避免这些额外单元格,一种解决方法是改用 content.deidentify 方法对数据进行去标识化。

Cloud SQL 发现

Security Command Center 重复发现结果

Cloud SQL 数据分析支持将发现结果发布到 Security Command Center。

在 2024 年 4 月 25 日之前,由于一个 bug,Sensitive Data Protection 偶尔会在 Security Command Center 中为 Cloud SQL 实例生成重复的发现结果。这些发现结果是使用唯一的发现结果 ID 生成的,但它们属于相同的 Cloud SQL 实例。该问题已解决,但重复的发现结果仍然存在。您可以忽略重复项,以在 Security Command Center 发现结果页面上隐藏这些重复项。

适用于 Amazon S3 的发现服务

Sensitive Data Protection 发送到 Security Command Center 的 Amazon S3 发现结果可能不包含受影响资源的 AWS 账号 ID 或显示名称的相关信息。这通常发生在以下情况:

  • 在发现结果发送到 Security Command Center 时,AWS 连接器仅有效了大约 24 小时。
  • 在发现结果发送到 Security Command Center 时,AWS 账号仅在 AWS 连接器中包含大约 24 小时。

如需解决此问题,请在大约 24 小时后通过删除或设置分析时间表来重新生成数据分析。完整的发现结果详情会发送到 Security Command Center。

智能文档解析

本部分包含与文档解析相关的已知问题。

DocumentLocation 对象未填充

对于智能文档解析扫描模式,系统不会填充 location.content_locations.document_location.file_offset 字段。

检测

以下已知问题描述了检测方面的问题,无论您执行的是哪种操作(检查、去标识化还是发现)。

字典中的字词

包含 Unicode 标准的辅助多语言平面中的字符的字典字词可能会产生意外发现结果。例如表情符号、科学符号和历史文字。