Binding

Mengaitkan members, atau akun utama, dengan role.

Representasi JSON
{
  "role": string,
  "members": [
    string
  ],
  "condition": {
    object (Expr)
  }
}
Kolom
role

string

Peran yang ditetapkan ke daftar members, atau akun utama. Misalnya, roles/viewer, roles/editor, atau roles/owner.

Untuk mengetahui ringkasan peran dan izin IAM, baca dokumentasi IAM. Untuk daftar peran standar yang tersedia, lihat di sini.

members[]

string

Menentukan akun utama yang meminta akses untuk resource Google Cloud. members dapat memiliki nilai berikut:

  • allUsers: ID khusus yang mewakili siapa saja yang ada di internet; dengan atau tanpa Akun Google.

  • allAuthenticatedUsers: ID khusus yang mewakili siapa saja yang diautentikasi dengan Akun Google atau akun layanan. Tidak mencakup identitas yang berasal dari penyedia identitas (IdP) eksternal melalui penggabungan identitas.

  • user:{emailid}: Alamat email yang mewakili Akun Google tertentu. Contohnya, alice@example.com .

  • serviceAccount:{emailid}: Alamat email yang mewakili akun layanan Google. Contoh, my-other-app@appspot.gserviceaccount.com.

  • serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]: ID untuk akun layanan Kubernetes. Misalnya, my-project.svc.id.goog[my-namespace/my-kubernetes-sa].

  • group:{emailid}: Alamat email yang mewakili grup Google. Contoh, admins@example.com.

  • domain:{domain}: Domain G Suite (utama) yang mewakili semua pengguna domain tersebut. Misalnya google.com atau example.com.
  • principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: Satu identitas dalam kumpulan identitas tenaga kerja.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{groupId}: Semua identitas tenaga kerja dalam grup.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}: Semua identitas tenaga kerja dengan nilai atribut tertentu.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*: Semua identitas dalam kumpulan identitas tenaga kerja.

  • principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}: Satu identitas dalam kumpulan workload identity.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{groupId}: Grup kumpulan workload identity.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}: Semua identitas dalam kumpulan identitas beban kerja dengan atribut tertentu.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*: Semua identitas dalam kumpulan workload identity.

  • deleted:user:{emailid}?uid={uniqueid}: Alamat email (ditambah ID unik) yang mewakili pengguna yang baru-baru ini dihapus. Misalnya, alice@example.com?uid=123456789012345678901. Jika pengguna dipulihkan, nilai ini akan dikembalikan ke user:{emailid} dan pengguna yang dipulihkan akan mempertahankan peran dalam binding.

  • deleted:serviceAccount:{emailid}?uid={uniqueid}: Alamat email (ditambah ID unik) yang mewakili akun layanan yang baru-baru ini dihapus. Contoh, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. Jika akun layanan dibatalkan penghapusannya, nilai ini akan dikembalikan ke serviceAccount:{emailid} dan akun layanan yang dibatalkan penghapusannya akan mempertahankan peran dalam binding.

  • deleted:group:{emailid}?uid={uniqueid}: Alamat email (ditambah ID unik) yang mewakili grup Google yang baru-baru ini dihapus. Contoh, admins@example.com?uid=123456789012345678901. Jika grup dipulihkan, nilai ini akan dikembalikan ke group:{emailid} dan grup yang dipulihkan akan mempertahankan peran dalam binding.

  • deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: Menghapus identitas tunggal di kumpulan identitas tenaga kerja. Contoh, deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value.

condition

object (Expr)

Kondisi yang terkait dengan binding ini.

Jika kondisi bernilai true, binding ini akan berlaku untuk permintaan saat ini.

Jika kondisi bernilai false, binding ini tidak berlaku untuk permintaan saat ini. Namun, binding peran yang berbeda mungkin memberikan peran yang sama ke satu atau beberapa akun utama dalam binding ini.

Untuk mempelajari resource mana yang mendukung kondisi dalam kebijakan IAM-nya, lihat dokumentasi IAM.

Expr

Mewakili ekspresi tekstual dalam sintaksis Common Expression Language (CEL). CEL adalah bahasa ekspresi seperti C. Sintaksis dan semantik CEL didokumentasikan di https://github.com/google/cel-spec.

Contoh (Perbandingan):

title: "Summary size limit"
description: "Determines if a summary is less than 100 chars"
expression: "document.summary.size() < 100"

Contoh (Persamaan):

title: "Requestor is owner"
description: "Determines if requestor is the document owner"
expression: "document.owner == request.auth.claims.email"

Contoh (Logika):

title: "Public documents"
description: "Determine whether the document should be publicly visible"
expression: "document.type != 'private' && document.type != 'internal'"

Contoh (Manipulasi Data):

title: "Notification string"
description: "Create a notification string with a timestamp."
expression: "'New message received at ' + string(document.create_time)"

Variabel dan fungsi persis yang dapat direferensikan dalam ekspresi ditentukan oleh layanan yang mengevaluasinya. Lihat dokumentasi layanan untuk informasi tambahan.

Representasi JSON
{
  "expression": string,
  "title": string,
  "description": string,
  "location": string
}
Kolom
expression

string

Representasi tekstual ekspresi dalam sintaksis Common Expression Language.

title

string

Opsional. Judul untuk ekspresi, yaitu string pendek yang menjelaskan tujuannya. Ini dapat digunakan, mis. di UI yang memungkinkan untuk memasukkan ekspresi.

description

string

Opsional. Deskripsi ekspresi. Ini adalah teks yang lebih panjang yang mendeskripsikan ekspresi, misalnya saat kursor diarahkan ke atasnya dalam UI.

location

string

Opsional. String yang menunjukkan lokasi ekspresi untuk pelaporan error, misalnya nama file dan posisi dalam file.