Esaminare e applicare i consigli sui ruoli per i set di dati BigQuery

Questa pagina spiega come visualizzare, comprendere e applicare i consigli per i ruoli IAM per i set di dati BigQuery. I suggerimenti sui ruoli ti aiutano ad applicare il principio del privilegio minimo assicurando che le entità dispongano solo delle autorizzazioni di cui hanno effettivamente bisogno.

Prima di iniziare

  • Enable the IAM and Recommender APIs.

    Enable the APIs

  • Scopri di più sui suggerimenti sui ruoli.

  • Configurare l'autenticazione.

    Select the tab for how you plan to use the samples on this page:

    gcloud

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    REST

    Per utilizzare gli esempi dell'API REST in questa pagina in un ambiente di sviluppo locale, utilizza le credenziali fornite a gcloud CLI.

      Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init

    Per ulteriori informazioni, consulta Eseguire l'autenticazione per l'utilizzo di REST nella documentazione Google Cloud sull'autenticazione.

Ruoli IAM obbligatori

Per ottenere le autorizzazioni necessarie per gestire i consigli sui ruoli a livello di set di dati, chiedi all'amministratore di concederti i seguenti ruoli IAM:

Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per gestire i consigli sui ruoli a livello di set di dati. Per visualizzare le autorizzazioni esatte richieste, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

Per gestire i consigli sui ruoli a livello di set di dati sono necessarie le seguenti autorizzazioni:

  • Per visualizzare i consigli:
    • iam.roles.get sul tuo progetto
    • iam.roles.list sul tuo progetto
    • recommender.iamPolicyRecommendations.get sul tuo progetto
    • recommender.iamPolicyRecommendations.list sul tuo progetto
    • recommender.iamPolicyInsights.get sul tuo progetto
    • recommender.iamPolicyInsights.list sul tuo progetto
    • bigquery.datasets.getIamPolicy nel tuo set di dati
  • Per applicare e ignorare i consigli:
    • recommender.iamPolicyRecommendations.update sul tuo progetto
    • bigquery.datasets.setIamPolicy nel tuo set di dati

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Revisione e applicazione dei suggerimenti

Puoi esaminare e applicare i consigli sui ruoli a livello di set di dati con Google Cloud CLI e l'API Recommender.

gcloud

Esamina i consigli:

Per elencare i consigli a livello di set di dati, esegui il comando gcloud recommender recommendations list filtrando solo i consigli per i set di dati BigQuery:

gcloud recommender recommendations list \
    --location=LOCATION \
    --recommender=google.iam.policy.Recommender \
    --project=PROJECT_ID \
    --format=json \
    --filter="recommenderSubtype:REMOVE_ROLE_BIGQUERY_DATASET OR recommenderSubtype:REPLACE_ROLE_BIGQUERY_DATASET"

Sostituisci i seguenti valori:

  • LOCATION: la regione in cui si trovano i set di dati Cloud Storage, ad esempio us o us-central1.
  • PROJECT_ID: l'ID del Google Cloud progetto che contiene i set di dati BigQuery. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project.

La risposta è simile al seguente esempio. In questo esempio, tutti gli utenti con il ruolo Editor nel progetto my-project (projectEditor:my-project) hanno il ruolo Editor dati BigQuery (roles/bigquery.dataEditor) nel set di dati dataset-1. Tuttavia, questo ruolo non è stato utilizzato negli ultimi 90 giorni. Di conseguenza, il suggerimento per il ruolo ti consiglia di revocare il ruolo:

