Spesialhåndtere datasett
I noen tilfeller har man behov for å håndtere data på Saga som har spesifikke restriksjoner eller krever spesialhåndtering. Slike data kan ligge i et datasett som man setter en spesifikk tag på.
Tags på dataplattformen består av en nøkkel (tag key) og en eller flere tilsvarende verdier (tag values). I BigQuery kan man se hvilke tags som er satt ved å se på Dataset info. Eksempelet under viser et datasettet hvor taggen PII
med verdien ikke-sensitive
er satt.
Sette tags
Tagging av et datasett gjøres som en del av en pipeline. Det finnes en operator som kan benyttes BigQuerySetTagOnDatasetOperator
, se eksempelkode under:
from gcp_tag_operators import BigQuerySetTagOnDatasetOperator
from pipeline import SagaContext, make_pipeline
from airflow.providers.google.cloud.operators.bigquery import (
BigQueryCreateEmptyDatasetOperator,
BigQueryDeleteDatasetOperator,
)
"""
An example of how to create a dataset and place a pii tag on that dataset.
If you set a pii tag that is "ikke-sensitive" or "sensitive", the dataset will not be shared with others by default.
A "pii" tag with a value of "nei" is equivalent to no pii tag at all, and means that the dataset will be shared with others by default.
Note that the last step is just to clean up after the example.
Use BigQuerySetTagOnDatasetOperator.Tags to see available tags and values.
"""
def pipeline(context: SagaContext):
create_new_dataset = BigQueryCreateEmptyDatasetOperator(
task_id="create_new_dataset",
dataset_id="gcp_tag_test",
project_id=context.project_id,
location="EU",
)
set_tags = BigQuerySetTagOnDatasetOperator(
task_id="set_tags",
dataset_id="gcp_tag_test",
tag_value=BigQuerySetTagOnDatasetOperator.Tags.Pii.IKKE_SENSITIVE,
project_id=context.project_id,
)
delete_dataset = BigQueryDeleteDatasetOperator(
task_id="delete_dataset",
dataset_id="gcp_tag_test",
)
create_new_dataset >> set_tags >> delete_dataset
dag = make_pipeline(pipeline, schedule=None)
Den samme operatoren kan benyttes for å endre verdien på en tag, eksempelvis fra pii:ikke-sensitiv
til pii:nei
. For øyeblikket er det ikke mulig å slette en tag key etter at den er satt på en ressurs.
Tilgjengelige tags
PII
Tagen pii
brukes for å indikere om det finnes persondata i dataen.
Merk: I utgangspunktet skal du ikke behandle persondata data på Saga. Se også når bør du ikke velge Saga for relevant informasjon. Ta kontakt med Team Yggdrasil ved spørsmål.
Tag Value | Beskrivelse |
---|---|
nei | Brukes når det ikke er PII data. Tilsvarende som at ingen tag key er satt. |
ikke-sensitive | Inneholder persondata som ikke er sensitive. |
sensitive | Inneholder persondata som er sensitive. |
Default share policy
Tagen default-share-policy
brukes for å tilpasset tilgangsstyring på datasettet, eksempelvis begrenset leserettigheter til de underliggende tabellene. Se Manuell tilgangsstyring for når denne tagen skal brukes.
Tag Value | Beskrivelse |
---|---|
organization | Datasettet er default tilgjengelig for alle brukere på Saga. Tilsvarende som at ingen tag key er satt og datasettet deles med alle brukere som normalt. |
team | Datasetter er default kun tilgjengelig for teamet. Teamet kan selv administrere ytterligere tilgang til datasettet. |