Configurare i controlli dell'accesso per le origini dati personalizzate

Questa pagina descrive come applicare il controllo dell'accesso all'origine dati (noto anche come ACL) per le app di ricerca create utilizzando Cloud Storage o BigQuery.

Panoramica

Il controllo dell'accesso alle origini dati in Gemini Enterprise limita i dati che gli utenti possono visualizzare nei risultati dell'app di ricerca. Google utilizza il tuo provider di identità per identificare l'utente finale che esegue una ricerca e determinare se ha accesso ai documenti restituiti come risultati.

Supponiamo, ad esempio, che i dipendenti della tua azienda cerchino documenti BigQuery utilizzando la tua app di ricerca. Tuttavia, devi assicurarti che non possano visualizzare contenuti tramite l'app a cui non sono autorizzati ad accedere. Se hai configurato un pool di forza lavoro nel Google Cloud provider di identità della tua organizzazione, allora puoi specificare anche quel pool di forza lavoro in Gemini Enterprise. Ora, se un dipendente utilizza la tua app, riceve risultati di ricerca solo per i documenti a cui il suo account ha già accesso in BigQuery.

L'attivazione del controllo dell'accesso è una procedura una tantum. Per applicare il controllo dell'accesso a un' origine dati BigQuery o Cloud Storage, segui questi passaggi a seconda del tipo di dati, ad esempio dati strutturati o non strutturati.

Dati non strutturati da Cloud Storage

Quando configuri un datastore per i dati non strutturati di Cloud Storage, devi anche caricare i metadati ACL e impostare il data store come controllato dall'accesso:

  1. Quando prepari i dati, includi le informazioni ACL nei metadati utilizzando il acl_info campo. Ad esempio:

    {
       "id": "<your-id>",
       "jsonData": "<JSON string>",
       "content": {
         "mimeType": "<application/pdf or text/html>",
         "uri": "gs://<your-gcs-bucket>/directory/filename.pdf"
       },
       "acl_info": {
         "readers": [
           {
             "principals": [
               { "group_id": "group_1" },
               { "user_id": "user_1" }
             ]
           }
         ]
       }
     }
    

    Per saperne di più sui dati non strutturati con metadati, consulta la sezione Dati non strutturati di Preparare i dati per l'importazione.

  2. Quando segui i passaggi per la creazione del datastore in Creare un datastore di dati proprietari, puoi attivare il controllo dell'accesso eseguendo le seguenti operazioni nella console o utilizzando l'API:

    • Console: quando crei un datastore, seleziona Questo datastore contiene controllo dell'accesso accessi durante la creazione del datastore.
    • API: quando crei il datastore, includi il campo "aclEnabled": "true" nel payload JSON.
  3. Quando segui i passaggi per l'importazione dei dati in Creare un datastore di dati proprietari, assicurati di eseguire le seguenti operazioni:

    • Carica i metadati con le informazioni ACL dallo stesso bucket dei dati non strutturati.
    • Se utilizzi l'API, imposta GcsSource.dataSchema su document.

Dati strutturati da Cloud Storage

Quando configuri un datastore per i dati strutturati di Cloud Storage, devi anche caricare i metadati ACL e impostare il data store come controllato dall'accesso:

  1. Quando prepari i dati, includi le informazioni ACL nei metadati utilizzando il acl_info campo. Ad esempio:

    {
       "id": "<your-id>",
       "jsonData": "<JSON string>",
       "acl_info": {
         "readers": [
           {
             "principals": [
               { "group_id": "group_1" },
               { "user_id": "user_1" }
             ]
           }
         ]
       }
     }
    
  2. Quando segui i passaggi per la creazione del datastore in Creare un datastore di dati proprietari, puoi attivare il controllo dell'accesso eseguendo le seguenti operazioni nella console o utilizzando l'API:

    • Console: quando crei un datastore, seleziona Questo datastore contiene controllo dell'accesso accessi durante la creazione del datastore.
    • API: quando crei il datastore, includi il campo "aclEnabled": "true" nel payload JSON.
  3. Quando segui i passaggi per l'importazione dei dati in Creare un datastore di dati proprietari, assicurati di eseguire le seguenti operazioni:

    • Carica i metadati con le informazioni ACL dallo stesso bucket dei dati strutturati.
    • Se utilizzi l'API, imposta GcsSource.dataSchema su document