[
  {
    "associatedInsights": [
      {
        "insight": "projects/1069248613794/locations/us/insightTypes/google.iam.policy.Insight/insights/984eccca-0241-472f-baab-2557dd0d7282"
      }
    ],
    "content": {
      "operationGroups": [
        {
          "operations": [
            {
              "action": "remove",
              "path": "/iamPolicy/bindings/*/members/*",
              "pathFilters": {
                "/iamPolicy/bindings/*/condition/expression": "",
                "/iamPolicy/bindings/*/members/*": "projectEditor:my-project",
                "/iamPolicy/bindings/*/role": "roles/bigquery.dataEditor"
              },
              "resource": "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1",
              "resourceType": "bigquery.googleapis.com/Dataset"
            }
          ]
        }
      ],
      "overview": {
        "addedRoles": [],
        "member": "projectEditor:my-project",
        "minimumObservationPeriodInDays": "0",
        "removedRole": "roles/bigquery.dataEditor",
        "resource": "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1"
      }
    },
    "description": "This role has not been used during the observation window.",
    "etag": "\"3b123bc08d028128\"",
    "lastRefreshTime": "2024-02-04T08:00:00Z",
    "name": "projects/1069248613794/locations/us/recommenders/google.iam.policy.Recommender/recommendations/0e9831fe-6810-476b-b14d-2b64bda17288",
    "primaryImpact": {
      "category": "SECURITY",
      "securityProjection": {
        "details": {
          "revokedIamPermissionsCount": 37
        }
      }
    },
    "priority": "P4",
    "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
    "stateInfo": {
      "state": "ACTIVE"
    },
    "targetResources": [
      "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1"
    ]
  },
  {
    "associatedInsights": [
      {
        "insight": "projects/1069248613794/locations/us/insightTypes/google.iam.policy.Insight/insights/9d11057e-9c71-410f-ad55-fc82d87761d0"
      }
    ],
    "content": {
      "operationGroups": [
        {
          "operations": [
            {
              "action": "remove",
              "path": "/iamPolicy/bindings/*/members/*",
              "pathFilters": {
                "/iamPolicy/bindings/*/condition/expression": "",
                "/iamPolicy/bindings/*/members/*": "user:alicexz@google.com",
                "/iamPolicy/bindings/*/role": "roles/bigquery.dataOwner"
              },
              "resource": "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1",
              "resourceType": "bigquery.googleapis.com/Dataset"
            }
          ]
        }
      ],
      "overview": {
        "addedRoles": [],
        "member": "user:alicexz@google.com",
        "minimumObservationPeriodInDays": "0",
        "removedRole": "roles/bigquery.dataOwner",
        "resource": "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1"
      }
    },
    "description": "This role has not been used during the observation window.",
    "etag": "\"1da285f7aa6438f1\"",
    "lastRefreshTime": "2024-02-04T08:00:00Z",
    "name": "projects/1069248613794/locations/us/recommenders/google.iam.policy.Recommender/recommendations/56013294-cf81-402a-8cde-25489545777c",
    "primaryImpact": {
      "category": "SECURITY",
      "securityProjection": {
        "details": {
          "revokedIamPermissionsCount": 64
        }
      }
    },
    "priority": "P4",
    "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
    "stateInfo": {
      "state": "ACTIVE"
    },
    "targetResources": [
      "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1"
    ]
  }
]

Esamina attentamente ogni consiglio e valuta in che modo cambierà l'accesso dell'entità alle risorse Google Cloud . Per scoprire come esaminare i consigli dallgcloud CLI, consulta la sezione Esaminare i consigli in questa pagina.

