Рондо, спасибо за ваш вклад.Я полагаю, что приведенный вами пример облачного хранилища сканирует только один файл для каждой работы.Он не использует объект savefindings.
Джош, ты прав.Кажется, нужно направить вывод в Bigquery или Pub / sub, чтобы увидеть полный результат.
С https://cloud.google.com/dlp/docs/inspecting-storage#retrieving-inspection-results:
Для получения полных результатов проверки у вас есть два варианта.В зависимости от выбранного действия, задания проверки:
Сохраняются в BigQuery (объект SaveFindings) в указанной таблице.Перед просмотром или анализом результатов сначала убедитесь, что задание выполнено, используя метод projects.dlpJobs.get, который описан ниже.Обратите внимание, что вы можете указать схему для хранения результатов, используя объект OutputSchema.Публикуется в облачной публикации / подразделе (объект PublishToPubSub).В теме должны быть предоставлены права доступа для публикации к учетной записи службы Cloud DLP, которая запускает DlpJob, отправляющий уведомления.
Я получил его, изменив решение Как сканировать таблицу BigQuery с помощью DLP, ищаконфиденциальные данные? .
Вот мой последний рабочий скрипт:
import google.cloud.dlp
dlp = google.cloud.dlp.DlpServiceClient()
inspect_job_data = {
'storage_config': {
'cloud_storage_options': {
'file_set': {
'url':
'gs://{bucket_name}/{dir_name}/**'.format(
bucket_name=STAGING_BUCKET, dir_name=DIR_NAME)
}
}
},
'inspect_config': {
'include_quote': include_quote,
'info_types': [
{'name': 'ALL_BASIC'},
],
},
'actions': [
{
'save_findings': {
'output_config':{
'table':{
'project_id': GCP_PROJECT_ID,
'dataset_id': DATASET_ID,
'table_id': '{}_DLP'.format(TABLE_ID)
}
}
},
},
]
}
operation = dlp.create_dlp_job(parent=dlp.project_path(GCP_PROJECT_ID),
inspect_job=inspect_job_data)