Agent Identity menyediakan identitas kriptografi yang sangat terbukti untuk setiap agen yang didasarkan pada standar SPIFFE. Dengan Agent Identity, agen Anda dapat melakukan autentikasi dengan aman ke server MCP, resource cloud, endpoint, dan agen lainnya, baik bertindak atas nama sendiri maupun atas nama pengguna akhir. Agent Identity menggunakan kredensial agen sendiri dan pengelola autentikasi Agent Identity. 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 ditiru, dan tidak mengizinkan developer membuat kunci akun layanan yang berjangka panjang. Token akses yang dibuat untuk Google Cloud terikat secara kriptografis ke sertifikat X.509 unik agen untuk mencegah pencurian token.
Saat Agent Identity 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 pernah dapat mengakses kredensial mentah.
Layanan berikut mendukung Agent Identity:
- Runtime Platform Agen Gemini Enterprise (Agent Runtime)
- Gemini Enterprise
Model autentikasi
Untuk melakukan autentikasi dengan berbagai alat dan layanan, Agent Identity 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) | 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 Agent Identity untuk mengelola izin dan token pengguna. Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi menggunakan OAuth 3-legged dengan pengelola autentikasi. |
| Otoritas agen sendiri | Identitas berbasis cloud (Agent Identity) | Google Cloud Layanan | Saat agen yang dihosting di Google Cloud diperlukan untuk mengakses layanan Google Cloud lain menggunakan identitasnya sendiri. Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi menggunakan identitas agen sendiri. |
| OAuth 2.0 (2-legged) | Alat dan layanan eksternal | Direkomendasikan untuk autentikasi machine-to-machine dengan layanan eksternal services yang mendukung OAuth. Anda mengonfigurasi penyedia autentikasi OAuth 2-legged di pengelola autentikasi Agent Identity untuk menangani kredensial klien dan token akses. Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi menggunakan OAuth 2-legged dengan pengelola autentikasi. | |
| Kunci API | Alat dan layanan eksternal | Untuk layanan eksternal yang memerlukan kunci kriptografi atau sandi untuk autentikasi. Anda mengonfigurasi penyedia autentikasi kunci API di pengelola autentikasi Agent Identity 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
Agent Identity melibatkan beberapa komponen utama yang bersama-sama membantu menyediakan autentikasi dan otorisasi yang aman.
Identitas berbasis SPIFFE
Setiap agen diberi string identitas unik, atau SPIFFE ID, berdasarkan standar SPIFFE. Identitas ini sangat terbukti, terikat dengan siklus proses agen, dan dipetakan langsung ke URI resource tempat agen dihosting.
Identitas mengikuti format ini:
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 utama akan mengikuti format ini:
principal://TRUST_DOMAIN/resources/SERVICE/RESOURCE_PATH
Contoh:
- Agent Runtime:
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 kepercayaan organisasi Anda (misalnya,agents.global.org-123456789012.system.id.goog).SERVICE: Nama pendek Google Cloud layanan (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 yang dapat diakses agen.
Kredensial agen
Kredensial agen memberikan bukti kriptografi identitas agen. Sistem mendukung sertifikat X.509 dan Google Cloud token akses. Sertifikat X.509 otomatis disediakan dan dikelola di agen untuk membantu mendukung autentikasi yang lebih kuat.
Secara default, identitas agen menggunakan TLS timbal balik (mTLS) dengan sertifikat X.509 saat berkomunikasi langsung dengan Google Cloud API. Saat agen berinteraksi di seluruh Agent Gateway, mereka juga menggunakan Demonstrating Proof of Possession (DPoP), yang membuat kredensial terikat ganda untuk keamanan end-to-end. Pengikatan ganda ini berarti bahwa agen melakukan autentikasi menggunakan mTLS untuk akses pihak pertama ke gateway dan menggunakan DPoP untuk interaksi di luar gateway.
Pengelola autentikasi Agent Identity
Pengelola autentikasi Agent Identity adalah vault kredensial terpusat dan broker autentikasi yang menyederhanakan autentikasi alat keluar untuk agen Anda. Pengelola ini memungkinkan agen 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 autentikasi dan kredensial untuk aplikasi pihak ketiga tertentu.
Akses ke pengelola autentikasi Agent Identity diatur oleh IAM, dan agen menggunakan Agent SPIFFE ID-nya sendiri untuk melakukan autentikasi ke pengelola autentikasi. Semua peristiwa akses pengguna akhir juga dapat dikaitkan dengan SPIFFE ID agen, sehingga memungkinkan tata kelola yang mudah.
Pengelola autentikasi Agent Identity mengotomatiskan perolehan kredensial OAuth, seperti membuka dialog untuk login dan izin pengguna. Pengelola ini juga memberikan visibilitas ke akses pengguna akhir dan memungkinkan pencabutan akses, sehingga memastikan tata kelola yang lebih baik atas izin yang didelegasikan pengguna.
Untuk mengetahui informasi selengkapnya, lihat ringkasan pengelola autentikasi Agent Identity.
Keamanan dan tata kelola
Agent Identity terintegrasi sepenuhnya dengan sistem kebijakan Google seperti IAM, Principal Access Boundary (PAB), dan Kontrol Layanan VPC, yang memungkinkan peningkatan keamanan dan tata kelola. Agent Identity juga terintegrasi dengan logging audit untuk memastikan akuntabilitas dan memberikan log audit yang jelas baik saat agen bertindak sebagai dirinya sendiri maupun saat bertindak atas nama pengguna akhir.
- Akses Kontekstual: Secara default, kebijakan Akses Kontekstual yang dikelola Google membantu mengamankan kredensial agen dengan menerapkan mTLS dan pengikatan token DPoP. Pendekatan ini memastikan bahwa token yang terikat sertifikat tidak dapat diputar ulang di luar lingkungan runtime tepercaya.
- Integrasi IAM: Dukungan untuk kebijakan izin IAM standar dan kebijakan penolakan.
- Principal Access Boundary (PAB): PAB membatasi resource yang dapat diakses agen, terlepas dari izin lainnya.
- Kontrol Layanan VPC: Dukungan untuk perlindungan perimeter dan penggunaan utama:
- Perlindungan perimeter: Anda dapat menambahkan Agent Identity API (
agentidentity.googleapis.com) dan Agent Identity Credentials API (agentidentitycredentials.googleapis.com) ke perimeter layanan untuk membantu mengontrol akses ke API ini. Untuk menggunakan API ini dalam perimeter layanan, klien harus merutekan permintaan melalui VIP Terbatas (restricted.googleapis.com). - Aturan ingress dan egress: Dukungan untuk menggunakan identitas agen sebagai akun utama dalam aturan ingress dan egress untuk mengizinkan akses ke resource yang dilindungi oleh perimeter layanan.
- Perlindungan perimeter: Anda dapat menambahkan Agent Identity API (
Cara kerja Agent Identity
Agent Identity melakukan autentikasi dan otorisasi 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. Setiap sertifikat X.509 berlaku selama 24 jam, dan Google Cloud otomatis memperbaruinya untuk menjaga keamanan.
- Perolehan kredensial: Metode yang digunakan agen untuk mendapatkan
kredensial bergantung pada apa yang ingin mereka akses. Berikut beberapa contohnya:
- Mengakses Google Cloud layanan: Agen meminta token akses terikat. Token ini terikat secara kriptografis ke sertifikat X.509 unik agen untuk membantu mencegah pencurian token. Untuk mengetahui informasi selengkapnya, lihat Keamanan dan tata kelola.
- Mengakses alat eksternal: Agen menggunakan pengelola autentikasi Agent Identity untuk mengambil kredensial yang diperlukan (seperti kunci API atau token OAuth) dari penyedia autentikasi. Pengelola autentikasi mendukung otoritas yang didelegasikan pengguna dan otoritas agen sendiri.
Manfaat Agent Identity
Agent Identity meningkatkan keamanan dibandingkan akun layanan standar.
- Isolasi yang kuat: Tidak seperti akun layanan, identitas agen tidak dibagikan oleh beberapa workload secara default, tidak dapat ditiru, dan tidak mengizinkan developer membuat kunci akun layanan yang berjangka panjang.
- Keamanan kredensial: Kebijakan Akses Kontekstual default membuat token terikat tidak dapat diputar ulang, sehingga membantu melindungi dari pencurian token dan pengambilalihan akun. Saat Agent Identity 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 pernah dapat mengakses kredensial mentah.
- Pendekatan hak istimewa terendah: Menyediakan identitas per agen, bukan akun layanan bersama, untuk menghilangkan agen yang memiliki izin berlebihan.
- Pengurangan gesekan: Mengotomatiskan alur OAuth yang kompleks dan mengelola kunci API untuk integrasi alat yang lebih sederhana.
- Peningkatan observabilitas: 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 identitas agen (misalnya,
storage.legacyBucketReader).
Langkah berikutnya
- Pelajari lebih lanjut tentang cara menggunakan identitas agen dengan Agent Runtime.
- Pelajari lebih lanjut cara mengelola agen.