Per applicare un consiglio:

  1. Utilizza il comando gcloud recommender recommendations mark-claimed per impostare lo stato del consiglio su CLAIMED,, in modo da impedire la sua modifica durante l'applicazione:

    gcloud recommender recommendations mark-claimed \
        RECOMMENDATION_ID \
        --location=LOCATION \
        --recommender=google.iam.policy.Recommender \
        --project=PROJECT_ID \
        --format=FORMAT \
        --etag=ETAG \
        --state-metadata=STATE_METADATA
    

    Sostituisci i seguenti valori:

    • RECOMMENDATION_ID: l'identificatore univoco del consiglio. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • LOCATION: la regione in cui si trova il set di dati BigQuery, ad esempio us o us-central1.
    • PROJECT_ID: l'ID del Google Cloud progetto che contiene i set di dati BigQuery. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project.
    • FORMAT: il formato della risposta. Utilizza json o yaml.
    • ETAG: il valore del campo etag nel consiglio, ad esempio "dd0686e7136a4cbb". Tieni presente che questo valore può includere virgolette.
    • STATE_METADATA: facoltativo. Coppie chiave-valore separate da virgole che contengono la tua scelta di metadati sul consiglio. Ad esempio, --state-metadata=reviewedBy=alice,priority=high. I metadati sostituiscono il campo stateInfo.stateMetadata nel consiglio.

    Se il comando va a buon fine, la risposta mostra il consiglio in uno stato CLAIMED, come mostrato nell'esempio seguente. Per chiarezza, l'esempio omette la maggior parte dei campi:

    ...
    "priority": "P1",
    "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
    "stateInfo": {
      "state": "CLAIMED"
    }
    ...
  2. Ottieni il criterio di autorizzazione per il set di dati, quindi modifica e imposta il criterio di autorizzazione in modo che rifletta il consiglio.

  3. Aggiorna lo stato del consiglio su SUCCEEDED se hai potuto applicarlo o su FAILED se non è stato possibile applicarlo:

    gcloud recommender recommendations COMMAND \
        RECOMMENDATION_ID \
        --location=LOCATION \
        --recommender=google.iam.policy.Recommender \
        --project=PROJECT_ID \
        --format=FORMAT \
        --etag=ETAG \
        --state-metadata=STATE_METADATA
    

    Sostituisci i seguenti valori:

    • COMMAND: utilizza mark-succeeded se hai potuto applicare il consiglio o mark-failed se non hai potuto farlo.
    • RECOMMENDATION_ID: l'identificatore univoco del consiglio. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • LOCATION: la regione in cui si trova il set di dati BigQuery, ad esempio us o us-central1.
    • PROJECT_ID: l'ID del Google Cloud progetto che contiene i set di dati BigQuery. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project.
    • FORMAT: il formato della risposta. Utilizza json o yaml.
    • ETAG: il valore del campo etag nel consiglio, ad esempio "dd0686e7136a4cbb". Tieni presente che questo valore può includere virgolette.
    • STATE_METADATA: facoltativo. Coppie chiave-valore separate da virgole che contengono la tua scelta di metadati sul consiglio. Ad esempio, --state-metadata=reviewedBy=alice,priority=high. I metadati sostituiscono il campo stateInfo.stateMetadata nel consiglio.

    Ad esempio, se hai contrassegnato il consiglio come riuscito, la risposta mostra il consiglio con lo stato SUCCEEDED. Per chiarezza, questo esempio omette la maggior parte dei campi:

    ...
    "priority": "P1",
    "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
    "stateInfo": {
      "state": "SUCCEEDED"
    }
    ...

REST

Esamina i consigli:

Per elencare tutti i consigli disponibili per i tuoi set di dati BigQuery, utilizza il metodo recommendations.list dell'API Recommender.

Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

  • PROJECT_ID: l'ID del Google Cloud progetto che contiene i set di dati BigQuery. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project.
  • LOCATION: la regione in cui si trovano i set di dati BigQuery, ad esempio us o us-central1.
  • PAGE_SIZE: facoltativo. Il numero massimo di risultati da restituire da questa richiesta. Se non viene specificato, il server determinerà il numero di risultati da restituire. Se il numero di consigli è superiore alle dimensioni della pagina, la risposta contiene un token di paginazione che puoi utilizzare per recuperare la pagina di risultati successiva.
  • PAGE_TOKEN: facoltativo. Il token di pagina restituito in una risposta precedente di questo metodo. Se specificato, l'elenco dei consigli inizierà dove è terminata la richiesta precedente.
  • PROJECT_ID: il tuo Google Cloud ID progetto. Gli ID progetto sono stringhe alfanumeriche, come my-project.

Metodo HTTP e URL:

GET https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.iam.policy.Recommender/recommendations?filter=recommenderSubtype%20%3D%20REMOVE_ROLE_BIGQUERY_DATASET%20OR%20recommenderSubtype%20%3D%20REPLACE_ROLE_BIGQUERY_DATASET&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

Per inviare la richiesta, espandi una di queste opzioni:

La risposta è simile al seguente esempio. In questo esempio, tutti gli utenti con il ruolo Editor nel progetto "my-project" (projectEditor:my-project) hanno il ruolo Editor dati BigQuery (roles/bigquery.dataEditor) nel set di dati dataset-1. Tuttavia, questo ruolo non è stato utilizzato negli ultimi 90 giorni. Di conseguenza, il suggerimento per il ruolo ti consiglia di revocare il ruolo:

