Akun layanan adalah jenis akun khusus dan biasanya digunakan oleh aplikasi atau workload komputasi, seperti instance Compute Engine, bukan oleh pengguna. Akun ini diidentifikasi oleh alamat emailnya, yang bersifat unik untuk akun tersebut.
Aplikasi menggunakan akun layanan untuk melakukan panggilan API yang diotorisasi dengan mengautentikasi sebagai akun layanan itu sendiri, atau sebagai pengguna Google Workspace atau Cloud Identity melalui delegasi tingkat domain. Saat aplikasi melakukan autentikasi sebagai akun layanan, aplikasi memiliki akses ke semua resource yang boleh diakses oleh akun layanan.
Anda dapat menggunakan akun layanan untuk mengidentifikasi sumber traffic dan mengonfigurasi kebijakan Secure Web Proxy, sesuai kebutuhan.
Panduan ini menunjukkan cara melakukan hal berikut:
- Buat instance Secure Web Proxy dengan kebijakan kosong.
- Membuat dan melampirkan akun layanan ke resource.
- Gunakan akun layanan untuk membuat kebijakan Secure Web Proxy.
- Buat instance Secure Web Proxy.
- Uji konektivitas dari VM Anda.
Sebelum memulai
- Selesaikan langkah-langkah penyiapan awal. 
- Minta administrator organisasi memberikan akses ke akun layanan. 
- Pastikan Anda telah menginstal Google Cloud CLI versi 406.0.0 atau yang lebih baru: - gcloud version | head -n1- Jika Anda telah menginstal versi gcloud CLI sebelumnya, update versinya: - gcloud components update --version=406.0.0
Membuat instance Secure Web Proxy dengan kebijakan kosong
Untuk membuat instance Secure Web Proxy, buat kebijakan keamanan kosong terlebih dahulu, lalu buat proxy web.
Membuat kebijakan keamanan kosong
Konsol
- Di Google Cloud console, buka halaman SWP Policies. 
- Klik Buat kebijakan. 
- Masukkan nama untuk kebijakan yang ingin Anda buat, seperti - myswppolicy.
- Masukkan deskripsi kebijakan, seperti - My new swp policy.
- Dalam daftar Regions, pilih region tempat Anda ingin membuat kebijakan. 
- Klik Buat. 
Cloud Shell
- Gunakan editor teks pilihan Anda untuk membuat file - POLICY_FILE.yaml. Ganti- POLICY_FILEdengan nama file yang Anda inginkan untuk file kebijakan.
- Tambahkan kode berikut ke file YAML yang Anda buat: - name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTION- Ganti kode berikut: - PROJECT_NAME: nama project Anda
- REGION: region tempat kebijakan ini berlaku
- POLICY_NAME: nama kebijakan yang Anda buat
- POLICY_DESCRIPTION: deskripsi kebijakan yang Anda buat
 
