View a markdown version of this page

Menyiapkan otentikasi akun layanan untuk Google Drive - Amazon Bedrock

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menyiapkan otentikasi akun layanan untuk Google Drive

Autentikasi akun layanan (SERVICE_ACCOUNT) adalah metode yang disarankan untuk sumber data Google Drive. Akun layanan Google Cloud melakukan autentikasi dengan kunci pribadi, lalu menyamar sebagai pengguna admin Google Workspace untuk merayapi konten Drive untuk setiap pengguna di domain Anda. Ini adalah satu-satunya metode yang mendukung kontrol akses tingkat dokumen (ACL).

Diperlukan akses administratif

Penyiapan ini memerlukan administrator Google Workspace untuk mengaktifkan API, membuat akun layanan, mengonfigurasi delegasi seluruh domain, dan membuat pengguna admin yang didelegasikan. AWS Sisi membutuhkan akses administrator ke AWS Secrets Manager dan IAM.

Langkah 1: Buat proyek Google Cloud

  1. Buka konsol Google Cloud.

  2. Dari pemilih proyek di bagian atas halaman, pilih Proyek Baru.

  3. Masukkan nama proyek, dan pilih Buat.

  4. Setelah proyek dibuat, beralihlah dari pemilih proyek.

Langkah 2: Aktifkan API yang diperlukan

  1. Di menu navigasi konsol Google Cloud, pilih API & Layanan, lalu Perpustakaan.

  2. Cari dan aktifkan masing-masing API berikut:

    • Google Drive API

    • API Aktivitas Google Drive

    • Admin SDK API

Langkah 3: Buat akun layanan

  1. Pada menu navigasi, pilih API & Services, lalu Credentials.

  2. Pilih Buat Kredensyal, lalu Akun layanan.

  3. Masukkan nama (misalnya,bedrock-google-drive-connector) dan deskripsi opsional, dan pilih Selesai.

  4. Pada halaman Kredensial, pilih akun layanan yang baru saja Anda buat.

  5. Pada tab Detail, salin ID Unik. Anda menggunakan ini di Langkah 5 untuk memberikan delegasi seluruh domain.

Langkah 4: Buat kunci pribadi

  1. Pada halaman detail akun layanan, pilih tab Tombol.

  2. Pilih Tambah Kunci, lalu Buat kunci baru.

  3. Pilih JSON dan pilih Buat. Browser Anda mengunduh file JSON yang berisi akun layanan client_email danprivate_key. Simpan file dengan aman.

catatan

Jika Anda menerima kesalahan yang menyatakan bahwa pembuatan kunci akun layanan dinonaktifkan oleh kebijakan organisasi, Anda harus mengganti iam.disableServiceAccountKeyCreation batasan untuk proyek Anda. Untuk detailnya, lihat Membatasi penggunaan akun layanan di dokumentasi Google Cloud.

Langkah 5: Konfigurasikan delegasi seluruh domain

Domain-wide delegasi memungkinkan akun layanan bertindak atas nama pengguna di Google Workspace Anda.

  1. Masuk ke Konsol Admin Google Workspace sebagai administrator Google Workspace.

  2. Di panel navigasi, pilih Keamanan, Akses, dan kontrol data, kontrol API.

  3. Pilih Kelola Delegasi Luas Domain, lalu Tambahkan baru.

  4. Untuk ID Klien, masukkan ID Unik akun layanan dari Langkah 3.

  5. Untuk cakupan OAuth, masukkan nilai yang dipisahkan koma berikut:

    https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/drive.metadata.readonly, https://www.googleapis.com/auth/admin.directory.user.readonly, https://www.googleapis.com/auth/admin.directory.group.readonly, https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/forms.body.readonly
  6. Pilih Izinkan.

Langkah 6: Buat pengguna admin yang didelegasikan

Akun layanan meniru pengguna admin Google Workspace saat merayapi konten. Sebaiknya buat pengguna admin khusus untuk tujuan ini dengan peran minimum yang diperlukan.

  1. Di Konsol Admin Google Workspace, pilih Direktori, lalu Pengguna.

  2. Pilih Tambahkan pengguna baru, masukkan nama depan, nama belakang, dan alamat email utama, lalu pilih Tambahkan pengguna baru.

  3. Dari daftar pengguna, buka pengguna yang Anda buat.

  4. Perluas bagian peran dan hak istimewa Admin, dan tetapkan peran berikut:

    • Pembaca Grup

    • Admin Manajemen Pengguna

    • Admin Penyimpanan

  5. Pilih Simpan. Rekam alamat email pengguna ini; Anda menyimpannya dalam rahasia sebagaiadminAccountEmail.

Langkah 7: Buat rahasia Secrets Manager

Simpan kredensialnya secara AWS Secrets Manager rahasia dengan pasangan kunci-nilai berikut. Salin clientEmail dan privateKey dari file kunci JSON yang Anda unduh di Langkah 4 (gunakan client_email dan private_key nilai).

{ "adminAccountEmail": "admin@your-domain.com", "clientEmail": "your-service-account@your-project.iam.gserviceaccount.com", "privateKey": "your-private-key-from-the-json-key-file" }

Buat rahasia dengan AWS Command Line Interface:

aws secretsmanager create-secret \ --name bedrock-google-drive-sa-creds \ --secret-string file://secret.json

Rekam rahasia ARN dari tanggapannya. Anda menggunakannya sebagai sumber datasecretArn.

catatan

privateKeyNilai berisi urutan \n escape literal dari file kunci JSON. Simpan mereka apa adanya saat menyalin nilai ke dalam rahasia.

Langkah selanjutnya

Setelah Anda menyimpan rahasia, buat sumber data dengan authType set toSERVICE_ACCOUNT. Lihat Connect sumber data Google Drive. Untuk memfilter hasil kueri berdasarkan izin pengguna, lihatDocument-level kontrol akses.