{
  "recommendations": [
    {
      "name": "projects/1069248613794/locations/us/recommenders/google.iam.policy.Recommender/recommendations/0e9831fe-6810-476b-b14d-2b64bda17288",
      "description": "This role has not been used during the observation window.",
      "lastRefreshTime": "2024-02-02T08:00:00Z",
      "primaryImpact": {
        "category": "SECURITY",
        "securityProjection": {
          "details": {
            "revokedIamPermissionsCount": 37
          }
        }
      },
      "content": {
        "operationGroups": [
          {
            "operations": [
              {
                "action": "remove",
                "resourceType": "bigquery.googleapis.com/Dataset",
                "resource": "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1",
                "path": "/iamPolicy/bindings/*/members/*",
                "pathFilters": {
                  "/iamPolicy/bindings/*/condition/expression": "",
                  "/iamPolicy/bindings/*/members/*": "projectEditor:my-project",
                  "/iamPolicy/bindings/*/role": "roles/bigquery.dataEditor"
                }
              }
            ]
          }
        ],
        "overview": {
          "resource": "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1",
          "member": "projectEditor:my-project",
          "removedRole": "roles/bigquery.dataEditor",
          "addedRoles": [],
          "minimumObservationPeriodInDays": "0"
        }
      },
      "stateInfo": {
        "state": "ACTIVE"
      },
      "etag": "\"d008ad3780bad5e0\"",
      "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
      "associatedInsights": [
        {
          "insight": "projects/1069248613794/locations/us/insightTypes/google.iam.policy.Insight/insights/984eccca-0241-472f-baab-2557dd0d7282"
        }
      ],
      "priority": "P4",
      "targetResources": [
        "//bigquery.googleapis.com/projects/my-project/datasets/dataset-1"
      ]
    }
  ]
}

Esamina attentamente ogni consiglio e valuta in che modo cambierà l'accesso dell'entità alle risorse Google Cloud . Per scoprire come esaminare i consigli dall'API REST, consulta la sezione Esaminare i consigli in questa pagina.

