Halaman ini menunjukkan cara mengelola unit penyewa untuk layanan Anda. Unit penyewa adalah resource ringan yang merepresentasikan hubungan antara konsumen layanan dan layanan terkelola. Setiap konsumen layanan hanya dapat memiliki satu unit penyewa aktif untuk layanan terkelola. Ini adalah fitur yang disediakan oleh Service Infrastructure.
Nama resource unit penyewa memiliki format berikut:
services/{your service name}/projects/{consumer project number}/tenancyUnits/{id}
ID unit sewa dibuat secara otomatis saat Anda membuatnya. Anda juga dapat
memberikan ID saat memanggil
metode services.tenancyUnits.create
. Jika Anda memberikan ID, ID tersebut harus unik secara global dalam cakupan layanan terkelola Anda di semua konsumen layanan.
Contoh di halaman ini menggunakan panggilan langsung ke REST API Service Consumer Management. Untuk penggunaan produksi, sebaiknya gunakan library klien yang disediakan Google untuk kegunaan dan keandalan yang lebih baik.
Sebelum memulai
- Service Consumer Management API ditujukan untuk digunakan dengan layanan terkelola dan project produsen layanan. Anda harus sudah memiliki project Google Cloud dan layanan terkelola (seperti layanan yang dibuat menggunakan Cloud Endpoints) dalam project tersebut.
- Untuk menggunakan unit penyewa, Service Consumer Management API perlu membuat project penyewa di organisasi produsen layanan Anda. Pastikan Anda memiliki kuota yang cukup untuk jumlah project tenant yang diperlukan bagi konsumen layanan Anda.
- Untuk membuat dan menghapus unit tenancy, ikuti petunjuk penyiapan awal di Mulai Menggunakan Service Consumer Management API.
- Setiap project tenant yang dibuat di unit tenancy juga harus berada di folder yang Anda tentukan sebagai bagian dari konfigurasi project tenant. Oleh karena itu, Anda memerlukan Organisasi untuk menggunakan unit penyewa.
Autentikasi
Select the tabs for how you plan to access the API:
gcloud
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Library klien
Untuk menggunakan library klien di lingkungan pengembangan lokal, instal dan lakukan inisialisasi gcloud CLI, lalu siapkan Kredensial Default Aplikasi dengan kredensial pengguna Anda.
Untuk mengetahui informasi selengkapnya, lihat Menyiapkan ADC untuk lingkungan pengembangan lokal dalam dokumentasi autentikasi Google Cloud .
REST
Untuk menggunakan REST API di lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Untuk informasi tentang cara menyiapkan autentikasi bagi lingkungan produksi, lihat Set up Application Default Credentials for code running on Google Cloud di dokumentasi autentikasi Google Cloud .
Membuat unit tenancy
Unit tenant dan project tenant di dalamnya biasanya dibuat saat resource di layanan Anda sendiri dibuat yang bergantung pada resource Google Cloud tambahan yang akan disediakan untuk konsumen.
Anda membuat unit pengelolaan menggunakan
metode services.tenancyUnits.create
:
POST https://serviceconsumermanagement.googleapis.com/v1/services/service.example.com/projects/12345678901/tenancyUnits
Di sini, 'projects/12345678901' mewakili konsumen layanan, dan
service.example.com
adalah nama layanan Anda.
Struktur data yang ditampilkan memiliki nama unit keanggotaan, dengan ID unik yang dihasilkan yang dapat digunakan untuk mengaksesnya. Dalam contoh ini, nama yang dihasilkan adalah
services/your-service.example.com/projects/12345678901/tenancyUnits/absdef
.
Menambahkan project tenant
Sekarang Anda dapat menambahkan project untuk pengguna. Untuk menambahkan project tenant baru ke
unit keanggotaan yang dibuat pada langkah sebelumnya, gunakan
metode services.tenancyUnits.addProject
:
POST https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef:addProject
dengan data berikut:
{"tag":"tag1", "project_config":{"folder":"folders/9876543210", "tenant_project_policy":{"policy_bindings":{"role":"roles/owner", "members":"user:bob@example.com"}}, "billing_config":{"billing_account":"billingAccounts/123456-472F22-28F9AA"}}}
Nilai tag
adalah ID yang Anda berikan untuk project dalam unit
tenancy: ID ini dapat berupa apa saja yang Anda inginkan (di sini adalah tag1
), seperti wilayah, jaringan
konsumen, atau hanya ID string.
Panggilan ini menampilkan operasi yang berjalan lama yang dapat Anda kueri untuk mengetahui apakah pembuatan project berhasil.
Jika Anda perlu menerapkan konfigurasi yang berbeda, misalnya untuk menambahkan layanan terkelola baru, Anda dapat memanggil metode
services.tenancyUnits.applyProjectConfig
.
Menelusuri unit tenancy Anda
Menemukan unit tenancy untuk konsumen layanan
Untuk menemukan unit penyewa bagi konsumen layanan tertentu, gunakan
metode services.tenancyUnits.list
,
dengan menentukan nomor project konsumen layanannya:
GET https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits
Menelusuri unit tenancy
Anda dapat menggunakan
metode services.search
untuk menelusuri unit tenancy yang ditentukan
untuk layanan Anda. Misalnya, kueri berikut akan menampilkan semua unit yang
berisi project dengan tag 'tag1':
GET https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com:search?query=tenant_resources.tag=tag1
Membersihkan unit tenancy
Saat konsumen layanan berhenti menggunakan layanan Anda, Anda perlu menghapus unit penyewaannya untuk membebaskan resource dan memastikan data pengguna dihapus.
Menghapus project tenant
Anda harus menghapus semua project tenant sebelum menghapus unit tenant yang sesuai. Anda harus menggunakan metode
services.tenancyUnits.removeProject
untuk menghapus project tenant dan semua resource di dalamnya:
POST https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef:removeProject
Menghapus unit tenancy
Setelah menghapus semua project tenant dalam unit keanggotaan, atau semuanya
berada dalam status DELETED
, Anda dapat menghapus unit keanggotaan menggunakan
metode services.tenancyUnits.delete
:
DELETE https://serviceconsumermanagement.googleapis.com/v1/services/your-service.example.com/projects/12345678901/tenancyUnits/absdef
Kecuali 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 2025-07-14 UTC.