Mengonfigurasi kontrol akses untuk sumber data kustom

Halaman ini menjelaskan cara menerapkan kontrol akses sumber data (juga disebut sebagai ACL) untuk aplikasi penelusuran yang Anda buat menggunakan Cloud Storage atau BigQuery.

Ringkasan

Kontrol akses untuk sumber data Anda di Gemini Enterprise membatasi data yang dapat dilihat pengguna dalam hasil aplikasi penelusuran Anda. Google menggunakan penyedia identitas Anda untuk mengidentifikasi pengguna akhir yang melakukan penelusuran dan menentukan apakah mereka memiliki akses ke dokumen yang ditampilkan sebagai hasil.

Misalnya, karyawan di perusahaan Anda menelusuri dokumen BigQuery menggunakan aplikasi penelusuran Anda. Namun, Anda perlu memastikan bahwa mereka tidak dapat melihat konten melalui aplikasi yang tidak boleh mereka akses. Jika Anda telah menyiapkan kumpulan tenaga kerja di Google Cloud untuk penyedia identitas organisasi Anda, maka Anda juga dapat menentukan kumpulan tenaga kerja tersebut di Gemini Enterprise. Sekarang, jika karyawan menggunakan aplikasi Anda, mereka hanya akan mendapatkan hasil penelusuran untuk dokumen yang sudah dapat diakses oleh akun mereka di BigQuery.

Mengaktifkan kontrol akses adalah prosedur satu kali. Untuk menerapkan kontrol akses ke sumber data BigQuery atau Cloud Storage, gunakan langkah-langkah berikut bergantung pada jenis data Anda, seperti data terstruktur atau tidak terstruktur.

Data tidak terstruktur dari Cloud Storage

Saat menyiapkan penyimpanan data untuk data tidak terstruktur dari Cloud Storage, Anda juga perlu mengupload metadata ACL dan menyetel penyimpanan data sebagai dikontrol akses:

  1. Saat menyiapkan data, sertakan informasi ACL dalam metadata Anda menggunakan kolom acl_info. Contoh:

    {
       "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" }
             ]
           }
         ]
       }
     }
    

    Untuk mengetahui informasi selengkapnya tentang data tidak terstruktur dengan metadata, lihat bagian Data tidak terstruktur di Menyiapkan data untuk penyerapan.

  2. Saat mengikuti langkah-langkah pembuatan penyimpanan data di Membuat penyimpanan data pihak pertama, Anda dapat mengaktifkan kontrol akses dengan melakukan hal berikut di konsol atau menggunakan API:

    • Konsol: Saat membuat penyimpanan data, pilih Penyimpanan data ini berisi informasi kontrol akses selama pembuatan penyimpanan data.
    • API: Saat membuat penyimpanan data, sertakan kolom "aclEnabled": "true" dalam payload JSON Anda.
  3. Saat mengikuti langkah-langkah untuk impor data di Membuat penyimpanan data pihak pertama, pastikan untuk melakukan hal berikut:

    • Mengupload metadata Anda dengan informasi ACL dari bucket yang sama dengan data tidak terstruktur Anda
    • Jika menggunakan API, tetapkan GcsSource.dataSchema ke document

Data terstruktur dari Cloud Storage

Saat menyiapkan penyimpanan data untuk data terstruktur dari Cloud Storage, Anda juga perlu mengupload metadata ACL dan menyetel penyimpanan data sebagai dikontrol akses:

  1. Saat menyiapkan data, sertakan informasi ACL dalam metadata Anda menggunakan kolom acl_info. Contoh:

    {
       "id": "<your-id>",
       "jsonData": "<JSON string>",
       "acl_info": {
         "readers": [
           {
             "principals": [
               { "group_id": "group_1" },
               { "user_id": "user_1" }
             ]
           }
         ]
       }
     }
    
  2. Saat mengikuti langkah-langkah pembuatan penyimpanan data di Membuat penyimpanan data pihak pertama, Anda dapat mengaktifkan kontrol akses dengan melakukan hal berikut di konsol atau menggunakan API:

    • Konsol: Saat membuat penyimpanan data, pilih Penyimpanan data ini berisi informasi kontrol akses selama pembuatan penyimpanan data.
    • API: Saat membuat penyimpanan data, sertakan kolom "aclEnabled": "true" dalam payload JSON Anda.
  3. Saat mengikuti langkah-langkah untuk impor data di Membuat penyimpanan data pihak pertama, pastikan untuk melakukan hal berikut:

    • Upload metadata Anda dengan informasi ACL dari bucket yang sama dengan data terstruktur Anda
    • Jika menggunakan API, tetapkan GcsSource.dataSchema ke document

Data tidak terstruktur dari BigQuery

Saat menyiapkan penyimpanan data untuk data tidak terstruktur dari BigQuery, Anda harus menetapkan penyimpanan data sebagai yang dikontrol aksesnya dan memberikan metadata ACL menggunakan skema yang telah ditentukan sebelumnya untuk Gemini Enterprise:

  1. Saat menyiapkan data, tentukan skema berikut. Jangan gunakan skema kustom.

    [
      {
        "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. Sertakan metadata ACL Anda sebagai kolom di tabel BigQuery.

  3. Saat mengikuti langkah-langkah di Membuat penyimpanan data pihak pertama, aktifkan kontrol akses di konsol atau menggunakan API:

    • Konsol: Saat membuat penyimpanan data, pilih Penyimpanan data ini berisi informasi kontrol akses selama pembuatan penyimpanan data.
    • API: Saat membuat penyimpanan data, sertakan kolom "aclEnabled": "true" dalam payload JSON Anda.
  4. Saat mengikuti langkah-langkah untuk impor data di Membuat penyimpanan data pihak pertama, jika menggunakan API, tetapkan BigQuerySource.dataSchema ke document.

Data terstruktur dari BigQuery

Saat menyiapkan penyimpanan data untuk data terstruktur dari BigQuery, Anda perlu menetapkan penyimpanan data sebagai yang dikontrol aksesnya dan memberikan metadata ACL menggunakan skema yang telah ditentukan untuk Gemini Enterprise:

  1. Saat menyiapkan data, tentukan skema berikut. Jangan gunakan skema kustom.

    [
      {
        "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. Sertakan metadata ACL Anda sebagai kolom di tabel BigQuery.

  3. Saat mengikuti langkah-langkah di Membuat penyimpanan data pihak pertama, aktifkan kontrol akses di konsol atau menggunakan API:

    • Konsol: Saat membuat penyimpanan data, pilih Penyimpanan data ini berisi informasi kontrol akses selama pembuatan penyimpanan data.
    • API: Saat membuat penyimpanan data, sertakan kolom "aclEnabled": "true" dalam payload JSON Anda.
  4. Saat mengikuti langkah-langkah untuk impor data di Membuat penyimpanan data pihak pertama, pastikan untuk melakukan hal berikut:

    • Jika menggunakan konsol, saat menentukan jenis data yang Anda upload, pilih JSONL untuk data terstruktur dengan metadata.
    • Jika menggunakan API, tetapkan BigQuerySource.dataSchema ke document.