Per applicare un consiglio:

  1. Contrassegna il consiglio come CLAIMED:

    Per contrassegnare un consiglio come CLAIMED, in modo da impedirne la modifica durante l'applicazione, utilizza il metodo recommendations.markClaimed dell'API Recommender.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID del Google Cloud progetto che contiene i set di dati BigQuery. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project.
    • LOCATION: la regione in cui si trova il set di dati BigQuery, ad esempio us o us-central1.
    • RECOMMENDATION_ID: l'identificatore univoco per il consiglio. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • ETAG: il valore del etag campo nel consiglio, ad esempio "dd0686e7136a4cbb". Utilizza i backslash per eseguire l'escapismo delle virgolette, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: facoltativo. Un oggetto che contiene coppie chiave/valore con la tua scelta di metadati sul consiglio. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il stateInfo.stateMetadata campo nel consiglio.

    Metodo HTTP e URL:

    POST https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.iam.policy.Recommender/recommendations/RECOMMENDATION_ID:markClaimed

    Corpo JSON della richiesta:

    {
      "etag": "ETAG",
      "stateMetadata": {
        "STATE_METADATA"
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta mostra il consiglio in uno stato CLAIMED, come mostrato nell'esempio seguente. Per chiarezza, questo esempio omette la maggior parte dei campi:

    ...
    "stateInfo": {
      "state": "CLAIMED"
    },
    "etag": "\"7caf4103d7669e12\"",
    "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
    ...
    

  2. Ottieni il criterio di autorizzazione per il progetto, quindi modifica il criterio di autorizzazione in modo che rifletta il consiglio.

  3. Aggiorna lo stato del consiglio su SUCCEEDED se hai potuto applicarlo o su FAILED se non è stato possibile applicarlo:

    SUCCEEDED

    Per contrassegnare un consiglio come SUCCEEDED, a indicare che hai potuto applicarlo, utilizza il metodo recommendations.markSucceeded dell'API Recommender.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID del Google Cloud progetto che contiene i set di dati BigQuery. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project.
    • LOCATION: la regione in cui si trova il set di dati BigQuery, ad esempio us o us-central1.
    • RECOMMENDATION_ID: l'identificatore univoco per il consiglio. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • ETAG: il valore del etag campo nel consiglio, ad esempio "dd0686e7136a4cbb". Utilizza i backslash per eseguire l'escapismo delle virgolette, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: facoltativo. Un oggetto che contiene coppie chiave/valore con la tua scelta di metadati sul consiglio. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il stateInfo.stateMetadata campo nel consiglio.

    Metodo HTTP e URL:

    POST https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.iam.policy.Recommender/recommendations/RECOMMENDATION_ID:markSucceeded

    Corpo JSON della richiesta:

    {
      "etag": "ETAG",
      "stateMetadata": {
        "STATE_METADATA"
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta mostra il consiglio in uno stato SUCCEEDED, come mostrato nell'esempio seguente. Per chiarezza, questo esempio omette la maggior parte dei campi:

    ...
    "stateInfo": {
      "state": "SUCCEEDED"
    },
    "etag": "\"7caf4103d7669e12\"",
    "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
    ...
    

    FAILED

    Per contrassegnare un consiglio come FAILED, a indicare che non è stato possibile applicarlo, utilizza il metodo recommendations.markFailed dell'API Recommender.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID del Google Cloud progetto che contiene i set di dati BigQuery. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project.
    • LOCATION: la regione in cui si trova il set di dati BigQuery, ad esempio us o us-central1.
    • RECOMMENDATION_ID: l'identificatore univoco per il consiglio. Questo valore viene visualizzato alla fine del campo name nel consiglio. Ad esempio, se il campo name è projects/example-project/locations/global/recommenders/google.iam.policy.Recommender/recommendations/fb927dc1-9695-4436-0000-f0f285007c0f, l'ID consiglio è fb927dc1-9695-4436-0000-f0f285007c0f.
    • ETAG: il valore del etag campo nel consiglio, ad esempio "dd0686e7136a4cbb". Utilizza i backslash per eseguire l'escapismo delle virgolette, ad esempio "\"df7308cca9719dcc\"".
    • STATE_METADATA: facoltativo. Un oggetto che contiene coppie chiave/valore con la tua scelta di metadati sul consiglio. Ad esempio, {"reviewedBy": "alice", "priority": "high"}. I metadati sostituiscono il stateInfo.stateMetadata campo nel consiglio.

    Metodo HTTP e URL:

    POST https://recommender.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/recommenders/google.iam.policy.Recommender/recommendations/RECOMMENDATION_ID:markFailed

    Corpo JSON della richiesta:

    {
      "etag": "ETAG",
      "stateMetadata": {
        "STATE_METADATA"
      }
    }
    

    Per inviare la richiesta, espandi una di queste opzioni:

    La risposta mostra il consiglio in uno stato FAILED, come mostrato nell'esempio seguente. Per chiarezza, questo esempio omette la maggior parte dei campi:

    ...
    "stateInfo": {
      "state": "FAILED"
    },
    "etag": "\"7caf4103d7669e12\"",
    "recommenderSubtype": "REMOVE_ROLE_BIGQUERY_DATASET",
    ...
    

Informazioni sui consigli

Ogni consiglio include informazioni che ti aiutano a capire perché è stato fornito.

Per informazioni dettagliate sui campi di un consiglio, consulta il riferimento Recommendation.

Per visualizzare l'utilizzo delle autorizzazioni su cui si basa questo consiglio, consulta gli approfondimenti sui criteri associati al consiglio. Questi approfondimenti sono elencati nel campo associatedInsights. Per visualizzare un approfondimento sulle norme associato al consiglio:

  1. Copia l'ID dell'approfondimento associato. L'ID è tutto ciò che segue insights/ nel insight campo. Ad esempio, se il campo insight riporta projects/123456789012/locations/us/insightTypes/google.iam.policy.Insight/insights/7849add9-73c0-419e-b169-42b3671173fb, l'ID informazione è 7849add9-73c0-419e-b169-42b3671173fb.
  2. Segui le istruzioni per ottenere un'informazione sulle norme utilizzando l'ID informazione che hai copiato.

Passaggi successivi