Ringkasan kontrol akses

Saat membuat project Google Cloud , Anda adalah satu-satunya prinsipal di project tersebut. Secara default, tidak ada akun utama lain (pengguna, grup, atau akun layanan) yang memiliki akses ke project Anda atau resource-nya. Setelah berhasil menyediakan Application Integration di project, Anda dapat menambahkan prinsipal baru dan menetapkan kontrol akses untuk resource Application Integration.

Application Integration menggunakan Identity and Access Management (IAM) untuk mengelola kontrol akses dalam project Anda. Anda dapat menggunakan IAM untuk mengelola akses di tingkat project atau di tingkat resource:

  • Untuk memberikan akses ke resource di level project, tetapkan satu atau beberapa peran ke akun utama.
  • Untuk memberikan akses ke resource tertentu, tetapkan kebijakan IAM pada resource tersebut. Resource harus mendukung kebijakan tingkat resource. Kebijakan ini menentukan peran yang ditetapkan ke akun utama.

Peran IAM

Setiap akun utama di Google Cloud project Anda diberi peran dengan izin tertentu. Saat menambahkan akun utama ke project atau ke resource, Anda menentukan peran yang akan diberikan kepadanya. Setiap peran IAM berisi serangkaian izin yang memungkinkan akun utama melakukan tindakan tertentu pada resource.

Untuk mengetahui informasi selengkapnya tentang berbagai jenis peran di IAM, lihat Memahami peran.

Untuk mengetahui informasi tentang cara memberikan peran kepada akun utama, lihat Memberikan, mengubah, dan mencabut akses.

Application Integration menyediakan serangkaian peran IAM bawaan tertentu. Anda dapat menggunakan peran ini untuk memberikan akses ke resource Application Integration tertentu dan mencegah akses yang tidak diinginkan ke resource Google Cloud lainnya.

Akun layanan

Akun layanan adalah akun Google Cloud yang terkait dengan project Anda yang dapat melakukan tugas atau operasi atas nama Anda. Akun layanan diberi peran dan izin dengan cara yang sama seperti akun utama, menggunakan IAM. Untuk mengetahui informasi selengkapnya tentang akun layanan dan berbagai jenis akun layanan, lihat Akun layanan IAM.

Anda harus memberikan peran IAM yang sesuai ke akun layanan untuk mengizinkan akun layanan tersebut mengakses metode API yang relevan. Saat Anda memberikan peran IAM ke akun layanan, integrasi apa pun yang menambahkan akun layanan tersebut akan memiliki otorisasi yang diberikan oleh peran tersebut. Jika tidak ada peran yang telah ditetapkan untuk tingkat akses yang diinginkan, Anda dapat membuat dan memberikan peran khusus.

Application Integration menggunakan dua jenis akun layanan:

Akun layanan yang dikelola pengguna

Akun layanan yang dikelola pengguna dapat dilampirkan ke integrasi untuk memberikan kredensial guna menjalankan tugas. Untuk mengetahui informasi selengkapnya, lihat Akun layanan yang dikelola pengguna.

Otorisasi yang diberikan ke integrasi dibatasi oleh dua konfigurasi terpisah: peran yang diberikan ke akun layanan yang ditambahkan dan cakupan akses. Kedua konfigurasi ini harus mengizinkan akses sebelum integrasi dapat menjalankan tugas.

Akun layanan yang dikelola pengguna memiliki alamat email berikut:

service-account-name@PROJECT_ID.iam.gserviceaccount.com

Akun layanan default

Project Google Cloud baru yang telah menyediakan Application Integration memiliki akun layanan default Application Integration, yang memiliki alamat email berikut:

service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com

Akun layanan default Application Integration dibuat selama penyediaan dan otomatis ditambahkan ke project Anda dengan peran dan izin IAM dasar. Untuk mengetahui informasi selengkapnya, lihat Akun layanan default.

Untuk mengetahui informasi tentang cara memberikan peran atau izin tambahan ke akun layanan default, lihat Memberikan, mengubah, dan mencabut akses.

Tambahkan akun layanan

Application Integration menyediakan dua cara untuk menambahkan akun layanan ke integrasi Anda:

Aturan autentikasi

Jika integrasi Anda telah mengonfigurasi profil OAuth 2.0 dan akun layanan yang dikelola pengguna, maka secara default profil OAuth 2.0 digunakan untuk autentikasi. Jika profil OAuth 2.0 maupun akun layanan yang dikelola pengguna tidak dikonfigurasi, akun layanan default (service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com) akan digunakan. Jika tugas tidak menggunakan akun layanan default, eksekusi akan gagal.

Aturan otorisasi

Jika melampirkan akun layanan ke integrasi, Anda harus menentukan tingkat akses yang dimiliki akun layanan dengan peran IAM yang Anda berikan ke akun layanan. Jika akun layanan tidak memiliki peran IAM, tidak ada resource yang dapat diakses menggunakan akun layanan tersebut.

Cakupan akses berpotensi membatasi akses lebih lanjut ke metode API saat mengautentikasi melalui OAuth. Namun, mereka tidak meluas ke protokol autentikasi lain seperti gRPC.

Peran IAM

Anda harus memberikan peran IAM yang sesuai ke akun layanan untuk mengizinkan akun layanan tersebut mengakses metode API yang relevan.

Saat Anda memberikan peran IAM ke akun layanan, integrasi apa pun yang menambahkan akun layanan tersebut akan memiliki otorisasi yang diberikan oleh peran tersebut.

Access scopes

Cakupan akses adalah metode lama dalam menentukan otorisasi untuk integrasi Anda. Library ini menentukan cakupan OAuth default yang digunakan dalam permintaan dari gcloud CLI atau library klien. Cakupan memungkinkan Anda menentukan izin akses untuk pengguna. Anda dapat menentukan beberapa cakupan yang dipisahkan dengan satu spasi (" "). Untuk mengetahui informasi selengkapnya, lihat Cakupan OAuth 2.0 untuk Google API. Untuk akun layanan yang dikelola pengguna, cakupannya telah ditentukan sebelumnya ke cakupan berikut:

https://www.googleapis.com/auth/cloud-platform