Agent Gateway memungkinkan Anda mengatur traffic keluar dari agen AI yang Anda bangun dan hosting di Cloud Run. Dengan merutekan traffic egress dari layanan Cloud Run Anda melalui Agent Gateway yang dikelola sendiri dan berjalan di Secure Web Proxy, Anda dapat menerapkan kebijakan akses terpusat, memeriksa payload untuk keamanan konten, dan mengumpulkan telemetri kemampuan observasi di seluruh workload agen Anda.
Dokumen ini menjelaskan cara mengonfigurasi arsitektur terpusat untuk Agent Gateway di Cloud Run dan membahas cara melakukan hal berikut:
- Menetapkan peran dan prasyarat Identity and Access Management (IAM) yang diperlukan
- Membuat Agent Gateway yang dikelola sendiri
- Mengonfigurasi jaringan ambient Cloud Run untuk mengakses Traffic Director API
- Men-deploy atau mengupdate layanan Cloud Run dengan jaringan ambien dan egress VPC Langsung
- Mengonfigurasi agen Cloud Run untuk memercayai Agent Gateway
- Merutekan traffic egress ke Agent Gateway
- Mengonfigurasi kebijakan keamanan konten dan akses di Agent Gateway
- Mengonfigurasi deployment lintas project terpusat dengan VPC Bersama
Arsitektur
Dalam deployment yang dikelola sendiri dan terpusat, Secure Web Proxy bertindak sebagai titik penerapan kebijakan dan berjalan di dalam jaringan Virtual Private Cloud (VPC) Anda. Container sidecar ambient networking memblokir traffic keluar dari agen Cloud Run Anda dan merutekannya melalui Direct VPC egress ke instance Secure Web Proxy Anda. Secure Web Proxy menerapkan aturan akses dan konten dari titik keputusan kebijakan seperti Identity-Aware Proxy (IAP) dan Model Armor.
Untuk merutekan dan mengatur traffic dalam arsitektur ini, Anda harus mengonfigurasi komponen berikut:
- Egress VPC langsung dan ambient networking: Layanan Cloud Run Anda terhubung ke jaringan VPC dengan
--vpc-egress=alldan--ambient-networking, yang menggunakan cakupan regional secara default dan merutekan semua traffic keluar ke jaringan VPC Anda. - Agent Gateway yang dikelola sendiri: Resource Agent Gateway logis dalam mode yang dikelola sendiri mengarah ke instance Secure Web Proxy di Jaringan VPC Anda.
- Kebijakan perutean egress: Kebijakan
EgressRoutingNetwork Services API mengarahkan traffic keluar dari layanan Cloud Run ke instance Secure Web Proxy Anda.
Sebelum memulai
- Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init -
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init Aktifkan Cloud Run Admin API, Network Services API, Keamanan Jaringan API, Service Extensions API, Model Armor API, Certificate Authority Service API, Certificate Manager API, Cloud Resource Manager API, App Hub API, Identity and Access Management API, Identity-Aware Proxy API, Compute Engine API, Traffic Director API, Cloud DNS API, Network Connectivity API, dan Agent Registry API, jika ada yang belum diaktifkan.
Peran yang diperlukan untuk mengaktifkan API
Untuk mengaktifkan API, Anda memerlukan izin
serviceusage.services.enable. Jika Anda membuat project, kemungkinan Anda sudah memiliki izin ini melalui peran Pemilik (roles/owner). Jika tidak, Anda bisa mendapatkan izin ini melalui peran Service Usage Admin (roles/serviceusage.serviceUsageAdmin). Pelajari cara memberikan peran.- Buat jaringan VPC dan subnet dengan Akses Google Pribadi diaktifkan di subnet.
- Siapkan Agent Registry di project atau organisasi Anda.
- Instal dan lakukan inisialisasi Google Cloud CLI.
-
Update komponen gcloud CLI:
gcloud components update
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan guna mengonfigurasi Agent Gateway untuk Cloud Run, minta administrator untuk memberi Anda peran IAM berikut pada project Anda:
-
Men-deploy dan mengelola resource Cloud Run:
Cloud Run Admin (
roles/run.admin) -
Mengelola resource Agent Registry:
Agent Registry API Admin (
roles/agentregistry.admin) -
Men-deploy dengan identitas tertentu:
Pengguna Akun Layanan IAM (
roles/iam.serviceAccountUser) -
Mengelola jaringan dan subnet VPC:
Compute Network Admin (
roles/compute.networkAdmin) -
Mengelola resource perutean egress dan Agent Gateway:
Network Services Admin (
roles/networkservices.admin) -
Mengonfigurasi kebijakan otorisasi di Gateway Agen:
Network Security Admin (
roles/networksecurity.admin) -
Membuat binding ekstensi:
Service Extensions Admin (
roles/serviceextensions.admin) -
Mengelola zona dan set data Cloud DNS:
DNS Administrator (
roles/dns.admin) -
Ekspor sertifikat CA dari CA Service:
- CA Service Admin (
roles/privateca.admin) - CA Service Auditor (
roles/privateca.auditor)
- CA Service Admin (
-
Mengonfigurasi kebijakan akses IAP dan IAM:
IAP Policy Admin (
roles/iap.admin) dan Access Policy Admin (roles/iam.accessPolicyAdmin) -
Membuat template Model Armor:
Model Armor Admin (
roles/modelarmor.admin) -
Memberikan peran IAM level project kepada agen layanan:
Project IAM Admin (
roles/resourcemanager.projectIamAdmin)
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Anda mungkin juga bisa mendapatkan izin yang diperlukan melalui peran khusus atau peran bawaan lainnya.
Jika Anda mengonfigurasi deployment lintas project dengan VPC Bersama, minta administrator untuk memberi Anda roles/compute.xpnAdmin di level organisasi atau folder.
Membuat Gateway Agen yang dikelola sendiri
Sebelum membuat resource Gateway Agen, deploy dan konfigurasikan instance Secure Web Proxy di jaringan VPC Anda seperti yang dijelaskan dalam Men-deploy Secure Web Proxy sebagai Gateway Agen:
- Siapkan pemeriksaan TLS
dan
buat kebijakan keamanan gateway
yang melampirkan
TlsInspectionPolicyAnda. Anda tidak memerlukan aturan kebijakan keamanan atau daftar URL Secure Web Proxy. - Buat resource
ServerTlsPolicydenganallowOpen: falsedanmtlsPolicy.clientValidationMode: ALLOW_INVALID_OR_MISSING_CLIENT_CERT. Jangan setelclientValidationTrustConfig. - Deploy instance Secure Web Proxy
dalam mode perutean proxy eksplisit dengan
addresses,ports,certificateUrls,gatewaySecurityPolicy, danserverTlsPolicyyang dikonfigurasi saat Anda membuat gateway sehingga Cloud Run meneruskan workload identity agen Anda ke Secure Web Proxy dan IAP melalui mTLS.
Setelah instance Secure Web Proxy Anda siap, buat resource Agent Gateway yang dikelola sendiri yang mengarah ke instance Secure Web Proxy Anda:
Buat file konfigurasi YAML bernama
my-agent-gateway.yaml:name: AGENT_GATEWAY_NAME registries: - "//agentregistry.googleapis.com/projects/PROJECT_ID/locations/REGION" selfManaged: resourceUris: - "projects/PROJECT_ID/locations/REGION/gateways/SWP_NAME"
Ganti kode berikut:
AGENT_GATEWAY_NAME: nama yang ingin Anda tetapkan ke resource Agent Gateway.PROJECT_ID: project ID yang menghosting instance Secure Web Proxy Anda.REGION: region instance Secure Web Proxy Anda, sepertius-central1.SWP_NAME: nama instance Secure Web Proxy Anda.
Impor konfigurasi Agent Gateway:
gcloud beta network-services agent-gateways import AGENT_GATEWAY_NAME \ --source="my-agent-gateway.yaml" \ --location=REGION \ --project=PROJECT_ID
Verifikasi resource Agent Gateway Anda:
gcloud beta network-services agent-gateways describe AGENT_GATEWAY_NAME \ --location=REGION \ --project=PROJECT_ID
Pastikan output menampilkan konfigurasi
selfManageddan URI resource instance Secure Web Proxy Anda sebelum melanjutkan ke bagian berikutnya.
Mengonfigurasi jaringan ambient Cloud Run untuk mengakses Traffic Director API
Saat Anda mengonfigurasi layanan Cloud Run dengan egress VPC Langsung
dan --vpc-egress=all, semua koneksi keluar dari instance container
akan dirutekan melalui jaringan VPC Anda. Hal ini mencakup koneksi sidecar Envoy ke trafficdirector.REGION.rep.googleapis.com.
Agar sidecar dapat me-resolve dan menjangkau Traffic Director API, konfigurasikan zona Cloud DNS pribadi di jaringan VPC Anda berdasarkan apakah lingkungan Anda menggunakan Kontrol Layanan VPC:
Tanpa Kontrol Layanan VPC
Jika project Anda tidak menggunakan Kontrol Layanan VPC, buat zona DNS pribadi Cloud DNS yang merutekan permintaan untuk trafficdirector.REGION.rep.googleapis.com ke alamat IP gateway Secure Web Proxy Anda sehingga Secure Web Proxy mengizinkan traffic melewati:
Ambil alamat IP internal gateway Secure Web Proxy Anda:
SWP_IP=$(gcloud network-services gateways describe SWP_NAME \ --project="PROJECT_ID" \ --location="REGION" \ --format="value(addresses[0])")
Ganti kode berikut:
SWP_NAME: nama instance Secure Web Proxy Anda.PROJECT_ID: Project ID Google Cloud Anda.REGION: region deployment Anda.
Buat zona Cloud DNS terkelola pribadi untuk Traffic Director API:
gcloud dns managed-zones create td-swp-zone \ --project="PROJECT_ID" \ --dns-name="trafficdirector.REGION.rep.googleapis.com." \ --description="Private DNS zone routing control plane traffic to SWP" \ --visibility="private" \ --networks="VPC_NETWORK_NAME"
Ganti
VPC_NETWORK_NAMEdengan nama jaringan VPC Anda.Tambahkan data
Ayang mengarahkan domain regional Traffic Director API ke alamat IP Secure Web Proxy Anda:gcloud dns record-sets create "trafficdirector.REGION.rep.googleapis.com." \ --project="PROJECT_ID" \ --zone="td-swp-zone" \ --type="A" \ --ttl=300 \ --rrdatas="${SWP_IP}"
Pastikan set data DNS aktif di zona pribadi:
gcloud dns record-sets list \ --project="PROJECT_ID" \ --zone="td-swp-zone"
Pastikan data
Auntuktrafficdirector.REGION.rep.googleapis.com.ditetapkan ke alamat IP Secure Web Proxy Anda.
Dengan Kontrol Layanan VPC
Untuk lingkungan Kontrol Layanan VPC, sediakan endpoint regional Private Service Connect yang menargetkan Traffic Director API regional di dalam subnet VPC Anda dan petakan domain menggunakan zona Cloud DNS pribadi:
Buat endpoint regional Private Service Connect yang menargetkan Traffic Director API regional:
gcloud network-connectivity regional-endpoints create td-rep-endpoint \ --project="PROJECT_ID" \ --region="REGION" \ --network="projects/PROJECT_ID/global/networks/VPC_NETWORK_NAME" \ --subnetwork="projects/PROJECT_ID/regions/REGION/subnetworks/VPC_SUBNET_NAME" \ --target-google-api="trafficdirector.REGION.rep.googleapis.com"
Ganti kode berikut:
PROJECT_ID: Project ID Google Cloud Anda.REGION: region deployment Anda.VPC_NETWORK_NAME: nama jaringan VPC Anda.VPC_SUBNET_NAME: nama subnet VPC Anda.
Ambil alamat IP internal endpoint regional:
TD_ENDPOINT_IP=$(gcloud network-connectivity regional-endpoints describe td-rep-endpoint \ --project="PROJECT_ID" \ --region="REGION" \ --format="value(address)")
Buat zona Cloud DNS terkelola pribadi untuk Traffic Director API:
gcloud dns managed-zones create td-psc-zone \ --project="PROJECT_ID" \ --dns-name="trafficdirector.REGION.rep.googleapis.com." \ --description="Private DNS zone for regional endpoint" \ --visibility="private" \ --networks="VPC_NETWORK_NAME"
Tambahkan data
Ayang me-resolve domain regional Traffic Director API ke alamat IP endpoint regional:gcloud dns record-sets create "trafficdirector.REGION.rep.googleapis.com." \ --project="PROJECT_ID" \ --zone="td-psc-zone" \ --type="A" \ --ttl=300 \ --rrdatas="${TD_ENDPOINT_IP}"
Verifikasi endpoint regional dan set data DNS Anda:
gcloud dns record-sets list \ --project="PROJECT_ID" \ --zone="td-psc-zone"
Pastikan data
Auntuktrafficdirector.REGION.rep.googleapis.com.mengarah ke alamat IP endpoint regional.
Men-deploy atau mengupdate layanan Cloud Run dengan Ambient Networking dan egress VPC Langsung
Untuk menghubungkan agen Cloud Run ke instance Secure Web Proxy
di jaringan VPC Anda, aktifkan
Direct VPC egress dan
ambient networking regional, lalu konfigurasikan
layanan dengan
Agent Identity.
Saat Anda men-deploy dengan --functional-type=agent dan
--identity-type=agent-identity, Cloud Run memberikan
roles/run.agentDefaultAccess, yang mencakup izin roles/trafficdirector.client
dan roles/cloudtrace.agent:
Deploy layanan agen Cloud Run baru atau update layanan yang ada untuk mengaktifkan jaringan ambient regional, egress VPC Langsung untuk semua traffic keluar, dan Identitas Agen:
Layanan baru
gcloud beta run deploy SERVICE_NAME \ --image=IMAGE_URL \ --network=VPC_NETWORK_NAME \ --subnet=VPC_SUBNET_NAME \ --vpc-egress=all \ --functional-type=agent \ --identity-type=agent-identity \ --ambient-networking \ --set-env-vars="GOOGLE_API_USE_CLIENT_CERTIFICATE=false,GOOGLE_API_USE_MTLS_ENDPOINT=never" \ --region=REGION \ --project=PROJECT_ID
Layanan yang ada
gcloud beta run services update SERVICE_NAME \ --network=VPC_NETWORK_NAME \ --subnet=VPC_SUBNET_NAME \ --vpc-egress=all \ --functional-type=agent \ --identity-type=agent-identity \ --ambient-networking \ --update-env-vars="GOOGLE_API_USE_CLIENT_CERTIFICATE=false,GOOGLE_API_USE_MTLS_ENDPOINT=never" \ --region=REGION \ --project=PROJECT_ID
Ganti kode berikut:
SERVICE_NAME: nama layanan agen Cloud Run Anda.IMAGE_URL: referensi ke image container, misalnya,us-docker.pkg.dev/cloudrun/container/hello:latest. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL mengikuti formatLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.VPC_NETWORK_NAME: nama jaringan VPC yang menghosting instance Secure Web Proxy Anda. Untuk mengetahui informasi tentang cara membuat jaringan dan subnet VPC, lihat Membuat dan mengelola jaringan VPC.VPC_SUBNET_NAME: nama subnet VPC tempat instance Secure Web Proxy Anda dapat dijangkau.REGION: region layanan Anda.PROJECT_ID: Project ID Google Cloud Anda.
Pastikan layanan Cloud Run Anda menggunakan Ambient Networking, Direct VPC egress, dan Agent Identity:
gcloud beta run services describe SERVICE_NAME \ --region=REGION \ --project=PROJECT_ID
Pastikan output menampilkan subnet egress Direct VPC, egress
all-traffic, jaringan ambient regional, dan akun utama identitas agen yang ditetapkan.
Mengonfigurasi agen Cloud Run Anda untuk memercayai Agent Gateway
Agar Secure Web Proxy dapat memeriksa payload HTTPS dan menerapkan kebijakan, Secure Web Proxy harus menghentikan sesi TLS keluar dari agen Anda. Container agen Cloud Run Anda harus memercayai sertifikat root atau subordinate certificate authority (CA) yang terkait dengan kebijakan pemeriksaan TLS Secure Web Proxy Anda di CA Service atau PKI perusahaan pribadi Anda:
Ekspor sertifikat CA berenkode PEM dari kumpulan CA Service untuk instance Secure Web Proxy Anda:
gcloud privateca pools get-ca-certs CA_POOL_NAME \ --location=REGION \ --project=PROJECT_ID \ --output-file=agent-gateway-root.crt
Ganti kode berikut:
CA_POOL_NAME: nama kumpulan CA yang terkait dengan kebijakan pemeriksaan TLS Secure Web Proxy Anda.REGION: region kumpulan CA Anda.PROJECT_ID: Project ID Google Cloud Anda.
Perbarui layanan Cloud Run Anda untuk meneruskan konten sertifikat dalam variabel lingkungan:
gcloud beta run services update SERVICE_NAME \ --region=REGION \ --project=PROJECT_ID \ --update-env-vars="AGENT_GATEWAY_ROOT_CERT=$(cat agent-gateway-root.crt)"
Ganti kode berikut:
SERVICE_NAME: nama layanan agen Cloud Run Anda.REGION: region layanan Anda.PROJECT_ID: Project ID Google Cloud Anda.
Misalnya, skrip titik entri container Debian atau Ubuntu berikut,
entrypoint.sh, menginstalAGENT_GATEWAY_ROOT_CERTke dalam trust store sistem dan mengekspor jalur paket CA untuk klien Python dan gRPC sebelum memulai aplikasi Anda:#!/usr/bin/env bash set -e if [ -n "${AGENT_GATEWAY_ROOT_CERT}" ]; then printf '%s\n' "${AGENT_GATEWAY_ROOT_CERT}" > /usr/local/share/ca-certificates/agent-gateway.crt update-ca-certificates export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt export REQUESTS_CA_BUNDLE=/etc/ssl/certs/ca-certificates.crt export GRPC_DEFAULT_SSL_ROOTS_FILE_PATH=/etc/ssl/certs/ca-certificates.crt fi exec "$@"
Pastikan layanan Anda menetapkan variabel lingkungan
AGENT_GATEWAY_ROOT_CERT:gcloud beta run services describe SERVICE_NAME \ --region=REGION \ --project=PROJECT_ID \ --format="yaml(spec.template.spec.containers[0].env)"
Merutekan traffic egress ke Agent Gateway
Setelah mengonfigurasi layanan Cloud Run dan
Agent Gateway, buat kebijakan EgressRouting Network Services API untuk
mengarahkan traffic keluar dari layanan Cloud Run ke
gateway Secure Web Proxy:
Buat resource
EgressRouting:gcloud alpha network-services egress-routings create my-run-egress-routing \ --location=REGION \ --project=PROJECT_ID \ --gateway="//networkservices.googleapis.com/projects/PROJECT_ID/locations/REGION/gateways/SWP_NAME" \ --sources="workloadUri=//run.googleapis.com/projects/PROJECT_ID/locations/REGION/services/SERVICE_NAME"
Ganti kode berikut:
REGION: region layanan dan gateway Cloud Run Anda.PROJECT_ID: Project ID Google Cloud Anda.SWP_NAME: nama resourceGatewaySecure Web Proxy yang mendasarinya, bukan resourceAgentGateway.SERVICE_NAME: nama layanan agen Cloud Run Anda. Untuk merutekan semua layanan Cloud Run dalam project melalui gateway dengan satu kebijakan, tetapkanworkloadUrike//run.googleapis.com/projects/PROJECT_IDatau//run.googleapis.com/projects/PROJECT_NUMBER.
Setelah
EgressRoutingditerapkan, semua traffic keluar dari layanan Cloud Run Anda akan dirutekan melalui Secure Web Proxy. Konfigurasikan kebijakan di bagian berikutnya untuk mengizinkan dan mengatur permintaan keluar.Pastikan resource
EgressRoutingaktif:gcloud alpha network-services egress-routings describe my-run-egress-routing \ --location=REGION \ --project=PROJECT_ID
Pastikan
sourcesmencantumkan URI workload Cloud Run Anda dangatewaymereferensikan resource gateway Secure Web Proxy Anda.
Mengonfigurasi kebijakan di Agent Gateway
Setelah Anda merutekan traffic egress melalui Agent Gateway, kelola permintaan keluar agen Anda dengan melampirkan kebijakan otorisasi dan binding ekstensi Service Extensions ke resource Agent Gateway Anda:
- Pemfilteran alat MCP dan traffic dasar: Izinkan endpoint model serta
metode dan alat Model Context Protocol (MCP) yang disetujui menggunakan kebijakan otorisasi
ALLOW. - Kontrol akses berbasis identitas: Ikat
IAP
dengan resource
ExtensionBindingdan konfigurasikan Unified Access Policy IAM untuk mengontrol agen mana yang dapat memanggil server MCP, alat, atau endpoint tertentu. - Keamanan konten: Ikat
Model Armor dengan
resource
ExtensionBindinguntuk memeriksa dan membersihkan perintah dan respons dari injeksi perintah, kebocoran data sensitif, atau pelanggaran kebijakan.
Setiap kebijakan otorisasi atau aturan kebijakan keamanan gateway yang dilampirkan ke
resource Gateway Secure Web Proxy yang mendasarinya akan diabaikan. Setelah Anda membuat atau memperbarui resource ExtensionBinding, perubahan dapat memerlukan waktu hingga lima menit untuk diterapkan ke gateway. Untuk urutan evaluasi aturan di seluruh aturan jaringan, pemeriksaan TLS, binding ekstensi, dan aturan HTTP, lihat
Urutan evaluasi untuk aturan otorisasi.
Mengizinkan traffic egress dasar dan MCP
Secure Web Proxy menolak semua traffic keluar dengan error 403 Forbidden secara default hingga ALLOW AuthzPolicy di resource Agent Gateway Anda mengizinkannya.
Karena layanan Cloud Run Anda menggunakan --vpc-egress=all, semua
traffic container keluar, termasuk panggilan alat MCP dan permintaan LLM, dirutekan
melalui gateway. Lampirkan kebijakan otorisasi ALLOW ke resource Agent Gateway Anda untuk kedua jenis traffic:
- Server MCP dan alat: Izinkan metode dan alat MCP yang diotorisasi dengan mengikuti petunjuk di Membatasi alat MCP menggunakan kebijakan otorisasi.
- Endpoint model dan non-MCP: Mengizinkan permintaan ke endpoint model seperti
Vertex AI di
REGION-aiplatform.googleapis.commenggunakan aturan SNI Lapisan 4 atau aturan hosthttpRulesLapisan 7. Aturan SNI Lapisan 4 melewati pemeriksaan TLS, seperti yang ditunjukkan dalam Melewati intersepsi TLS menggunakan pencocokan SNI. Aturan hosthttpRulesLapisan 7 membuat pemeriksaan TLS tetap aktif jika Anda memeriksa payload model dengan Model Armor, seperti yang ditunjukkan dalam Mengonfigurasi kebijakan otorisasi untuk tujuan agentic.
Mengonfigurasi kebijakan egress IAP
Agent Gateway menggunakan IAP sebagai mesin keputusan kebijakan untuk mengevaluasi Unified Access Policies IAM. Untuk menerapkan kebijakan identitas agen, tentukan aturan akses Anda dalam Kebijakan Akses Terpadu IAM dan ikat IAP ke gateway Anda:
- Buat Kebijakan Akses Terpadu IAM menggunakan
principal
Identitas Agen
layanan Cloud Run Anda,
principal://agents.global.org-ORGANIZATION_ID.system.id.goog/resources/run/projects/PROJECT_NUMBER/locations/REGION/services/SERVICE_NAME, dan ikat kebijakan tersebut ke project atau gateway Anda dengan mengikuti Membuat kebijakan akses IAM dan Mengikat Kebijakan Akses Terpadu ke project. - Ikat IAP,
iap.googleapis.com, ke Agent Gateway Anda denganExtensionBindingdengan mengikuti petunjuk di Mengikat IAP ke Agent Gateway.
Karena --vpc-egress=all mengirim panggilan model seperti
REGION-aiplatform.googleapis.com melalui gateway,
cakupkan matchConditions di ExtensionBinding IAP Anda ke
prefix: "urn:mcp" agar panggilan model mengabaikan evaluasi IAP. Untuk
juga mengatur traffic agen ke agen, tambahkan prefix: "urn:agent". Jika binding ekstensi Anda cocok dengan host lain, tambahkan aturan izin untuk setiap host di Kebijakan Akses Terpadu IAM Anda, seperti destination.unregistered.host == 'REGION-aiplatform.googleapis.com'.
Sebagai contoh, lihat
Membuat kebijakan agen ke endpoint yang tidak terdaftar.
Mengonfigurasi kebijakan Model Armor
Untuk memeriksa dan membersihkan perintah dan respons yang melewati Gateway Agen, buat template Model Armor dan ikatkan ke gateway Anda:
- Buat template permintaan dan respons Model Armor regional, lalu berikan peran yang diperlukan ke agen layanan Service Extensions dengan mengikuti petunjuk di Mengonfigurasi Model Armor di gateway.
- Lampirkan template ke Agent Gateway Anda dengan
ExtensionBindingdengan mengikuti petunjuk di Mengikat Model Armor untuk sanitasi perintah dan respons.
Mengonfigurasi deployment lintas project terpusat dengan VPC Bersama
Dalam organisasi multi-project, Anda dapat men-deploy agen Cloud Run di satu atau beberapa project layanan sambil menghosting Gateway Agen, instance Secure Web Proxy, dan Registry Agen di project host jaringan khusus menggunakan VPC Bersama:
- Project A, project layanan agen: Menghosting layanan agen Cloud Run dan kebijakan
EgressRoutinglokal. - Project B, project host gateway dan jaringan: Bertindak sebagai
project host VPC Bersama dan harus menghosting
Gateway Agen, instance Secure Web Proxy,
Registry Agen, resource
ExtensionBinding, dan binding kebijakan IAM.
Sebelum memulai langkah-langkah ini, aktifkan run.googleapis.com,
compute.googleapis.com, networkservices.googleapis.com, dan
trafficdirector.googleapis.com di Project A, bersama dengan
aiplatform.googleapis.com jika agen Anda memanggil Vertex AI. Di
Project B, deploy instance Secure Web Proxy dan
resource Agent Gateway di jaringan VPC Bersama seperti
yang dijelaskan dalam
Membuat Agent Gateway yang dikelola sendiri,
dan konfigurasikan perutean DNS atau Private Service Connect seperti yang dijelaskan dalam
Mengonfigurasi jaringan ambient Cloud Run untuk mengakses Traffic Director API
sehingga sidecar ambient di Project A dapat menjangkau Traffic Director API.
Untuk mengonfigurasi deployment lintas project, selesaikan langkah-langkah berikut:
Konfigurasi Project B sebagai project host VPC Bersama, lampirkan Project A sebagai project layanan, dan bagikan subnet yang menghosting instance Secure Web Proxy Anda. Mengaktifkan VPC Bersama dan menautkan project layanan memerlukan
roles/compute.xpnAdmindi level organisasi atau folder. Untuk mengetahui petunjuknya, lihat Mengirim traffic ke jaringan VPC Bersama dengan egress VPC Langsung dan Menyediakan VPC Bersama.Di Project B, berikan
roles/compute.networkUserpada subnet bersama ke agen layanan Cloud Run dari Project A:gcloud compute networks subnets add-iam-policy-binding SHARED_SUBNET_NAME \ --project=PROJECT_B_ID \ --region=REGION \ --member="serviceAccount:service-PROJECT_A_NUMBER@serverless-robot-prod.iam.gserviceaccount.com" \ --role="roles/compute.networkUser"
Ganti kode berikut:
SHARED_SUBNET_NAME: nama subnet bersama di Project B.PROJECT_B_ID: project ID Project B, gateway, dan project host VPC Bersama.REGION: region subnet bersama.PROJECT_A_NUMBER: nomor project dari Project A, project layanan agen.
Deploy layanan agen Cloud Run di Project A yang mengarah ke subnet bersama di Project B:
gcloud beta run deploy SERVICE_NAME \ --project=PROJECT_A_ID \ --image=IMAGE_URL \ --subnet=projects/PROJECT_B_ID/regions/REGION/subnetworks/SHARED_SUBNET_NAME \ --vpc-egress=all \ --functional-type=agent \ --identity-type=agent-identity \ --ambient-networking \ --set-env-vars="GOOGLE_API_USE_CLIENT_CERTIFICATE=false,GOOGLE_API_USE_MTLS_ENDPOINT=never" \ --region=REGION
Ganti kode berikut:
SERVICE_NAME: nama layanan agen Cloud Run Anda di Project A.PROJECT_A_ID: project ID Project A, project layanan agen.IMAGE_URL: referensi ke image container, misalnya,us-docker.pkg.dev/cloudrun/container/hello:latest. Jika Anda menggunakan Artifact Registry, repositori REPO_NAME harus sudah dibuat. URL mengikuti formatLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG.
Setelah men-deploy layanan, konfigurasikan agen Anda di Project A untuk memercayai sertifikat CA root instance Secure Web Proxy di Project B dengan mengikuti langkah-langkah di Mengonfigurasi agen Cloud Run untuk memercayai Agent Gateway.
Buat kebijakan
EgressRoutingdi Project A yang merujuk ke gateway Secure Web Proxy di Project B. Anda harus memilikiroles/networkservices.admindi Project A:gcloud alpha network-services egress-routings create my-central-egress-routing \ --location=REGION \ --project=PROJECT_A_ID \ --gateway="//networkservices.googleapis.com/projects/PROJECT_B_ID/locations/REGION/gateways/CENTRAL_SWP_NAME" \ --sources="workloadUri=//run.googleapis.com/projects/PROJECT_A_ID/locations/REGION/services/SERVICE_NAME"
Ganti
CENTRAL_SWP_NAMEdengan nama gateway Secure Web Proxy di Project B. Untuk merutekan semua layanan Cloud Run di Project A melalui gateway Project B, tetapkanworkloadUrike//run.googleapis.com/projects/PROJECT_A_IDatau//run.googleapis.com/projects/PROJECT_A_NUMBER.Pastikan resource
EgressRoutinglintas project aktif di Project A:gcloud alpha network-services egress-routings describe my-central-egress-routing \ --location=REGION \ --project=PROJECT_A_ID
Konfigurasikan kebijakan dasar pengukuran, IAP, dan Model Armor terpusat pada resource Agent Gateway di Project B seperti yang dijelaskan dalam Mengonfigurasi kebijakan di Agent Gateway:
- Izinkan traffic MCP dan model dasar di resource Agent Gateway di Project B dengan mengikuti Mengizinkan traffic egress dan MCP dasar.
- Untuk mengizinkan agen di Project A memanggil server MCP yang terdaftar di
Project B, buat IAM Unified Access Policy di Project B
yang daftar
principals-nya merujuk ke nomor project Project A,principal://agents.global.org-ORGANIZATION_ID.system.id.goog/resources/run/projects/PROJECT_A_NUMBER/locations/REGION/services/SERVICE_NAME, ikat kebijakan ke Project B atau resource Agent Gateway-nya, dan lampirkanExtensionBindingIAP di Project B. - Untuk menerapkan guardrail Model Armor terpusat di Project B, buat template Model Armor regional, berikan peran yang diperlukan ke agen layanan Service Extensions Project B, dan lampirkan
ExtensionBindingModel Armor ke resource Agent Gateway di Project B.
Melihat log dan trace
Interaksi agen keluar yang dirutekan melalui Agent Gateway menghasilkan log dan trace terdistribusi sehingga Anda dapat memantau keputusan kebijakan dan men-debug perilaku agen:
- Lihat log permintaan untuk layanan Cloud Run dan gateway Secure Web Proxy Anda di Cloud Logging. Untuk mengetahui informasi selengkapnya, lihat Melihat dan menulis log container serta Entri log transaksi Gateway Agen.
- Analisis latensi dan trace permintaan end-to-end di seluruh agen dan gateway Anda di Cloud Trace. Untuk mengetahui informasi selengkapnya, lihat Melacak permintaan dengan Trace.
Jika permintaan keluar gagal atau mengabaikan gateway, lihat Memecahkan masalah Agent Gateway.
Region yang didukung
Anda dapat menggunakan Agent Gateway di Cloud Run di region berikut:
europe-west1us-central1
Batasan
Selain batasan jaringan ambien dan pertimbangan Secure Web Proxy dalam Men-deploy Secure Web Proxy sebagai Agent Gateway, batasan berikut berlaku saat Anda menggunakan Agent Gateway dengan Cloud Run:
- Permintaan agen keluar yang dirutekan melalui instance Secure Web Proxy yang memeriksa TLS
ke endpoint
*.mtls.googleapis.comdan*.mtls.run.appgagal dengan error503karena Secure Web Proxy menghentikan dan memulai ulang sesi TLS tanpa meneruskan sertifikat klien. - Setiap Agent Gateway regional yang dikelola sendiri mendukung maksimal satu
Agent Registry regional dalam daftar
registries-nya. - Secara default, setiap project mendukung hingga 10 resource
AgentGatewayregional dan 10 resourceEgressRoutingregional per region. Project baru mungkin dimulai dengan batas 2 per region. Untuk meminta penambahan kuota, hubungi tim akun Anda. - Anda harus mengekspor sertifikat root atau subordinat dari pool CA Service atau PKI perusahaan pribadi dan mengonfigurasi container agen Anda untuk memercayainya.
Langkah berikutnya
- Memecahkan masalah Agent Gateway
- Mengonfigurasi fitur Gemini Enterprise Agent Platform untuk Cloud Run
- Mengonfigurasi Ambient Networking untuk Cloud Run
- Mengirim traffic ke jaringan VPC dengan traffic keluar VPC Langsung
- Ringkasan Agent Gateway
- Ringkasan pengelolaan token