Mengonfigurasi batasan organisasi

Halaman ini menjelaskan prasyarat untuk konfigurasi proxy keluar, cara mendapatkan ID organisasi, menambahkan header pembatasan organisasi, dan mengonfigurasi proxy dengan daftar URL target.

Administrator Google Cloud, yang mengelola Google Cloud, dan administrator proxy traffic keluar yang mengonfigurasi proxy traffic keluar harus bekerja sama untuk mengonfigurasi batasan organisasi. Untuk mengetahui informasi tentang solusi partner yang divalidasi dengan batasan organisasi, lihat Solusi partner yang divalidasi.

Sebelum memulai

Jika Anda adalah administrator proxy keluar, sebelum mengonfigurasi proxy keluar untuk menambahkan header pembatasan organisasi, Anda harus menyelesaikan prasyarat berikut:

  • Jika peran administrator Google Cloud dan administrator proxy keluar berbeda dalam organisasi Anda, pastikan administrator Google Cloud berinteraksi dengan administrator proxy keluar untuk mengonfigurasi proxy keluar.

  • Konfigurasikan aturan firewall organisasi Anda atau konfigurasikan perangkat terkelola untuk memastikan bahwa traffic keluar dari semua pengguna di organisasi Anda melewati proxy keluar.

  • Pastikan proxy traffic keluar di organisasi Anda memiliki fitur berikut:

    • Sisipkan header. Menyisipkan header HTTP kustom ke permintaan keluar yang melewati proxy traffic keluar.
    • Pemeriksaan TLS. Jika traffic ke proxy traffic keluar dienkripsi, proxy traffic keluar harus mendekripsi paket, memasukkan header, dan mengenkripsi ulang paket sebelum mengirimkannya ke target.
    • Memfilter dan menyisipkan header. Opsional. Dukung satu atau beberapa filter berikut, lalu tambahkan header hanya untuk permintaan yang cocok dengan kondisi filter:

      • URL Target. Daftar URL target yang dapat cocok dengan proxy traffic keluar.
      • ID Perangkat. Daftar ID perangkat yang dapat dicocokkan oleh proxy traffic keluar. ID perangkat harus disebarkan ke proxy traffic keluar.
      • ID Pengguna. Daftar ID pengguna yang dapat dicocokkan oleh proxy traffic keluar. ID pengguna harus diterapkan ke proxy traffic keluar.

Mendapatkan ID organisasi

Sebagai administrator Google Cloud, Anda harus mendapatkan ID organisasi Google Cloud agar dapat ditambahkan ke header pembatasan organisasi.

Untuk menemukan ID resource organisasi Anda, jalankan perintah berikut:

   gcloud organizations list

Perintah ini mencantumkan semua resource organisasi tempat Anda berada, dan ID resource organisasi yang sesuai.

Setelah mendapatkan ID organisasi, Anda dapat menambahkan header batasan organisasi atau berinteraksi dengan administrator proxy traffic keluar untuk menambahkan header tersebut.

Tambahkan header pembatasan organisasi

Sebagai administrator proxy keluar, untuk menambahkan header batasan organisasi ke permintaan keluar, lakukan hal berikut:

  • Buat header.
  • Mengenkode header.
  • Konfigurasikan proxy traffic keluar.

Membuat header

Buat representasi JSON untuk header dalam format berikut: X-Goog-Allowed-Resources: HEADER_VALUE

HEADER_VALUE berisi daftar ID organisasi Google Cloud resmi yang dipisahkan koma. Nilai tersebut kemudian harus dienkode dalam encoding base64 aman untuk web.

