Kasus penggunaan: Kontrol akses dengan akun layanan namespace

Halaman ini menjelaskan kasus penggunaan saat Anda mengontrol akses ke resource Google Clouddi tingkat namespace saat memigrasikan data dari Cloud Storage ke BigQuery.

Untuk mengontrol akses ke resource Google Cloud , namespace di Cloud Data Fusion menggunakan Agen Layanan Cloud Data Fusion API secara default.

Untuk isolasi data yang lebih baik, Anda dapat mengaitkan akun layanan IAM yang disesuaikan (dikenal sebagai Akun Layanan Per Namespace) dengan setiap namespace. Akun layanan IAM yang disesuaikan, yang dapat berbeda untuk namespace yang berbeda, memungkinkan Anda mengontrol akses ke resourceGoogle Cloud di antara namespace untuk operasi waktu desain pipeline di Cloud Data Fusion, seperti pratinjau pipeline, Wrangler, dan validasi pipeline.

Untuk mengetahui informasi selengkapnya, lihat Kontrol akses dengan akun layanan namespace.

Skenario

Dalam kasus penggunaan ini, departemen pemasaran Anda memigrasikan data dari Cloud Storage ke BigQuery menggunakan Cloud Data Fusion.

Pipeline data yang menampilkan sumber Cloud Storage, transformasi Wrangler, dan sink BigQuery.

Departemen pemasaran memiliki tiga tim: A, B, dan C. Tujuan Anda adalah menetapkan pendekatan terstruktur untuk mengontrol akses data di Cloud Storage melalui namespace Cloud Data Fusion yang sesuai dengan setiap tim, yaitu A, B, dan C.

Solusi

Langkah-langkah berikut menunjukkan cara mengontrol akses ke resource Google Cloud dengan akun layanan namespace, sehingga mencegah akses tidak sah di antara datastore dari berbagai tim.

Mengaitkan akun layanan Identity and Access Management ke setiap namespace

Konfigurasikan akun layanan IAM di namespace untuk setiap tim (lihat Mengonfigurasi akun layanan namespace):

  1. Siapkan kontrol akses dengan menambahkan akun layanan yang disesuaikan untuk Tim A—misalnya, team-a@pipeline-design-time-project.iam.gserviceaccount.com.

    Konfigurasikan akun layanan untuk Tim A.
    Gambar 1: Menambahkan akun layanan yang disesuaikan untuk Tim A.
  2. Ulangi langkah-langkah konfigurasi untuk Tim B dan C guna menyiapkan kontrol akses dengan akun layanan kustom serupa.

Membatasi akses ke bucket Cloud Storage

Batasi akses ke bucket Cloud Storage dengan memberikan izin yang sesuai:

  1. Berikan izin storage.buckets.list kepada akun layanan IAM, yang diperlukan untuk mencantumkan bucket Cloud Storage dalam project. Untuk mengetahui informasi selengkapnya, lihat Mencantumkan bucket.
  2. Berikan izin akun layanan IAM untuk mengakses objek di bucket tertentu.

    Misalnya, berikan peran Storage Object Viewer ke akun layanan IAM yang terkait dengan namespace team_A di bucket team_a1. Izin ini memungkinkan Tim A melihat dan mencantumkan objek dan folder terkelola, beserta metadatanya, di bucket tersebut dalam lingkungan waktu desain yang terisolasi.

    Berikan peran di halaman Detail bucket.
    Gambar 2: Di halaman Bucket Cloud Storage, tambahkan tim sebagai akun utama dan tetapkan peran Storage Object User.

Membuat koneksi Cloud Storage di namespace masing-masing

Buat koneksi Cloud Storage di namespace setiap tim:

  1. Di konsol Google Cloud, buka halaman Instance Cloud Data Fusion dan buka instance di antarmuka web Cloud Data Fusion.

    Buka Instance

  2. Klik Admin sistem > Konfigurasi > Namespace.

  3. Klik namespace yang ingin Anda gunakan—misalnya, namespace untuk Tim A.

  4. Klik tab Connections, lalu klik Add connection.

  5. Pilih GCS dan konfigurasikan koneksinya.

    Membuat koneksi Cloud Storage di Cloud Data Fusion
    Gambar 3: Konfigurasikan koneksi Cloud Storage untuk namespace.
  6. Buat koneksi Cloud Storage untuk setiap namespace dengan mengulangi langkah-langkah sebelumnya. Setiap tim kemudian dapat berinteraksi dengan salinan terisolasi dari resource tersebut untuk operasi waktu desain mereka.

Memvalidasi isolasi waktu desain untuk setiap namespace

Tim A dapat memvalidasi isolasi pada desain dengan mengakses bucket Cloud Storage di namespace masing-masing:

  1. Di konsol Google Cloud, buka halaman Instance Cloud Data Fusion dan buka instance di antarmuka web Cloud Data Fusion.

    Buka Instance

  2. Klik Admin sistem > Konfigurasi > Namespace.

  3. Pilih namespace—misalnya, namespace Tim A, team_A.

  4. Klik Menu > Wrangler.

  5. Klik GCS.

  6. Dalam daftar bucket, klik bucket team_a1.

    • Anda dapat melihat daftar bucket karena namespace Tim A memiliki izin storage.buckets.list.

    • Saat mengklik bucket, Anda dapat melihat kontennya karena namespace Tim A memiliki peran Storage Object Viewer.

    Validasi koneksi Cloud Storage untuk Tim A. Validasi bucket dapat diakses oleh Tim A.
    Gambar 4 dan 5: Pastikan Tim A dapat mengakses bucket penyimpanan yang sesuai.
  7. Kembali ke daftar bucket, lalu klik bucket team_b1 atau team_c1. Akses dibatasi, karena Anda mengisolasi resource waktu desain ini untuk Tim A menggunakan akun layanan namespace-nya.

    Validasi bahwa Tim A tidak dapat mengakses resource yang dibatasi.
    Gambar 6: Pastikan Tim A tidak dapat mengakses bucket penyimpanan Tim B dan C.

Langkah selanjutnya

  • Pelajari lebih lanjut fitur keamanan di Cloud Data Fusion.