In dieser Anleitung wird beschrieben, wie Sie Daten beim Abfragen von Tabellen aus BigQuery mithilfe von Remotefunktionen und dem Schutz sensibler Daten de-identifizieren. Dieser Ansatz ist nützlich, um Echtzeit-Abfrageergebnisse zu bereinigen, um den Zugriff auf Daten zu minimieren, die nicht für die Analyse benötigt werden.
In dieser Anleitung wird die Ver- und Entschlüsselung von Daten bei der Übertragung veranschaulicht. Informationen zur Verwendung des Schutzes sensibler Daten zum Verschlüsseln inaktiver Daten finden Sie unter Sensible Daten im Speicher de-identifizieren.
Diese Anleitung richtet sich an Zielgruppen, die in den Bereichen Datensicherheit, Datenverarbeitung oder Datenanalyse zuständig sind. In diesem Leitfaden wird davon ausgegangen, dass Sie mit der Datenverarbeitung und dem Datenschutz vertraut sind. Sie müssen kein Experte sein. In dieser Anleitung wird außerdem davon ausgegangen, dass Sie grundlegende Cloud Shell- und SQL-Skripts ausführen können.
In dieser Anleitung werden SQL-basierte Funktionen, BigQuery, Remote-Funktionen, Cloud Run und der Schutz sensibler Daten verwendet.
De-Identifikationstechniken wie Verschlüsselung dienen zur Verschleierung sensibler Rohdaten in Ihren Daten. Mit diesen Techniken können Sie Ihre Daten weiterhin zusammenführen oder analysieren und gleichzeitig das Risiko der Datenverarbeitung reduzieren.
Unter Umständen gibt es Richtlinien oder behördliche Anforderungen, durch die Unternehmen nur de-identifizierte Daten in ihrem Cloud Data Warehouse speichern dürfen. Außerdem müssen sie möglicherweise die de-identifizierten Daten effizient für die Berichterstellung neu identifizieren.
Um das Risiko der Verarbeitung großer Mengen sensibler Daten zu minimieren, können Sie eine automatisierte Pipeline zur Datentransformation verwenden, um de-identifizierte Datasets zu erstellen. Sie können diese Anleitung verwenden, um diese Pipeline durch eine SQL-Abfrage nur zur Re-Identifikation oder sowohl zur De-Identifikation als auch zur Re-Identifikation zu ersetzen. In dieser Anleitung erfahren Sie, wie Sie sowohl eine De-Identifikation als auch eine Re-Identifikation mit einem zentralen Dienst durchführen, der in Cloud Run gehostet wird. Sie können diesen zentralen Dienst in der gesamten Organisation verwenden, ohne einen Dataflow-Cluster einrichten oder warten zu müssen.
Mit dem Schutz sensibler Daten können Datasets klassifiziert werden, indem die Daten auf vertrauliche Informationen geprüft werden. Der Schutz sensibler Daten umfasst mehr als 150 integrierte Klassifikatoren, sogenannte infoTypes. Für die De-Identifikation von Daten mit der Cloud Data Loss Prevention API sind Datenpipelines und Anwendungen erforderlich. Diese Anleitung soll Ihren Datenanalysten, Entwicklern oder Data Scientists dabei helfen, mithilfe von SQL-Funktionen dasselbe Ergebnis zu erzielen.
Am Ende dieser Anleitung können Sie eine Abfrage wie die folgende schreiben. Die sensiblen Daten werden de-identifiziert und im Abfrageergebnis neu identifiziert.
SELECT
pii_column,
fns.dlp_freetext_encrypt(pii_column) AS dlp_encrypted,
fns.dlp_freetext_decrypt(fns.dlp_freetext_encrypt(pii_column)) AS dlp_decrypted
FROM
UNNEST(
[
'My name is John Doe. My email is john.doe@example.com']) AS pii_column
Die Ausgabe sieht in etwa so aus:
Row | pii_column |
dlp_encrypted |
dlp_decrypted |
---|---|---|---|
1 |
My name is John Doe. My email is john.doe@example.com |
My name is John Doe. My email is
BQ_TRF_EMAIL(40):AQy6lGvwKR+AiiRqJpEr+nBzZUzOcjXkXamUugU= |
My name is John Doe. My email is john.doe@example.com |
Architektur
Das folgende Diagramm zeigt, wie in dieser Anleitung BigQuery als Data Warehouse, der Schutz sensibler Daten zur De-Identifikation und Re-Identifikation von Daten und Cloud Run zum Hosten der Remote-Funktionen verwendet werden.
Lernziele
- Cloud Run-Dienst bereitstellen, der De-Identifikationsfunktionen zum Schutz sensibler Daten bietet
- BigQuery-Remote-Funktionen erstellen, die De-Identifikationsvorlagen für den Schutz sensibler Daten verwenden
- Überprüfen Sie die Datenverschlüsselung in BigQuery mithilfe einer SQL-Abfrage.
Kosten
In diesem Dokument verwenden Sie die folgenden kostenpflichtigen Komponenten von Google Cloud:
Mit dem Preisrechner können Sie eine Kostenschätzung für Ihre voraussichtliche Nutzung vornehmen.
Nach Abschluss der in diesem Dokument beschriebenen Aufgaben können Sie weitere Kosten vermeiden, indem Sie die erstellten Ressourcen löschen. Weitere Informationen finden Sie unter Bereinigen.
Hinweise
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry, BigQuery, BigQuery Connection API, Cloud Build, Cloud Data Loss Prevention API, Cloud Key Management Service, Cloud Run, Container Registry, Identity and Access Management, Resource Manager, Secret Manager und Service Usage APIs:
gcloud services enable artifactregistry.googleapis.com
bigquery.googleapis.com bigqueryconnection.googleapis.com cloudbuild.googleapis.com cloudkms.googleapis.com cloudresourcemanager.googleapis.com containerregistry.googleapis.com dlp.googleapis.com iam.googleapis.com run.googleapis.com secretmanager.googleapis.com serviceusage.googleapis.com - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Artifact Registry, BigQuery, BigQuery Connection API, Cloud Build, Cloud Data Loss Prevention API, Cloud Key Management Service, Cloud Run, Container Registry, Identity and Access Management, Resource Manager, Secret Manager und Service Usage APIs:
gcloud services enable artifactregistry.googleapis.com
bigquery.googleapis.com bigqueryconnection.googleapis.com cloudbuild.googleapis.com cloudkms.googleapis.com cloudresourcemanager.googleapis.com containerregistry.googleapis.com dlp.googleapis.com iam.googleapis.com run.googleapis.com secretmanager.googleapis.com serviceusage.googleapis.com
Umgebung vorbereiten
Klonen Sie in Cloud Shell das Quell-Repository:
git clone https://github.com/GoogleCloudPlatform/bigquery-dlp-remote-function.git
Wechseln Sie zum Verzeichnis für diese Anleitung:
cd bigquery-dlp-remote-function/
Ressourcen mithilfe eines Skripts bereitstellen
Wenn Sie das Bereitstellungsskript verwenden möchten, ohne Anpassungen vorzunehmen, gehen Sie so vor: Wenn Sie die Bereitstellung anpassen möchten, überspringen Sie diesen Abschnitt und lesen Sie stattdessen den Artikel Benutzerdefinierte Lösung manuell bereitstellen.
Legen Sie die Werte für die Felder PROJECT_ID und REGION fest:
# Project ID of the Google Cloud project PROJECT_ID="PROJECT_ID" # Google Cloud region to use for deployment of resources # Refer to https://cloud.google.com/about/locations REGION="REGION"
Ersetzen Sie Folgendes:
- PROJECT_ID: die ID des Projekts für diese Anleitung.
- REGION: Die Region, in der Sie die Daten speichern und verarbeiten möchten, z. B.
us-west1
. Geben Sie eine Region an, keine Zone.
Optional: Wenn Sie eine Inspektionsvorlage haben, die Sie verwenden möchten, setzen Sie das Feld DLP_INSPECT_TEMPLATE auf den vollständigen Ressourcennamen dieser Inspektionsvorlage. Die Inspektionsvorlage muss sich in derselben Region befinden, die Sie im Feld REGION festgelegt haben.
Achten Sie darauf, dass die Inspektionsvorlage alle infoTypes enthält, die in der De-Identifikationsvorlage verwendet werden.
Wenn Sie diesen Schritt überspringen, prüft der Schutz sensibler Daten die Daten mit einem systemstandardmäßigen Satz von infoType-Detektoren.
DLP_INSPECT_TEMPLATE="DLP_INSPECT_TEMPLATE"
Ersetzen Sie DLP_INSPECT_TEMPLATE durch den vollständigen Ressourcennamen der Inspektionsvorlage, z. B.
projects/PROJECT_ID/locations/REGION/inspectTemplates/TEMPLATE_ID
.Authentifizieren Sie sich mit den Standardanmeldedaten für Anwendungen:
gcloud auth application-default login && \ gcloud auth application-default set-quota-project "${PROJECT_ID}"
Initialisieren Sie das Terraform-Skript und führen Sie es aus, um alle Ressourcen zu erstellen:
terraform init && \ terraform apply \ -var "project_id=${PROJECT_ID}" \ -var "region=${REGION}" \ -var "dlp_inspect_template_full_path=${DLP_INSPECT_TEMPLATE}"
Das System zeigt alle Aktionen an, die Terraform ausführt. Überprüfen Sie die Aktionen. Geben Sie
yes
ein, um fortzufahren.Überprüfen Sie, ob Daten ver- und entschlüsselt werden können.
Benutzerdefinierte Lösung manuell bereitstellen
Wenn Sie die Bereitstellung anpassen möchten, führen Sie die folgenden Schritte aus. Wenn Sie das bereitgestellte Bereitstellungsskript ohne Anpassungen oder manuelle Schritte verwenden möchten, lesen Sie stattdessen die Informationen unter Ressourcen mit einem Skript bereitstellen.
Umgebungsvariablen festlegen
Legen Sie in Cloud Shell die folgenden Umgebungsvariablen fest:
PROJECT_ID="PROJECT_ID"
REGION="REGION"
CLOUD_RUN_SERVICE_NAME="CLOUD_RUN_SERVICE_NAME"
ARTIFACT_REGISTRY_NAME="ARTIFACT_DOCKER_REGISTRY_NAME"
Ersetzen Sie Folgendes:
- PROJECT_ID: die ID des Projekts für diese Anleitung.
- REGION: Die Region, in der Sie die Daten speichern und verarbeiten möchten, z. B.
us-west1
. Geben Sie eine Region an, keine Zone. - CLOUD_RUN_SERVICE_NAME: ein Name für den neuen Cloud Run-Dienst. Sie können bis zu 15 Zeichen eingeben.
- ARTIFACT_REGISTRY_NAME ist ein Name für die neue Artifact Registry zum Speichern von Container-Images.
Dienstkonto für den Cloud Run-Dienst erstellen
Erstellen Sie ein Dienstkonto:
RUNNER_SA_NAME="${CLOUD_RUN_SERVICE_NAME}-runner" RUNNER_SA_EMAIL="${RUNNER_SA_NAME}@${PROJECT_ID}.iam.gserviceaccount.com" gcloud iam service-accounts create "${RUNNER_SA_NAME}" \ --project="${PROJECT_ID}" \ --description "Runner for BigQuery remote function execution" \ --display-name "${RUNNER_SA_NAME}"
Gewähren Sie die erforderlichen Rollen für den Schutz sensibler Daten.
Weisen Sie die Rolle DLP-Leser zu:
gcloud projects add-iam-policy-binding "${PROJECT_ID}" \ --member="serviceAccount:${RUNNER_SA_EMAIL}" \ --role='roles/dlp.reader'
Weisen Sie die Rolle DLP-Nutzer zu:
gcloud projects add-iam-policy-binding "${PROJECT_ID}" \ --member="serviceAccount:${RUNNER_SA_EMAIL}" \ --role='roles/dlp.user'
Cloud Run-Dienst bereitstellen
So stellen Sie die Anwendung bereit:
Optional: Sie können die Standardwerte ändern, indem Sie die Umgebungsvariablen ändern oder die Datei
src/main/resources/aes.properties
aktualisieren.Erstellen Sie ein Artifact Registry-Repository zum Speichern des Container-Images der Funktion:
gcloud artifacts repositories create "${ARTIFACT_REGISTRY_NAME}" \ --repository-format=docker \ --location="${REGION}" \ --description="Container images repository for BigQuery Functions" \ --project="${PROJECT_ID}"
Kompilieren Sie die Anwendung und stellen Sie sie mit Cloud Build in Cloud Run bereit:
gcloud builds submit \ --project ${PROJECT_ID} \ --substitutions=_CONTAINER_IMAGE_NAME="${REGION}-docker.pkg.dev/${PROJECT_ID}/${ARTIFACT_REGISTRY_NAME}/${CLOUD_RUN_SERVICE_NAME}:latest" \ --machine-type=e2-highcpu-8 && \ gcloud beta run deploy ${CLOUD_RUN_SERVICE_NAME} \ --image="${REGION}-docker.pkg.dev/${PROJECT_ID}/${ARTIFACT_REGISTRY_NAME}/${CLOUD_RUN_SERVICE_NAME}:latest" \ --execution-environment=gen2 \ --platform=managed \ --region="${REGION}" \ --service-account="${RUNNER_SA_EMAIL}" \ --cpu=4 \ --memory=8Gi \ --no-allow-unauthenticated \ --project ${PROJECT_ID} \ --update-env-vars=PROJECT_ID=${PROJECT_ID}
Das Ende der Ausgabe sieht in etwa so aus:
ID: 403a276e-b0c6-41f3-aaed-f0ec9f9cedba CREATE_TIME: 2023-02-04T01:52:15+00:00 DURATION: 1M59S SOURCE: gs://PROJECT_ID_cloudbuild/source/1675475534.124241-9c43787f64e04cfd9e4a1979d3324fe0.tgz IMAGES: gcr.io/PROJECT_ID/CLOUD_RUN_SERVICE_NAME (+1 more) STATUS: SUCCESS Deploying container to Cloud Run service [CLOUD_RUN_SERVICE_NAME] in project [PROJECT_ID] region [REGION] OK Deploying new service... Done. OK Creating Revision... Revision deployment finished. Checking container heal th. OK Routing traffic... Done. Service [CLOUD_RUN_SERVICE_NAME] revision [CLOUD_RUN_SERVICE_NAME-00001-tat] has been deployed and is serving 100 percent of traffic. Service URL: https://CLOUD_RUN_SERVICE_NAME-j2bpjx2xoq-uw.a.run.app
Rufen Sie die Cloud Run-URL ab und speichern Sie sie in Ihren Umgebungsvariablen:
RUN_URL="$(gcloud run services describe ${CLOUD_RUN_SERVICE_NAME} --region \ ${REGION} --project ${PROJECT_ID} --format="get(status.address.url)")"
De-Identifikationsvorlage für den Schutz sensibler Daten erstellen
Mit De-Identifikationsvorlagen für den Schutz sensibler Daten können Sie Ihre De-Identifikationseinstellungen speichern, damit Sie sie für mehrere Vorgänge und Datenquellen wiederverwenden können.
In diesem Schritt wird die Datei sample_dlp_deid_config.json
verwendet, die eine Beispielvorlage für die De-Identifikation enthält.
Erstellen Sie die Vorlage in Cloud Shell:
DEID_TEMPLATE=$(curl -X POST \
-H "Authorization: Bearer `gcloud auth print-access-token`" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: ${PROJECT_ID}" \
--data-binary "@sample_dlp_deid_config.json" \
"https://dlp.googleapis.com/v2/projects/${PROJECT_ID}/locations/${REGION}/deidentifyTemplates")
DEID_TEMPLATE_NAME="$(echo ${DEID_TEMPLATE} | jq -r '.name')"
Google empfiehlt, einen verpackten Schlüssel zu verwenden, wenn Sie die Verschlüsselung sensibler Daten für sensible Arbeitslasten durchführen. Zu Demonstrationszwecken wird in dieser Anleitung ein entpackter Schlüssel verwendet. Weitere Informationen zum Erstellen eines verpackten Schlüssels und zum Verwenden dieses Schlüssels in De-Identifikations- und Re-Identifikationsanfragen finden Sie unter Sensible Daten de-identifizieren und re-identifizieren.
BigQuery-Verbindung zu Cloud Run erstellen
Erstellen Sie in Cloud Shell eine BigQuery-Verbindung, um auf Cloud Run zuzugreifen:
bq mk --connection \ --display_name='External transform function connection' \ --connection_type=CLOUD_RESOURCE \ --project_id="${PROJECT_ID}" \ --location="${REGION}" \ ext-${CLOUD_RUN_SERVICE_NAME}
Suchen Sie das BigQuery-Dienstkonto, das für die Verbindung verwendet wird, und legen Sie es fest:
CONNECTION_SA="$(bq --project_id ${PROJECT_ID} --format json show \ --connection ${PROJECT_ID}.${REGION}.ext-${CLOUD_RUN_SERVICE_NAME} \ | jq -r '.cloudResource.serviceAccountId')"
Weisen Sie dem Dienstkonto die Rolle Cloud Run Invoker zu:
gcloud projects add-iam-policy-binding ${PROJECT_ID} \ --member="serviceAccount:${CONNECTION_SA}" \ --role='roles/run.invoker'
BigQuery-Dataset für Remote-Funktionen erstellen
Definieren Sie das BigQuery-Dataset für die Remote-Funktionen:
BQ_FUNCTION_DATASET="fns"
Erstellen Sie das Dataset, falls es noch nicht vorhanden ist:
bq mk --dataset \ --project_id ${PROJECT_ID} \ --location ${REGION} \ ${BQ_FUNCTION_DATASET}
Remote-Funktionen zum Schutz sensibler Daten erstellen
Optional: Wenn Sie eine Inspektionsvorlage haben, die Sie verwenden möchten, legen Sie die Variable DLP_INSPECT_TEMPLATE auf den vollständigen Ressourcennamen dieser Inspektionsvorlage fest. Die Inspektionsvorlage muss sich in derselben Region befinden, die Sie in der Umgebungsvariablen REGION festgelegt haben.
Achten Sie darauf, dass die Inspektionsvorlage alle infoTypes enthält, die in der De-Identifikationsvorlage verwendet werden.
Wenn Sie diesen Schritt überspringen, prüft der Schutz sensibler Daten die Daten mit einem systemstandardmäßigen Satz von infoType-Detektoren.
DLP_INSPECT_TEMPLATE="DLP_INSPECT_TEMPLATE"
Ersetzen Sie DLP_INSPECT_TEMPLATE durch den vollständigen Ressourcennamen der Inspektionsvorlage, z. B.
projects/PROJECT_ID/locations/REGION/inspectTemplates/TEMPLATE_ID
.Erstellen Sie die De-Identifikationsfunktion für den Schutz sensibler Daten:
bq query --project_id ${PROJECT_ID} \ --use_legacy_sql=false \ "CREATE OR REPLACE FUNCTION ${BQ_FUNCTION_DATASET}.dlp_freetext_encrypt(v STRING) RETURNS STRING REMOTE WITH CONNECTION \`${PROJECT_ID}.${REGION}.ext-${CLOUD_RUN_SERVICE_NAME}\` OPTIONS (endpoint = '${RUN_URL}', user_defined_context = [('mode', 'deidentify'),('algo','dlp'),('dlp-deid-template','${DEID_TEMPLATE_NAME}'),('dlp-inspect-template', '${DLP_INSPECT_TEMPLATE}')]);"
Erstellen Sie die Re-Identifikationsfunktion für den Schutz sensibler Daten:
bq query --project_id ${PROJECT_ID} \ --use_legacy_sql=false \ "CREATE OR REPLACE FUNCTION ${BQ_FUNCTION_DATASET}.dlp_freetext_decrypt(v STRING) RETURNS STRING REMOTE WITH CONNECTION \`${PROJECT_ID}.${REGION}.ext-${CLOUD_RUN_SERVICE_NAME}\` OPTIONS (endpoint = '${RUN_URL}', user_defined_context = [('mode', 'reidentify'),('algo','dlp'),('dlp-deid-template','${DEID_TEMPLATE_NAME}'),('dlp-inspect-template', '${DLP_INSPECT_TEMPLATE}')]);"
De-Identifikation und Re-Identifikation bestätigen
So prüfen Sie, ob die Lösung Daten de-identifiziert und re-identifiziert:
Console
Wechseln Sie in der Google Cloud Console zu BigQuery.
BigQuery wird in dem Projekt geöffnet, auf das zuletzt zugegriffen wurde.
Klicken Sie zum Öffnen eines Abfrageeditors auf
Neue Abfrage erstellen.Geben Sie die folgende Abfrage ein:
SELECT pii_column, fns.dlp_freetext_encrypt(pii_column) AS dlp_encrypted, fns.dlp_freetext_decrypt(fns.dlp_freetext_encrypt(pii_column)) AS dlp_decrypted FROM UNNEST( [ 'My name is John Doe. My email is john.doe@example.com', 'Some non PII data', '650-253-0000', 'some script with simple number 1234']) AS pii_column
Klicken Sie auf Ausführen.
bq
Legen Sie die Umgebungsvariable für das Dataset fest:
BQ_FUNCTION_DATASET="fns"
Führen Sie die Abfrage aus:
bq query --project_id ${PROJECT_ID} \ --use_legacy_sql=false \ " SELECT pii_column, ${BQ_FUNCTION_DATASET}.dlp_freetext_encrypt(pii_column) AS dlp_encrypted, ${BQ_FUNCTION_DATASET}.dlp_freetext_decrypt(${BQ_FUNCTION_DATASET}.dlp_freetext_encrypt(pii_column)) AS dlp_decrypted FROM UNNEST( [ 'My name is John Doe. My email is john.doe@example.com', 'Some non PII data', '650-253-0000', 'some script with simple number 1234']) AS pii_column"
Die Ausgabe sieht in etwa so aus:
Row | pii_column |
dlp_encrypted |
dlp_decrypted |
---|---|---|---|
1 |
My name is John Doe. My email is john.doe@example.com |
My name is John Doe. My email is
BQ_TRF_EMAIL(40):AQy6lGvwKR+AiiRqJpEr+nBzZUzOcjXkXamUugU= |
My name is John Doe. My email is john.doe@example.com |
2 |
Some non PII data |
Some non PII data |
Some non PII data |
3 |
650-253-0000 |
BQ_TRF_PH(40):AeKpGU5KBXaTyecCun7dv1hHht5w5Q2PTpvkRC4= |
650-253-0000 |
4 |
some script with simple number 1234 |
some script with simple number 1234 |
some script with simple number 1234 |
Hinweise
Wenn Sie diese Anleitung an Ihre Anforderungen anpassen, sollten Sie Folgendes berücksichtigen:
- Die De-Identifikation und Re-Identifikation wird über einen Cloud Run-Dienst verarbeitet. Stellen Sie die CPU und den Arbeitsspeicher von Cloud Run gemäß Ihren Rechenanforderungen bereit. Weitere Informationen finden Sie unter CPU-Limits und Arbeitsspeicherlimits für Cloud Run.
- Beachten Sie bei der Verwendung des Schutzes sensibler Daten die Nutzungslimits und die Empfehlungen zur Kostenkontrolle.
Beschränken Sie die Elemente, die Sie über die Remote-Funktion zum Schutz sensibler Daten übergeben, auf maximal 10.000, um die Kosten und die gesamte Nutzung Ihres Kontingents für den Schutz sensibler Daten zu kontrollieren. Die Lösung kann die Anfragen automatisch in Batches zusammenfassen, um die folgenden Anfragelimits für den Schutz sensibler Daten zu bewältigen:
- Maximale Anzahl von Tabellenwerten: 50.000
- Standardlimit für Anfragegrößen: 0,5 MB
Die endgültigen und gefilterten Ergebnisse der Abfrage sollten an die Funktion zum Schutz sensibler Daten und nicht an die Quelle übergeben werden.
Bei dieser Lösung ist jeder Wert in der Spalte
pii_column
ein Element.My name is John Doe. My email is john.doe@example.com
entspricht z. B. einem Element.Achten Sie darauf, dass sich das BigQuery-Dataset, der Cloud Run-Dienst und die Vorlagen für den Schutz sensibler Daten in derselben Cloudregion befinden.
Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, löschen Sie entweder das Projekt, das die Ressourcen enthält, oder Sie behalten das Projekt und löschen die einzelnen Ressourcen.
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
Nächste Schritte
- Weitere Informationen zu BigQuery-Remote-Funktionen
- Sensible Daten de-identifizieren
- Arbeiten Sie ein Beispiel durch, das zeigt, wie Sie einen verpackten Schlüssel erstellen, Inhalte tokenisieren und tokenisierte Inhalte neu identifizieren.
- Personenidentifizierbare Informationen in umfangreichen Datasets mit dem Schutz sensibler Daten de-identifizieren und re-identifizieren
- Mehr über Cloud KMS erfahren