Dati non strutturati da BigQuery

Quando configuri un datastore per i dati non strutturati di BigQuery, devi impostare il datastore come controllato dall'accesso e fornire i metadati ACL utilizzando uno schema predefinito per Gemini Enterprise:

  1. Quando prepari i dati, specifica lo schema seguente. Non utilizzare uno schema personalizzato.

    [
      {
        "name": "id",
        "mode": "REQUIRED",
        "type": "STRING",
        "fields": []
      },
      {
        "name": "jsonData",
        "mode": "NULLABLE",
        "type": "STRING",
        "fields": []
      },
      {
        "name": "content",
        "type": "RECORD",
        "mode": "NULLABLE",
        "fields": [
          {
            "name": "mimeType",
            "type": "STRING",
            "mode": "NULLABLE"
          },
          {
            "name": "uri",
            "type": "STRING",
            "mode": "NULLABLE"
          }
        ]
      },
      {
        "name": "acl_info",
        "type": "RECORD",
        "mode": "NULLABLE",
        "fields": [
          {
            "name": "readers",
            "type": "RECORD",
            "mode": "REPEATED",
            "fields": [
              {
                "name": "principals",
                "type": "RECORD",
                "mode": "REPEATED",
                "fields": [
                  {
                    "name": "user_id",
                    "type": "STRING",
                    "mode": "NULLABLE"
                  },
                  {
                    "name": "group_id",
                    "type": "STRING",
                    "mode": "NULLABLE"
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
    
  2. Includi i metadati ACL come colonna nella tabella BigQuery.

  3. Quando segui i passaggi descritti in Creare un datastore di dati proprietari, attiva il controllo dell'accesso nella console o utilizzando l'API:

    • Console: quando crei un datastore, seleziona Questo datastore contiene controllo dell'accesso accessi durante la creazione del datastore.
    • API: quando crei il datastore, includi il campo "aclEnabled": "true" nel payload JSON.
  4. Quando segui i passaggi per l'importazione dei dati in Creare un datastore di dati proprietari, se utilizzi l'API, imposta BigQuerySource.dataSchema su document.

Dati strutturati da BigQuery

Quando configuri un datastore per i dati strutturati di BigQuery, devi impostare il datastore come controllato dall'accesso e fornire i metadati ACL utilizzando uno schema predefinito per Gemini Enterprise:

  1. Quando prepari i dati, specifica lo schema seguente. Non utilizzare uno schema personalizzato.

    [
      {
        "name": "id",
        "mode": "REQUIRED",
        "type": "STRING",
        "fields": []
      },
      {
        "name": "jsonData",
        "mode": "NULLABLE",
        "type": "STRING",
        "fields": []
      },
      {
        "name": "acl_info",
        "type": "RECORD",
        "mode": "NULLABLE",
        "fields": [
          {
            "name": "readers",
            "type": "RECORD",
            "mode": "REPEATED",
            "fields": [
              {
                "name": "principals",
                "type": "RECORD",
                "mode": "REPEATED",
                "fields": [
                  {
                    "name": "user_id",
                    "type": "STRING",
                    "mode": "NULLABLE"
                  },
                  {
                    "name": "group_id",
                    "type": "STRING",
                    "mode": "NULLABLE"
                  }
                ]
              }
            ]
          }
        ]
      }
    ]
    
  2. Includi i metadati ACL come colonna nella tabella BigQuery.

  3. Quando segui i passaggi descritti in Creare un datastore di dati proprietari, attiva il controllo dell'accesso nella console o utilizzando l'API:

    • Console: quando crei un datastore, seleziona Questo datastore contiene controllo dell'accesso accessi durante la creazione del datastore.
    • API: quando crei il datastore, includi il campo "aclEnabled": "true" nel payload JSON.
  4. Quando segui i passaggi per l'importazione dei dati in Creare un datastore di dati proprietari, assicurati di eseguire le seguenti operazioni:

    • Se utilizzi la console, quando specifichi il tipo di dati che stai caricando, seleziona JSONL per dati strutturati con metadati.
    • Se utilizzi l'API, imposta BigQuerySource.dataSchema su document.