Binding

members या प्रिंसिपल को role से जोड़ता है.

JSON के काेड में दिखाना
{
  "role": string,
  "members": [
    string
  ],
  "condition": {
    object (Expr)
  }
}
फ़ील्ड
role

string

members या प्रिंसिपल की सूची को असाइन की गई भूमिका. उदाहरण के लिए, roles/viewer, roles/editor या roles/owner.

आईएएम की भूमिकाओं और अनुमतियों के बारे में खास जानकारी पाने के लिए, आईएएम का दस्तावेज़ देखें. पहले से तय की गई भूमिकाओं की सूची देखने के लिए, यहां जाएं.

members[]

string

इससे उन प्रिंसिपल के बारे में पता चलता है जो Google Cloud संसाधन के लिए ऐक्सेस का अनुरोध कर रहे हैं. members में ये वैल्यू हो सकती हैं:

  • allUsers: यह एक खास आइडेंटिफ़ायर होता है. यह इंटरनेट का इस्तेमाल करने वाले किसी भी व्यक्ति को दिखाता है. उसके पास Google खाता हो या न हो.

  • allAuthenticatedUsers: यह एक खास आइडेंटिफ़ायर है. यह उस व्यक्ति को दिखाता है जिसने Google खाते या सेवा खाते से पुष्टि की है. इसमें पहचान फ़ेडरेशन के ज़रिए, एक्सटर्नल आइडेंटिटी प्रोवाइडर (आईडीपी) से मिली पहचानें शामिल नहीं होती हैं.

  • user:{emailid}: यह किसी Google खाते का ईमेल पता होता है. उदाहरण के लिए, alice@example.com .

  • serviceAccount:{emailid}: यह Google सेवा खाते का ईमेल पता होता है. उदाहरण के लिए, my-other-app@appspot.gserviceaccount.com.

  • serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]: यह Kubernetes सेवा खाते का आइडेंटिफ़ायर है. उदाहरण के लिए, my-project.svc.id.goog[my-namespace/my-kubernetes-sa].

  • group:{emailid}: यह Google ग्रुप का ईमेल पता होता है. उदाहरण के लिए, admins@example.com.

  • domain:{domain}: यह G Suite का मुख्य डोमेन होता है. यह उस डोमेन के सभी उपयोगकर्ताओं का प्रतिनिधित्व करता है. उदाहरण के लिए, google.com या example.com.
  • principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: Workforce Identity Pool में मौजूद एक आइडेंटिटी.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{groupId}: किसी ग्रुप में मौजूद वर्कफ़ोर्स की सभी पहचान.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attributeName}/{attribute_value}: किसी खास एट्रिब्यूट वैल्यू वाली वर्कफ़ोर्स की सभी पहचान.

  • principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*: Workforce Identity Pool में मौजूद सभी पहचानें.

  • principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}: Workload Identity Pool में मौजूद एक आइडेंटिटी.

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

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attributeName}/{attribute_value}: किसी Workload Identity Pool में मौजूद वे सभी आइडेंटिटी जिनमें कोई एट्रिब्यूट मौजूद है.

  • principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*: Workload Identity Pool में मौजूद सभी आइडेंटिटी.

  • deleted:user:{emailid}?uid={uniqueid}: यह हाल ही में मिटाए गए उपयोगकर्ता का ईमेल पता (साथ ही, यूनीक आइडेंटिफ़ायर) होता है. उदाहरण के लिए, alice@example.com?uid=123456789012345678901. अगर उपयोगकर्ता का खाता वापस पा लिया जाता है, तो यह वैल्यू वापस user:{emailid} पर सेट हो जाती है. साथ ही, वापस पाए गए उपयोगकर्ता के पास बाइंडिंग में अपनी भूमिका बनी रहती है.

  • deleted:serviceAccount:{emailid}?uid={uniqueid}: यह एक ईमेल पता (साथ ही, यूनीक आइडेंटिफ़ायर) है. यह उस सेवा खाते को दिखाता है जिसे हाल ही में मिटाया गया है. उदाहरण के लिए, my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901. अगर सेवा खाते को मिटाया नहीं जाता है, तो यह वैल्यू वापस serviceAccount:{emailid} पर सेट हो जाती है. साथ ही, मिटाए गए सेवा खाते के पास बाइंडिंग में की भूमिका बनी रहती है.

  • deleted:group:{emailid}?uid={uniqueid}: यह हाल ही में मिटाए गए Google ग्रुप का ईमेल पता (साथ ही, यूनीक आइडेंटिफ़ायर) होता है. उदाहरण के लिए, admins@example.com?uid=123456789012345678901. अगर ग्रुप को वापस लाया जाता है, तो यह वैल्यू group:{emailid} पर वापस आ जाती है. साथ ही, वापस लाए गए ग्रुप की भूमिका, बाइंडिंग में बनी रहती है.

  • deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}: Workforce Identity Pool में मौजूद किसी एक आइडेंटिटी को मिटा दिया गया है. उदाहरण के लिए, deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value.