HEADER_VALUE memiliki struktur JSON berikut:

  {
  "resources": [string,..],
  "options": string
  }
  • resources. Daftar string. Setiap string dalam daftar ini harus merujuk ke ID organisasi Google Cloud. ID organisasi dalam daftar ini dianggap sebagai organisasi yang diberi otorisasi selama evaluasi.
  • options. String yang berisi salah satu nilai berikut:
    • "strict". Menerapkan header pembatasan organisasi untuk semua jenis permintaan ke layanan Google Cloud yang didukung.
    • "cloudStorageReadAllowed". Mengizinkan permintaan baca ke Cloud Storage, tetapi memberlakukan header pembatasan organisasi untuk semua jenis permintaan ke layanan Google Cloud yang didukung. Opsi ini memungkinkan akses untuk operasi baca Cloud Storage berikut:
      • storage.objects.get
      • storage.objects.list
      • storage.objects.getIamPolicy
      • storage.buckets.get
      • storage.buckets.list
      • storage.buckets.getIamPolicy

Untuk mendemonstrasikan opsi ini, pertimbangkan contoh di mana Alex adalah administrator Contoh Organisasi dan Lee adalah karyawan organisasi ini. Pertimbangkan situs seperti altostrat.com yang menyimpan konten statis di bucket Cloud Storage publik dan berada di luar Example Organization. Jika Alex menggunakan opsi strict untuk membatasi akses Lee hanya ke Organisasi Contoh, Lee tidak akan dapat mengakses konten statis di altostrat.com, yang ada di bucket Cloud Storage publik yang dimiliki oleh altostrat.com. Perilaku ini memengaruhi kemampuan Lee untuk menjelajahi situs secara efektif dan perilaku yang sama terjadi pada situs apa pun yang menggunakan Cloud Storage publik untuk menyimpan konten statis. Agar Lee dapat melihat konten statis di altostrat.com dan membatasi semua akses Google Cloud lainnya hanya ke Example Organization, Alex menggunakan opsi cloudStorageReadAllowed.

Berikut adalah contoh header pembatasan organisasi yang valid:

  {
  "resources": ["organizations/1234", "organizations/3456"],
  "options": "strict"
  }

Mengenkode header

Enkode ID organisasi dalam format base64 keamanan web. Encoding harus mengikuti spesifikasi RFC 4648 Bagian 5.

Misalnya, jika representasi JSON untuk nilai header disimpan dalam file authorized_orgs.json, untuk mengenkode file, jalankan perintah basenc berikut:

     $ cat authorized_orgs.json | basenc --base64url -w0
ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiLCAib3JnYW5pemF0aW9ucy8xMDExMTIxMzE0Il0sCiAib3B0aW9ucyI6ICJzdHJpY3QiCn0K

Berikut adalah contoh header setelah mengenkode ID organisasi:

// Encoded representation
X-Goog-Allowed-Resources: ewogInJlc291cmNlcyI6IFsib3JnYW5pemF0aW9ucy8xMjM0NTY3ODkiLCAib3JnYW5pemF0aW9ucy8xMDExMTIxMzE0Il0sCiAib3B0aW9ucyI6ICJzdHJpY3QiCn0K

// Plain-text representation (As HTTP disallows some characters, encode the organization ID)
// Plain-text representation is included here only for readability
X-Goog-Allowed-Resources: {"resources": ["organizations/1234", "organizations/3456"], "options": "strict"}

Mengonfigurasi proxy traffic keluar

Untuk menyisipkan header ke permintaan yang berasal dari perangkat terkelola, konfigurasikan proxy traffic keluar.

Pastikan bahwa jika pengguna Google Cloud di organisasi Anda secara eksplisit menyediakan header HTTP, proxy traffic keluar akan mengganti nilai yang disediakan pengguna dengan nilai yang diberikan oleh administrator Google Cloud.

Agar header ini tidak ditambahkan ke target di luar Google Cloud, konfigurasikan proxy traffic keluar untuk menambahkan header pembatasan organisasi ke permintaan hanya dengan target berikut:

  • *.google.com
  • *.googleapis.com
  • *.gcr.io
  • *.pkg.dev
  • *.cloudfunctions.net
  • *.run.app
  • *.tunnel.cloudproxy.app
  • *.datafusion.googleusercontent.com

Untuk informasi tentang pesan error yang terjadi karena pelanggaran pembatasan organisasi, lihat pesan error.

Langkah selanjutnya