Binding

members ile ilişkili kişiler veya role ile ilişkili yöneticiler.

JSON gösterimi
{
  "role": string,
  "members": [
    string
  ],
  "condition": {
    object (Expr)
  }
}
Alanlar
role

string

members listesine veya asıl sorumlulara atanan rol. Örneğin, roles/viewer, roles/editor veya roles/owner.

IAM rolleri ve izinlerine genel bakış için IAM belgelerine bakın. Kullanılabilir önceden tanımlanmış rollerin listesi için burayı inceleyin.

members[]

string

Bir Google Cloud kaynağına erişim isteyen asıl kullanıcıları belirtir. members aşağıdaki değerleri içerebilir:

  • allUsers: İnternetteki herkesi (Google Hesabı olan veya olmayan) temsil eden özel bir tanımlayıcı.

  • allAuthenticatedUsers: Bir Google Hesabı veya hizmet hesabı ile kimliği doğrulanmış herkesi temsil eden özel bir tanımlayıcı. Kimlik federasyonu aracılığıyla harici kimlik sağlayıcılardan (IdP'ler) gelen kimlikleri içermez.

  • user:{emailid}: Belirli bir Google Hesabı'nı temsil eden e-posta adresi. Örneğin, alice@example.com .

  • serviceAccount:{emailid}: Bir Google hizmet hesabını temsil eden e-posta adresi. Örneğin, my-other-app@appspot.gserviceaccount.com.

  • serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]: Kubernetes hizmet hesabı tanımlayıcısı. Örneğin, my-project.svc.id.goog[my-namespace/my-kubernetes-sa].

  • group:{emailid}: Bir Google grubunu temsil eden e-posta adresi. Örneğin, admins@example.com.

  • domain:{domain}: Bu alanın tüm kullanıcılarını temsil eden G Suite alanı (birincil). Örneğin, google.com veya example.com
  • principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: İş gücü kimliği havuzundaki tek bir kimlik.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{groupId}: Bir gruptaki tüm çalışan kimlikleri.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attributeName}/{attribute_value}: Belirli bir özellik değerine sahip tüm iş gücü kimlikleri.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*: İş gücü kimliği havuzundaki tüm kimlikler.

  • principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}: Workload Identity havuzundaki tek bir kimlik.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{groupId}: Workload Identity Pool grubu.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attributeName}/{attribute_value}: Belirli bir özelliğe sahip Workload Identity Pool'daki tüm kimlikler.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*: Workload Identity havuzundaki tüm kimlikler.

  • deleted:user:{emailid}?uid={uniqueid}: Kısa süre önce silinen bir kullanıcıyı temsil eden e-posta adresi (artı benzersiz tanımlayıcı). Örneğin, alice@example.com?uid=123456789012345678901. Kullanıcı kurtarılırsa bu değer user:{emailid} olarak değişir ve kurtarılan kullanıcı, bağlamadaki rolünü korur.

  • deleted:serviceAccount:{emailid}?uid={uniqueid}: Yakın zamanda silinmiş bir hizmet hesabını temsil eden e-posta adresi (ve benzersiz tanımlayıcı). Örneğin, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. Hizmet hesabının silme işlemi geri alınırsa bu değer serviceAccount:{emailid} olarak değiştirilir ve silme işlemi geri alınan hizmet hesabı, bağlamadaki rolü korur.

  • deleted:group:{emailid}?uid={uniqueid}: Yakın zamanda silinmiş bir Google Grubu'nu temsil eden bir e-posta adresi (artı benzersiz tanımlayıcı). Örneğin, admins@example.com?uid=123456789012345678901. Grup kurtarılırsa bu değer group:{emailid} olarak değişir ve kurtarılan grup, bağlamadaki rolünü korur.

  • deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: İş gücü kimliği havuzunda tek bir kimlik silindi. Örneğin, deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value.

condition

object (Expr)

Bu bağlamayla ilişkili koşul.

Koşul true olarak değerlendirilirse bu bağlama geçerli istek için geçerli olur.

Koşul false olarak değerlendirilirse bu bağlama geçerli istek için geçerli olmaz. Ancak farklı bir rol bağlaması, bu bağlamadaki asıl sorumlulardan birine veya daha fazlasına aynı rolü verebilir.

IAM politikalarında koşulları hangi kaynakların desteklediğini öğrenmek için IAM belgelerine bakın.

Expr

Common Expression Language (CEL) söz dizimindeki bir metin ifadesini temsil eder. CEL, C benzeri bir ifade dilidir. CEL'in söz dizimi ve semantiği https://github.com/google/cel-spec adresinde belgelenmiştir.

Örnek (Karşılaştırma):

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

Örnek (Eşitlik):

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

Örnek (Mantık):

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

Örnek (Veri Değiştirme):

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

Bir ifadede referans verilebilecek tam değişkenler ve işlevler, ifadeyi değerlendiren hizmet tarafından belirlenir. Ek bilgiler için hizmet belgelerine bakın.

JSON gösterimi
{
  "expression": string,
  "title": string,
  "description": string,
  "location": string
}
Alanlar
expression

string

Common Expression Language söz dizimindeki bir ifadenin metin olarak gösterimi.

title

string

İsteğe bağlıdır. İfadenin başlığı (ör. amacını açıklayan kısa bir dize). Örneğin, ifadenin girilmesine izin veren kullanıcı arayüzlerinde kullanılabilir.

description

string

İsteğe bağlıdır. İfadenin açıklaması. Bu, ifadeyi açıklayan daha uzun bir metindir (ör. kullanıcı arayüzünde üzerine gelindiğinde).

location

string

İsteğe bağlıdır. Hata raporlaması için ifadenin konumunu belirten dize (ör. dosya adı ve dosyadaki konum).