Membuat akun layanan Google Cloud dengan peran yang memungkinkan setiap komponen hybrid Apigee untuk melakukan panggilan API yang diotorisasi dan mendownload file kunci akun layanan terkait. Anda dapat menggunakan file kunci akun layanan yang dibuat oleh di file pengganti konfigurasi Anda.
create-service-account
membuat satu atau beberapa akun layanan di akun Google Anda saat ini
Project Cloud atau project yang Anda tentukan, menetapkan
Peran IAM ke akun layanan, dan mendownload
file sertifikat untuk akun layanan ke
direktori di komputer lokal Anda.
Alat create-service-account
terletak di
Direktori HYBRID_ROOT_DIR/tools
.
Untuk mempelajari lebih lanjut akun layanan dan membaca daftar lengkap akun layanan yang direkomendasikan untuk lingkungan production, lihat referensi berikut:
Anda juga dapat membuat akun layanan di Konsol Google Cloud. Lihat juga Membuat dan mengelola akun layanan.
Prasyarat
Peran
Alat create-service-account
mengharuskan
CLI gcloud
akan diinstal. Pengguna
pemanggilan utilitas harus memiliki peran Service Account Admin
.
Project
Akun layanan terikat ke project Google Cloud tertentu. create-service-account
membuat akun layanan di project saat ini atau dalam project yang Anda tentukan, dan mengikat IAM
ke akun layanan dalam project tersebut. create-service-account
juga menggunakan
ID Project sebagai bagian dari nama file kunci dan email akun layanan. Misalnya, jika
bernama my-hybrid-project, file kunci akun layanan apigee-logger akan
bernama my-hybrid-project-apigee-logger.json
dan alamat email akun layanan
alamatnya adalah apigee-logger@my-hybrid-project.iam.gserviceaccount.com
.
Anda dapat menentukan project dengan menentukan variabel lingkungan PROJECT_ID
atau dengan
tanda --project-id
. create-service-account
membaca
variabel lingkungan PROJECT_ID
. Jika tidak ada, Anda dapat menggunakan
--project-id
.
Jika Anda tidak menentukan ID project Cloud, create-service-account
menggunakan project dalam konfigurasi project gcloud Anda saat ini.
Anda dapat memeriksa konfigurasi project gcloud
yang ditetapkan saat ini dengan perintah berikut:
gcloud config list project
Jika Anda perlu mengubah project ID saat ini, gunakan perintah berikut:
gcloud config set project PROJECT_ID
Dengan PROJECT_ID sebagai ID project Cloud Anda saat ini. Petunjuk untuk membuat Project Cloud tercakup dalam Langkah 2: Membuat project Google Cloud.
Menggunakan create-service-account
Contoh berikut menunjukkan penggunaan create-service-account
untuk Apigee Hybrid umum
menyiapkan tugas.
Membuat akun layanan untuk lingkungan produksi
Dalam lingkungan hybrid produksi, Apigee merekomendasikan penggunaan akun layanan terpisah untuk setiap komponen. Gunakan perintah berikut untuk membuat semua akun layanan untuk komponen hybrid dengan nama {i> default<i}-nya di direktori {i>default<i}.
./tools/create-service-account --env prod
Cara ini akan membuat akun layanan berikut dengan file sertifikat yang diunduh di
Direktori ./tools/service-accounts
:
Akun layanan | Peran IAM | File sertifikasi | |
---|---|---|---|
apigee-cassandra |
roles/storage.objectAdmin |
apigee-cassandra@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-cassandra.json |
apigee-logger |
roles/logging.logWriter |
apigee-logger@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-logger.json |
apigee-mart |
roles/apigeeconnect.Agent |
apigee-mart@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-mart.json |
apigee-metrics |
roles/monitoring.metricWriter |
apigee-metrics@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-metrics.json |
apigee-runtime |
Tidak ada peran yang ditetapkan | apigee-runtime@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-runtime.json |
apigee-synchronizer |
roles/apigee.synchronizerManager |
apigee-synchronizer@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-synchronizer.json |
apigee-udca |
roles/apigee.analyticsAgent |
apigee-udca@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-udca.json |
apigee-watcher |
roles/apigee.runtimeAgent |
apigee-watcher@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-watcher.json |
Membuat satu akun layanan untuk lingkungan non-produksi
Untuk lingkungan non-produksi, seperti lingkungan eksperimental atau demo, Anda dapat membuat satu akun layanan bernama "apigee-non-prod" yang dapat Anda gunakan untuk semua komponen. Akun layanan ini akan memiliki semua peran IAM dalam contoh sebelumnya yang ditetapkan.
./tools/create-service-account --env non-prod
Tindakan ini akan dibuat sebagai akun layanan tunggal bernama apigee-non-prod dan mendownload file sertifikat
di direktori ./tools/service-accounts
:
Akun layanan | Peran IAM | File sertifikasi | |
---|---|---|---|
apigee-non-prod |
roles/apigee.analyticsAgent |
apigee-non-prod@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-non-prod.json |
create-service-account syntax
Alat create-service-account
menggunakan sintaksis berikut:
create-service-account [flags]
Tabel berikut mencantumkan flag create-service-account
:
Tanda | Nilai | Deskripsi |
---|---|---|
--dir -d |
nama direktori | Menentukan direktori output untuk file kunci akun layanan. Jika direktori tidak
ada, create-service-account akan membuatnya. Jika direktori sudah ada,
create-service-account akan menimpa file apa pun di direktori yang memiliki
sama dengan nama file kunci yang dibuatnya.
Jika Anda tidak menentukan direktori output, |
--env -e |
prod non-prod |
Menentukan apakah Anda membuat akun layanan untuk produksi (prod )
atau lingkungan non-produksi (non-prod ).
Jika Anda menjalankan |
--help -h |
tidak ada | Menampilkan teks bantuan. |
--name -n |
nama akun layanan | Menentukan nama untuk akun layanan. --name hanya berlaku untuk satu
akun layanan, baik yang ditetapkan dengan --profile atau --env non-prod .
Nama juga merupakan bagian dari email dan nama file sertifikat untuk akun layanan. Misalnya jika
Anda menjalankan
Jika Anda tidak menentukan |
‑‑profile -p |
apigee‑cassandra apigee‑logger apigee‑mart apigee‑metrics apigee‑runtime apigee‑synchronizer apigee‑udca apigee‑watcher |
Khusus untuk lingkungan produksi, tentukan satu akun layanan yang akan dibuat.
Anda dapat menentukan nama untuk akun layanan dengan flag
Memerlukan |
‑‑project‑id -i |
project id | Project ID untuk project Google Cloud tempat Anda membuat akun layanan.
Jika Anda tidak menentukan ID Project, |
Untuk mengetahui informasi selengkapnya tentang akun layanan yang digunakan oleh Apigee Hybrid, lihat Tentang akun layanan.
Anda juga dapat membuat akun layanan di Konsol Google Cloud. Lihat juga Membuat dan mengelola akun layanan.