condition

object (Expr)

इस बाइंडिंग से जुड़ी शर्त.

अगर शर्त की वैल्यू true है, तो यह बाइंडिंग मौजूदा अनुरोध पर लागू होती है.

अगर शर्त का आकलन false के तौर पर किया जाता है, तो यह बाइंडिंग मौजूदा अनुरोध पर लागू नहीं होती. हालांकि, भूमिका को बांधने की अलग प्रक्रिया से, इस बाइंडिंग में शामिल एक या उससे ज़्यादा मुख्य खातों को वही भूमिका मिल सकती है.

यह जानने के लिए कि किन संसाधनों में आईएएम की नीतियों में शर्तें इस्तेमाल की जा सकती हैं, आईएएम का दस्तावेज़ देखें.

Expr

यह कॉमन एक्सप्रेशन लैंग्वेज (सीईएल) के सिंटैक्स में टेक्स्ट एक्सप्रेशन दिखाता है. सीईएल, सी जैसी एक्सप्रेशन लैंग्वेज है. CEL के सिंटैक्स और सिमैंटिक्स के बारे में जानकारी, https://github.com/google/cel-spec पर दी गई है.

उदाहरण (तुलना):

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

उदाहरण (बराबर):

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

उदाहरण (तर्क):

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

उदाहरण (डेटा मैनिप्युलेशन):

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

किसी एक्सप्रेशन में किन वैरिएबल और फ़ंक्शन का रेफ़रंस दिया जा सकता है, यह तय करने का काम उस सेवा का होता है जो एक्सप्रेशन का आकलन करती है. ज़्यादा जानकारी के लिए, सेवा से जुड़ा दस्तावेज़ देखें.

JSON के काेड में दिखाना
{
  "expression": string,
  "title": string,
  "description": string,
  "location": string
}
फ़ील्ड
expression

string

कॉमन एक्सप्रेशन लैंग्वेज के सिंटैक्स में एक्सप्रेशन का टेक्स्ट फ़ॉर्मैट.

title

string

ज़रूरी नहीं. एक्सप्रेशन का टाइटल. यह कम शब्दों वाली ऐसी स्ट्रिंग होती है जिससे एक्सप्रेशन के मकसद के बारे में पता चलता है. इसका इस्तेमाल, ऐसे यूज़र इंटरफ़ेस (यूआई) में किया जा सकता है जहां एक्सप्रेशन डालने की अनुमति होती है.

description

string

ज़रूरी नहीं. एक्सप्रेशन के बारे में जानकारी. यह एक लंबा टेक्स्ट है, जिसमें एक्सप्रेशन के बारे में बताया गया है. उदाहरण के लिए, यूज़र इंटरफ़ेस (यूआई) में इस पर कर्सर घुमाने पर यह दिखता है.

location

string

ज़रूरी नहीं. यह स्ट्रिंग, गड़बड़ी की रिपोर्टिंग के लिए एक्सप्रेशन की जगह की जानकारी देती है. जैसे, फ़ाइल का नाम और फ़ाइल में उसकी जगह.