- Impor kebijakan keamanan: - gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Membuat proxy web
Konsol
- Di Google Cloud console, buka halaman Web Proxies. 
- Klik Create a secure web proxy. 
- Masukkan nama untuk proxy web yang ingin Anda buat, seperti - myswp.
- Masukkan deskripsi proxy web, seperti - My new swp.
- Di daftar Region, pilih region tempat Anda ingin membuat proxy web. 
- Dalam daftar Network, pilih jaringan tempat Anda ingin membuat proxy web. 
- Dalam daftar Subnetwork, pilih subnetwork tempat Anda ingin membuat proxy web. 
- Opsional: Masukkan alamat IP Secure Web Proxy. Anda dapat memasukkan alamat IP dari rentang alamat IP Secure Web Proxy yang berada di subnetwork yang Anda buat pada langkah sebelumnya. Jika Anda tidak memasukkan alamat IP, instance Secure Web Proxy Anda akan otomatis memilih alamat IP dari subnetwork yang dipilih. 
- Di daftar Certificate, pilih sertifikat yang ingin Anda gunakan untuk membuat proxy web. 
- Dalam daftar Kebijakan, pilih kebijakan yang Anda buat untuk mengaitkan proxy web. 
- Klik Buat. 
Cloud Shell
- Gunakan editor teks pilihan Anda untuk membuat file - GATEWAY_FILE.yaml. Ganti- GATEWAY_FILEdengan nama file yang Anda inginkan untuk file proxy web.
- Tambahkan kode berikut ke file YAML yang Anda buat: - name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET_NAME addresses: [GATEWAY_IP_ADDRESS] scope: samplescope- Ganti kode berikut: - GATEWAY_NAME: nama untuk instance ini
- GATEWAY_PORT_NUMBERS: daftar nomor port untuk gateway ini, seperti- [80,443]
- CERTIFICATE_URLS: daftar URL sertifikat SSL
- SUBNET_NAME: nama subnet yang berisi- GATEWAY_IP_ADDRESS
- GATEWAY_IP_ADDRESS: daftar alamat IP opsional untuk instance Secure Web Proxy Anda dalam subnet proxy yang sebelumnya dibuat di langkah penyiapan awal- Jika Anda memilih untuk tidak mencantumkan alamat IP, hapus kolom agar proxy web memilih alamat IP untuk Anda. 
 
- Buat instance Secure Web Proxy: - gcloud network-services gateways import GATEWAY_NAME \ --source=GATEWAY_FILE.yaml \ --location=REGION
Menguji konektivitas
Untuk menguji konektivitas, gunakan perintah curl dari VM mana pun dalam jaringan Virtual Private Cloud (VPC):
  curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
Error 403 Forbidden diperkirakan akan terjadi.
Membuat dan melampirkan akun layanan ke resource
Lakukan langkah-langkah berikut untuk membuat dan melampirkan akun layanan:
Membuat aturan Secure Web Proxy
Untuk membuat aturan Secure Web Proxy, lakukan hal berikut:
- Gunakan editor teks pilihan Anda untuk membuat file - RULE_FILE.yaml. Ganti- RULE_FILEdengan nama file yang Anda pilih.
- Untuk mengizinkan akses ke URL dari akun layanan yang dipilih, tambahkan kode berikut ke file YAML: - name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME description: RULE_DESCRIPTION enabled: true priority: RULE_PRIORITY sessionMatcher: CEL_EXPRESSION basicProfile: ALLOW- Ganti kode berikut: - RULE_NAME: nama untuk aturan ini
- RULE_DESCRIPTION: deskripsi untuk aturan yang Anda buat
- RULE_PRIORITY: prioritas untuk aturan ini; angka yang lebih rendah sesuai dengan prioritas yang lebih tinggi
- CEL_EXPRESSION: ekspresi Common Expression Language (CEL)- Untuk mengetahui informasi selengkapnya, lihat referensi bahasa matcher CEL. - Misalnya, untuk mengizinkan akses ke - example.comdari resource dengan akun layanan yang diinginkan terlampir, tambahkan hal berikut ke file YAML yang Anda buat untuk- sessionMatcher:- sessionMatcher: "source.matchServiceAccount('SERVICE_ACCOUNT') && host() == 'example.com'"- Ganti - SERVICE_ACCOUNTdengan akun layanan yang ingin Anda izinkan. Ini harus berupa alamat email akun layanan.
 
- Impor aturan yang Anda buat: - gcloud network-security gateway-security-policies rules import RULE_NAME \ --source=RULE_FILE.yaml \ --location=REGION \ --gateway-security-policy=POLICY_NAME
Menguji konektivitas
Untuk menguji konektivitas, gunakan perintah curl dari resource dengan
SERVICE_ACCOUNT yang terlampir:
curl -x https://IPv4_ADDRESS:443 http://example.com 
--proxy-insecure
Ganti IPv4_ADDRESS dengan alamat IPv4 instance Proxy Web Aman Anda.