Halaman ini menjelaskan cara membuat akun layanan menggunakan
Identity and Access Management (IAM), konsol Google Cloud, dan alat command line gcloud
.
Secara default, setiap project dapat memiliki hingga 100 akun layanan yang mengontrol akses ke resource Anda. Jika perlu, Anda dapat meminta penambahan kuota. Pelajari kuota dan batas lebih lanjut.
Sebelum memulai
Aktifkan IAM API.
Menyiapkan autentikasi.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
Di konsol Google Cloud, aktifkan Cloud Shell.
Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.
C#
Untuk menggunakan contoh .NET di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Buat kredensial autentikasi lokal untuk Akun Google Anda:
gcloud auth application-default login
Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal dalam dokumentasi autentikasi Google Cloud.
C++
Untuk menggunakan contoh C++ di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Buat kredensial autentikasi lokal untuk Akun Google Anda:
gcloud auth application-default login
Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal dalam dokumentasi autentikasi Google Cloud.
Go
Untuk menggunakan contoh Go di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Buat kredensial autentikasi lokal untuk Akun Google Anda:
gcloud auth application-default login
Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal dalam dokumentasi autentikasi Google Cloud.
Java
Untuk menggunakan contoh Java di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Buat kredensial autentikasi lokal untuk Akun Google Anda:
gcloud auth application-default login
Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal dalam dokumentasi autentikasi Google Cloud.
Python
Untuk menggunakan contoh Python di halaman ini dalam lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Buat kredensial autentikasi lokal untuk Akun Google Anda:
gcloud auth application-default login
Untuk informasi selengkapnya, lihat Menyiapkan autentikasi untuk lingkungan pengembangan lokal dalam dokumentasi autentikasi Google Cloud.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Memahami akun layanan IAM
Peran yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk membuat akun layanan, minta administrator untuk memberi Anda peran IAM Create Service Accounts (
roles/iam.serviceAccountCreator
) pada project. Untuk mengetahui informasi selengkapnya tentang cara memberikan 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 ingin memberikan akun layanan yang baru dibuat akses ke project, Anda juga memerlukan peran admin IAM Project (
roles/resourcemanager.projectIamAdmin
).Membuat akun layanan
Saat membuat akun layanan, Anda harus memberikan ID alfanumerik (
SERVICE_ACCOUNT_NAME
dalam contoh di bawah), sepertimy-service-account
. Panjang ID harus antara 6 sampai 30 karakter, dan dapat berisi karakter alfanumerik huruf kecil dan tanda pisah. Setelah membuat akun layanan, Anda tidak dapat mengubah namanya.Nama akun layanan akan muncul di alamat email yang disediakan selama pembuatan, dalam format
SERVICE_ACCOUNT_NAME@PROJECT_ID.
.Setiap akun layanan juga memiliki ID numerik unik yang permanen, yang dihasilkan secara otomatis.
Anda juga memberikan informasi berikut saat membuat akun layanan:
DESCRIPTION
adalah deskripsi opsional untuk akun layanan.DISPLAY_NAME
adalah nama yang cocok untuk akun layanan.PROJECT_ID
adalah ID project Google Cloud Anda.
Setelah membuat akun layanan, Anda mungkin perlu menunggu selama 60 detik atau lebih sebelum menggunakan akun layanan. Perilaku ini terjadi karena operasi baca pada akhirnya konsisten; perlu waktu hingga akun layanan baru terlihat. Jika Anda mencoba membaca atau menggunakan akun layanan segera setelah membuatnya, dan Anda menerima error, Anda dapat mencoba kembali permintaan dengan backoff eksponensial.
Konsol
- Di konsol Google Cloud, buka halaman Create service account.
Langkah-langkah lainnya akan muncul di konsol Google Cloud.
- Pilih project Google Cloud.
- Masukkan nama akun layanan untuk ditampilkan di konsol Google Cloud.
Konsol Google Cloud membuat ID akun layanan berdasarkan nama ini. Edit ID jika diperlukan. Anda tidak dapat mengubah ID nanti.
- Opsional: Masukkan deskripsi akun layanan.
- Jika tidak ingin menetapkan kontrol akses sekarang, klik Selesai untuk menyelesaikan pembuatan akun layanan. Untuk menetapkan kontrol akses sekarang, klik Buat dan lanjutkan, lalu lanjutkan ke langkah berikutnya.
- Opsional: Pilih satu atau beberapa peran IAM untuk diberikan ke akun layanan pada project.
- Setelah selesai menambahkan peran, klik Lanjutkan.
- Opsional: Di kolom Peran pengguna akun layanan, tambahkan anggota yang perlu melampirkan akun layanan ke resource lain.
- Opsional: Di kolom Peran admin akun layanan, tambahkan anggota yang perlu mengelola akun layanan.
- Klik Selesai untuk menyelesaikan pembuatan akun layanan.
gcloud
-
Di konsol Google Cloud, aktifkan Cloud Shell.
Di bagian bawah Google Cloud Console, Cloud Shell sesi akan terbuka dan menampilkan perintah command line. Cloud Shell adalah lingkungan shell dengan Google Cloud CLI yang sudah terinstal, dan dengan nilai yang sudah ditetapkan untuk project Anda saat ini. Diperlukan waktu beberapa detik untuk melakukan inisialisasi sesi.
-
Untuk membuat akun layanan, jalankan perintah
gcloud iam service-accounts create
:gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \ --description="DESCRIPTION" \ --display-name="DISPLAY_NAME"
Ganti nilai berikut:
-
SERVICE_ACCOUNT_NAME
: nama akun layanan -
DESCRIPTION
: deskripsi opsional untuk akun layanan -
DISPLAY_NAME
: nama akun layanan untuk ditampilkan di konsol Google Cloud.
-
-
Opsional: Untuk memberi akun layanan Anda peran IAM pada project Anda, jalankan perintah
gcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID." \ --role="ROLE_NAME"
Ganti nilai berikut:
-
PROJECT_ID
: project ID -
SERVICE_ACCOUNT_NAME
: nama akun layanan -
ROLE_NAME
: nama peran, sepertiroles/compute.osLogin
-
-
Opsional: Untuk memungkinkan pengguna melampirkan akun layanan ke resource lain, jalankan perintah
gcloud iam service-accounts add-iam-policy-binding
untuk memberikan peran Pengguna Akun Layanan kepada pengguna (roles/iam.serviceAccountUser
) di akun layanan:gcloud iam service-accounts add-iam-policy-binding \ SERVICE_ACCOUNT_NAME@PROJECT_ID. \ --member="user:USER_EMAIL" \ --role="roles/iam.serviceAccountUser"
Ganti nilai berikut:
PROJECT_ID
: the project IDSERVICE_ACCOUNT_NAME
: nama akun layananUSER_EMAIL
: alamat email untuk pengguna
C++
Untuk mempelajari cara menginstal dan menggunakan library klien untuk IAM, lihat library klien IAM. Untuk informasi selengkapnya, lihat dokumentasi referensi API C++ IAM.
Untuk melakukan autentikasi ke IAM, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Sebelum memulai.
C#
Untuk mempelajari cara menginstal dan menggunakan library klien untuk IAM, lihat library klien IAM. Untuk informasi selengkapnya, lihat dokumentasi referensi API C# IAM.
Untuk melakukan autentikasi ke IAM, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Sebelum memulai.
Go
Untuk mempelajari cara menginstal dan menggunakan library klien untuk IAM, lihat library klien IAM. Untuk informasi selengkapnya, lihat dokumentasi referensi API Go IAM.
Untuk melakukan autentikasi ke IAM, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Sebelum memulai.
Java
Untuk mempelajari cara menginstal dan menggunakan library klien untuk IAM, lihat library klien IAM. Untuk informasi selengkapnya, lihat dokumentasi referensi API Java IAM.
Untuk melakukan autentikasi ke IAM, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Sebelum memulai.
Python
Untuk mempelajari cara menginstal dan menggunakan library klien untuk IAM, lihat library klien IAM. Untuk informasi selengkapnya, lihat dokumentasi referensi API Python IAM.
Untuk melakukan autentikasi ke IAM, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, lihat Sebelum memulai.
REST
Metode
serviceAccounts.create
membuat akun layanan.Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:
PROJECT_ID
: Project ID Google Cloud Anda Project ID adalah string alfanumerik, sepertimy-project
.SA_NAME
: ID alfanumerik akun layanan Anda. Panjang nama ini harus antara 6 dan 30 karakter, serta dapat berisi karakter alfanumerik huruf kecil dan tanda pisah.SA_DESCRIPTION
: Opsional. Deskripsi untuk akun layanan.SA_DISPLAY_NAME
: Nama yang dapat dibaca manusia untuk akun layanan.
Metode HTTP dan URL:
POST https://iam.googleapis.com/v1/projects/PROJECT_ID/serviceAccounts
Meminta isi JSON:
{ "accountId": "SA_NAME", "serviceAccount": { "description": "SA_DESCRIPTION", "displayName": "SA_DISPLAY_NAME" } }
Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:
Anda akan melihat respons JSON seperti berikut:
{ "name": "projects/my-project/serviceAccounts/my-service-account@my-project.", "projectId": "my-project", "uniqueId": "123456789012345678901", "email": "my-service-account@my-project.", "displayName": "My service account", "etag": "BwUp3rVlzes=", "description": "A service account for running jobs in my project", "oauth2ClientId": "987654321098765432109" }
Setelah Anda membuat akun layanan, berikan satu atau beberapa peran ke akun layanan sehingga akun layanan tersebut dapat bertindak atas nama Anda.
Selain itu, jika akun layanan perlu mengakses resource di project lain, biasanya Anda harus mengaktifkan API untuk resource tersebut dalam project tempat Anda membuat akun layanan.
Langkah selanjutnya
- Pelajari cara mencantumkan dan mengedit akun layanan.
- Tinjau proses untuk memberikan peran IAM ke semua jenis akun utama, termasuk akun layanan.
- Pahami cara melampirkan akun layanan ke resource.
Coba sendiri
Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
Mulai secara gratisKecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-11-27 UTC.