Akses kontekstual dengan aturan masuk

Penyiapan aturan masuk akses kontekstual memungkinkan akses ke resource berdasarkan atribut klien seperti asal jaringan (alamat IP atau jaringan VPC), jenis identitas (akun layanan atau pengguna), identitas, dan data perangkat. Akses ditentukan oleh aturan masuk.

Untuk ringkasan aturan traffic masuk dan keluar, lihat Aturan traffic masuk dan keluar.

Untuk petunjuk cara menerapkan kebijakan aturan traffic masuk dan keluar, lihat Mengonfigurasi kebijakan traffic masuk dan keluar.

Contoh konfigurasi kasus penggunaan akses kontekstual

Bagian ini berisi contoh akses kontekstual berikut:

  1. Mengizinkan pengguna manusia mengakses BigQuery dari internet dan hanya akun layanan tertentu yang dapat mengakses dari rentang IP yang ditentukan
  2. Mengizinkan karyawan membuat kueri BigQuery dari perangkat tepercaya melalui internet dan akun layanan tertentu untuk memuat data secara pribadi ke bucket Cloud Storage (data sumber)

Mengizinkan pengguna manusia mengakses BigQuery dari internet dan hanya akun layanan tertentu yang dapat mengakses dari rentang IP yang ditentukan

Masuk dari pengguna dan jaringan yang dikenali

Anggaplah Anda telah menentukan perimeter berikut, yang ditemukan dengan mencantumkan perimeter dengan gcloud:

name: accessPolicies/222/servicePerimeters/Example
status:
  resources:
  - projects/111
  restrictedServices:
  - bigquery.googleapis.com
  - storage.googleapis.com
  vpcAccessibleServices:
    enableRestriction: true
    allowedServices:
    - RESTRICTED_SERVICES
title: Example

Kita juga mengasumsikan bahwa tingkat akses yang disebut CorpDatacenters telah ditentukan. CorpDatacenters, dalam contoh ini, adalah rentang IP yang diizinkan dari pusat data perusahaan yang aksesnya dari akun layanan diizinkan.

Berikut adalah kebijakan terarah untuk mengizinkan semua pengguna dan kumpulan akun layanan tertentu, yang dibatasi untuk kumpulan IP tertentu (ditentukan oleh tingkat akses):

echo """
- ingressFrom:
    identities:
    - serviceAccount:my-sa@my-project.iam.gserviceaccount.com
    sources:
    - accessLevel: accessPolicies/222/accessLevels/CorpDatacenters
  ingressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - method: \"*\"
    resources:
    - \"*\"
- ingressFrom:
    identityType: ANY_USER_ACCOUNT
    sources:
    - accessLevel: \"*\"
  ingressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - method: \"*\"
    resources:
    - \"*\"
""" > ingress.yaml

Terapkan aturan ingress dengan menjalankan perintah berikut:

gcloud access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml

Mengizinkan karyawan membuat kueri BigQuery dan memuat data secara pribadi ke bucket Cloud Storage

Masuk dari perangkat dan jaringan yang dikenali

Anggaplah Anda telah menentukan perimeter berikut, yang ditemukan dengan mencantumkan perimeter dengan gcloud:

name: accessPolicies/222/servicePerimeters/Example
status:
  resources:
  - projects/111
  restrictedServices:
  - bigquery.googleapis.com
  - storage.googleapis.com
  vpcAccessibleServices:
    enableRestriction: true
    allowedServices:
    - RESTRICTED_SERVICES
title: Example

Berikut adalah kebijakan terarah untuk mengizinkan pengguna mengakses tampilan BigQuery dari perangkat tepercaya (menggunakan Tingkat Akses) dan akun layanan tertentu secara pribadi untuk mengakses Cloud Storage dari jaringan VPC yang diotorisasi:

echo """
- ingressFrom:
    identities:
    - serviceAccount:my-sa@my-project.iam.gserviceaccount.com
    sources:
    - resource: projects/111
  ingressTo:
    operations:
    - serviceName: storage.googleapis.com
      methodSelectors:
      - method: google.storage.Write
      - method: google.storage.objects.create
    resources:
    - \"*\"

- ingressFrom:
    identityType: ANY_SERVICE_ACCOUNT
    sources:
      - resource: //compute.googleapis.com/projects/my-network-project/global/networks/top-tier-vpc-network
  ingressTo:
    operations:
    - serviceName: storage.googleapis.com
      methodSelectors:
      - method: google.storage.Write
      - method: google.storage.objects.create
    resources:
    - \"*\"

- ingressFrom:
    identityType: ANY_USER_ACCOUNT
    sources:
    - accessLevel: accessPolicies/222/accessLevels/TrustedDevices
  ingressTo:
    operations:
    - serviceName: bigquery.googleapis.com
      methodSelectors:
      - permission: bigquery.tables.getData
    resources:
    - \"*\"
""" > ingress.yaml

Terapkan aturan ingress dengan menjalankan perintah berikut:

gcloud access-context-manager perimeters update Example --set-ingress-policies=ingress.yaml

Untuk mengetahui informasi tentang batasan jaringan VPC saat Anda menggunakan jaringan VPC di perimeter layanan, lihat Batasan jaringan VPC.