นโยบาย Identity and Access Management (IAM) ซึ่งระบุการควบคุมการเข้าถึงสำหรับทรัพยากร Google Cloud
Policy
คือคอลเล็กชันของ bindings
binding
จะเชื่อมโยง members
หรือผู้ใช้ อย่างน้อย 1 รายการกับ role
รายการเดียว โดยหลักการแล้ว บัญชีผู้ใช้ บัญชีบริการ กลุ่ม Google และโดเมน (เช่น G Suite) จะใช้ได้ role
คือรายการสิทธิ์ที่มีชื่อ โดยrole
แต่ละรายการอาจเป็นบทบาทที่กำหนดไว้ล่วงหน้าของ IAM หรือบทบาทที่กำหนดเองซึ่งผู้ใช้สร้างขึ้น
สำหรับทรัพยากร Google Cloud บางประเภท binding
ยังระบุ condition
ได้ด้วย ซึ่งเป็นนิพจน์เชิงตรรกะที่อนุญาตให้เข้าถึงทรัพยากรได้ก็ต่อเมื่อนิพจน์ประเมินเป็น true
เงื่อนไขสามารถเพิ่มข้อจำกัดตามแอตทริบิวต์ของคำขอ ทรัพยากร หรือทั้ง 2 อย่าง ดูว่าทรัพยากรใดรองรับเงื่อนไขในนโยบาย IAM ได้ที่เอกสารประกอบ IAM
ตัวอย่าง JSON:
{
"bindings": [
{
"role": "roles/resourcemanager.organizationAdmin",
"members": [
"user:mike@example.com",
"group:admins@example.com",
"domain:google.com",
"serviceAccount:my-project-id@appspot.gserviceaccount.com"
]
},
{
"role": "roles/resourcemanager.organizationViewer",
"members": [
"user:eve@example.com"
],
"condition": {
"title": "expirable access",
"description": "Does not grant access after Sep 2020",
"expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')",
}
}
],
"etag": "BwWWja0YfJA=",
"version": 3
}
ตัวอย่าง YAML:
bindings:
- members:
- user:mike@example.com
- group:admins@example.com
- domain:google.com
- serviceAccount:my-project-id@appspot.gserviceaccount.com
role: roles/resourcemanager.organizationAdmin
- members:
- user:eve@example.com
role: roles/resourcemanager.organizationViewer
condition:
title: expirable access
description: Does not grant access after Sep 2020
expression: request.time < timestamp('2020-10-01T00:00:00.000Z')
etag: BwWWja0YfJA=
version: 3
ดูคำอธิบาย IAM และฟีเจอร์ต่างๆ ได้ที่เอกสารประกอบของ IAM
การแสดง JSON |
---|
{
"version": integer,
"bindings": [
{
object ( |
ช่อง | |
---|---|
version |
ระบุรูปแบบของนโยบาย ค่าที่ใช้ได้คือ การดำเนินการใดๆ ที่ส่งผลต่อการเชื่อมโยงบทบาทแบบมีเงื่อนไขต้องระบุเวอร์ชัน
สำคัญ: หากใช้เงื่อนไข IAM คุณต้องรวมฟิลด์ หากนโยบายไม่มีเงื่อนไขใดๆ การดำเนินการกับนโยบายนั้นอาจระบุเวอร์ชันที่ถูกต้องหรือปล่อยให้ช่องไม่ได้ตั้งค่า ดูว่าทรัพยากรใดรองรับเงื่อนไขในนโยบาย IAM ได้ที่เอกสารประกอบ IAM |
bindings[] |
เชื่อมโยงรายการ
|
etag |
สำคัญ: หากใช้เงื่อนไข IAM คุณต้องรวมฟิลด์ สตริงที่เข้ารหัส Base64 |