Identitas Agen menyediakan identitas kriptografis yang dibuktikan secara kuat untuk setiap agen yang didasarkan pada standar SPIFFE. Dengan Identitas Agen, agen Anda dapat melakukan autentikasi dengan aman ke server MCP, resource cloud, endpoint, dan agen lain, baik atas namanya sendiri maupun atas nama pengguna akhir. Identitas Agen menggunakan kredensial agen itu sendiri dan pengelola autentikasi Identitas Agen. Anda dapat menggunakan pengelola autentikasi untuk membuat dan mengelola penyedia autentikasi, yang merupakan konfigurasi spesifik yang digunakan untuk mendapatkan, mengelola, dan mengamankan kunci API, ID klien OAuth, rahasia klien OAuth, dan token OAuth pengguna akhir yang didelegasikan.
Tidak seperti akun layanan, identitas agen tidak dibagikan oleh beberapa workload secara default, tidak dapat di-impersonate, dan tidak mengizinkan developer membuat kunci akun layanan yang berlaku lama. Token akses yang dibuat untuk Google Cloud terikat secara kriptografis ke sertifikat X.509 unik agen untuk mencegah pencurian token.
Saat Identitas Agen digunakan dengan Agent Gateway dan Gemini Enterprise, kredensial pengguna akhir, seperti yang disediakan oleh konektor Gemini Enterprise, dienkripsi oleh pengelola autentikasi dan didekripsi di gateway, sehingga memastikan bahwa agen tidak akan pernah dapat mengakses kredensial mentah.
Layanan berikut mendukung Identitas Agen:
- Runtime Platform Agen Gemini Enterprise (Runtime Agen)
- Gemini Enterprise (Pratinjau)
Model autentikasi
Untuk melakukan autentikasi dengan berbagai alat dan layanan, Identitas Agen mendukung beberapa model autentikasi. Model yang digunakan agen bergantung pada metode autentikasi yang ditawarkan oleh resource target dan apakah agen bertindak atas otoritasnya sendiri atau atas nama pengguna akhir.
| Otoritas | Metode autentikasi | Resource target | Kasus penggunaan dan solusi |
|---|---|---|---|
| Otoritas yang didelegasikan pengguna | OAuth 2.0 (3-legged) (Pratinjau) | Alat dan layanan eksternal | Saat agen bertindak atas nama pengguna tertentu (misalnya, untuk mengakses tugas Jira atau repositori GitHub pengguna). Anda mengonfigurasi penyedia autentikasi OAuth 3-legged di pengelola autentikasi Identitas Agen untuk mengelola izin dan token pengguna. Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi menggunakan 3-legged OAuth dengan pengelola autentikasi. |
| Otoritas agen sendiri | Identitas berbasis cloud (Identitas Agen) | Google Cloud layanan | Saat agen yang dihosting di Google Cloud perlu mengakses layanan Google Cloud lain menggunakan identitasnya sendiri. Untuk mengetahui informasi selengkapnya, lihat Mengautentikasi menggunakan identitas agen itu sendiri. |
| OAuth 2.0 (2-legged) (Pratinjau) | Alat dan layanan eksternal | Direkomendasikan untuk autentikasi antar-mesin dengan layanan eksternal yang mendukung OAuth. Anda mengonfigurasi penyedia autentikasi OAuth bercabang 2 di pengelola autentikasi Identitas Agen untuk menangani kredensial klien dan token akses. Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi menggunakan OAuth 2-legged dengan pengelola auth. | |
| Kunci API (Pratinjau) | Alat dan layanan eksternal | Untuk layanan eksternal yang memerlukan kunci kriptografi atau sandi untuk autentikasi. Anda mengonfigurasi penyedia autentikasi kunci API di pengelola autentikasi Identitas Agen untuk membantu menyimpan dan mengelola kunci dengan aman. Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi menggunakan kunci API dengan pengelola autentikasi. | |
| Autentikasi dasar HTTP | Alat dan layanan eksternal | Menggunakan sandi teks biasa. Metode ini tidak direkomendasikan. Anda dapat menyimpan sandi yang mirip dengan kunci API. Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi menggunakan kunci API dengan pengelola autentikasi. |
Komponen inti
Identitas Agen melibatkan beberapa komponen utama yang secara bersama-sama membantu menyediakan autentikasi dan otorisasi yang aman.
Identitas berbasis SPIFFE
Setiap agen diberi string identitas unik, atau ID SPIFFE, berdasarkan standar SPIFFE. Identitas ini dibuktikan dengan kuat, terkait dengan siklus proses agen, dan dipetakan langsung ke URI resource tempat agen dihosting.
Identitas mengikuti format berikut:
spiffe://TRUST_DOMAIN/resources/SERVICE/RESOURCE_PATH
Contoh:
spiffe://agents.global.org-123456789012.system.id.goog/resources/aiplatform/projects/9876543210/locations/us-central1/reasoningEngines/my-test-agent
Jika identitas agen digunakan dalam kebijakan izin IAM, ID akun utama akan mengikuti format berikut:
principal://TRUST_DOMAIN/resources/SERVICE/RESOURCE_PATH
Contoh:
- Agent Engine Platform Agen:
principal://agents.global.org-123456789012.system.id.goog/resources/aiplatform/projects/9876543210/locations/us-central1/reasoningEngines/my-test-agent - Gemini Enterprise:
principal://agents.global.org-123456789012.system.id.goog/resources/discoveryengine/projects/9876543210/locations/global/collections/default_collection/engines/my-test-agent
ID menggunakan hal berikut:
TRUST_DOMAIN: Domain tepercaya organisasi Anda (misalnya,agents.global.org-123456789012.system.id.goog).SERVICE: Nama pendek layanan Google Cloud (misalnya,aiplatformataudiscoveryengine).RESOURCE_PATH: Jalur lengkap ke resource yang menghosting agen.
Karena agen itu sendiri adalah akun utama, Anda memberikan izin langsung ke ID ini untuk mengontrol resource mana yang dapat diakses agen.
Kredensial agen
Kredensial agen memberikan bukti kriptografis identitas agen. Sistem mendukung sertifikat X.509 dan token akses. Google Cloud Sertifikat X.509 disediakan dan dikelola secara otomatis di agen untuk membantu mendukung autentikasi yang lebih kuat.
Pengelola autentikasi Identitas Agen
Pengelola autentikasi Identitas Agen adalah brankas kredensial yang dirancang untuk membantu melindungi kredensial. Dengan API ini, agen dapat melakukan autentikasi menggunakan kunci API atau ID dan rahasia klien OAuth, atau atas nama pengguna melalui delegasi OAuth menggunakan token akses pengguna akhir. Dalam pengelola autentikasi, Anda mengonfigurasi penyedia autentikasi yang menentukan jenis dan kredensial autentikasi untuk aplikasi pihak ketiga tertentu.
Akses ke pengelola autentikasi Identitas Agen diatur oleh IAM, dan agen menggunakan ID SPIFFE Agennya sendiri untuk melakukan autentikasi ke pengelola autentikasi. Semua peristiwa akses pengguna akhir juga dapat diatribusikan ke ID SPIFFE agen, sehingga memudahkan tata kelola.
Pengelola autentikasi Identitas Agen mengotomatiskan perolehan kredensial OAuth, seperti membuka dialog untuk proses login dan izin pengguna. Fitur ini juga memberikan visibilitas ke akses pengguna akhir dan memungkinkan pencabutan akses, sehingga memastikan tata kelola yang lebih baik atas izin yang didelegasikan pengguna.
Keamanan dan tata kelola
Identitas Agen terintegrasi sepenuhnya dengan sistem kebijakan Google seperti IAM, Principal Access Boundary (PAB), dan Kontrol Layanan VPC, yang memungkinkan peningkatan keamanan dan tata kelola. Selain itu, fitur ini juga terintegrasi dengan pencatatan audit untuk memastikan akuntabilitas dan memberikan log audit yang jelas, baik saat agen bertindak sendiri maupun saat bertindak atas nama pengguna akhir.
- Akses Kontekstual: Secara default, kebijakan Akses Kontekstual yang dikelola Google membantu mengamankan kredensial Identitas Agen. Selain Agent Gateway, kebijakan ini menerapkan Bukti Kepemilikan yang Dapat Ditunjukkan (DPoP) dengan mengautentikasi token akses agen. Kebijakan ini juga memastikan bahwa mTLS digunakan untuk mengakses Agent Gateway. Hal ini memastikan bahwa token terikat sertifikat hanya dapat digunakan dari lingkungan runtime yang tepercaya dan ditujukan untuknya.
- Integrasi IAM: Dukungan untuk kebijakan izin IAM standar dan kebijakan penolakan.
- Batas Akses Principal (PAB): PAB membatasi resource yang dapat diakses agen, terlepas dari izin lainnya.
- Kontrol Layanan VPC: Dukungan untuk menggunakan identitas agen (Pratinjau) dalam aturan ingress dan egress untuk mengizinkan akses ke resource yang dilindungi oleh perimeter layanan.
Cara kerja Identitas Agen
Identitas Agen mengautentikasi dan mengotorisasi tindakan agen melalui alur kerja yang dirancang untuk membantu meningkatkan keamanan:
- Penetapan identitas: Saat Anda men-deploy agen, Google Cloud menetapkan identitas SPIFFE unik dan sertifikat X.509 untuk agen tersebut. Setiap sertifikat X.509 berlaku selama 24 jam, dan diperbarui secara otomatis untuk menjaga keamanan. Google Cloud
- Akuisisi kredensial: Metode yang digunakan agen untuk mendapatkan
kredensial bergantung pada apa yang coba diakses. Berikut beberapa contohnya:
- Layanan Google Cloud akses: Agen meminta token akses terikat. Token ini terikat secara kriptografis ke sertifikat X.509 unik agen untuk mencegah pencurian token. Untuk mengetahui informasi selengkapnya, lihat Keamanan dan tata kelola.
- Mengakses alat eksternal: Agen menggunakan pengelola autentikasi Identitas Agen untuk mengambil kredensial yang diperlukan (seperti kunci API atau token OAuth) dari penyedia autentikasi. Pengelola autentikasi mendukung otoritas yang didelegasikan pengguna dan otoritas agen itu sendiri.
Manfaat Identitas Agen
Identitas Agen meningkatkan keamanan dibandingkan akun layanan standar.
- Isolasi yang kuat: Tidak seperti akun layanan, identitas agen tidak dibagikan oleh beberapa beban kerja secara default, tidak dapat ditiru identitasnya, dan tidak mengizinkan developer membuat kunci akun layanan yang berlaku lama.
- Keamanan kredensial: Kebijakan Akses Kontekstual default membuat token terikat tidak dapat diputar ulang, sehingga membantu melindungi dari pencurian token dan pengambilalihan akun. Saat Identitas Agen digunakan dengan Agent Gateway dan Gemini Enterprise, kredensial pengguna akhir, seperti yang disediakan oleh konektor Gemini Enterprise, dienkripsi oleh pengelola autentikasi dan didekripsi di gateway, sehingga memastikan bahwa agen tidak akan pernah dapat mengakses kredensial mentah.
- Pendekatan hak istimewa terendah: Menyediakan identitas per agen, bukan akun layanan bersama untuk menghilangkan agen yang memiliki terlalu banyak izin.
- Gesekan yang lebih sedikit: Mengotomatiskan alur OAuth yang kompleks dan mengelola kunci API untuk integrasi alat yang lebih sederhana.
- Kemampuan observasi yang ditingkatkan: Menyediakan log audit yang jelas. Saat agen bertindak atas nama pengguna, log akan menampilkan identitas agen dan pengguna.
Batasan
- Peran bucket lama Cloud Storage: Anda tidak dapat memberikan peran bucket lama kepada identitas agen (misalnya,
storage.legacyBucketReader).
Langkah berikutnya
- Membuat agen dengan Identitas Agen
- Mengautentikasi menggunakan otoritas agen itu sendiri
- Mengautentikasi menggunakan 3-legged OAuth dengan pengelola autentikasi
- Melakukan autentikasi menggunakan 2-legged OAuth dengan pengelola autentikasi
- Mengautentikasi menggunakan kunci API dengan pengelola autentikasi
- Mengelola penyedia autentikasi Identitas Agen
- Memecahkan masalah pengelola autentikasi Identitas Agen
- Konsep SPIFFE