使用 IAM 控管存取權

本頁面說明如何使用 Identity and Access Management (IAM) 控管 Memorystore for Memcached 的專案存取權與權限。

總覽

您可以透過 IAM 精細控管特定 Google Cloud資源的存取權,並防止這些資源遭到未經授權存取。如需角色和權限的詳細說明,請參閱 IAM 說明文件

Memorystore for Memcached 提供一組預先定義的角色,可協助您輕鬆控制對 Memcached 資源的存取權。如果預先定義的角色未提供您需要的權限集,您也可以建立自訂角色。此外,您仍可使用舊版基本角色 (編輯者、檢視者和擁有者),但這些角色無法提供與 Memorystore for Memcached 角色相同的精細控管能力。具體來說,基本角色提供的是跨Google Cloud的資源存取權,而非針對 Memorystore for Memcached。如要進一步瞭解基本角色,請參閱「基本角色」。

權限與角色

本節概述 Memorystore for Memcached 支援的權限和角色。

預先定義的角色

Memorystore for Memcached 提供預先定義角色,可為主體提供更精細的權限。您授予主體的角色會控管主體可採取的動作。主體可以是個人、群組或服務帳戶

您可以為相同的主體授予多個角色,並隨時變更角色。

權限範圍越廣的角色定義較為狹隘。舉例來說,Memcached 編輯者角色包含 Memcached 檢視者角色的所有權限,再加上 Memcached 編輯者角色的額外權限。同樣地,Memcached 管理員角色包含 Memcached 編輯者角色的所有權限,以及額外權限。

基本角色 (擁有者、編輯者、檢視者) 提供跨 Google Cloud的權限。Memorystore for Memcached 的專屬角色僅提供 Memorystore for Memcached 權限,除了以下 Google Cloud 權限,這些權限為一般 Google Cloud 使用所需:

resourcemanager.projects.get
resourcemanager.projects.list

下表列出 Memorystore for Memcached 的可用預先定義角色,以及其 Memorystore for Memcached 權限:

角色 名稱 Memcached 權限 說明

roles/owner

擁有者

memcache.*

對於所有 Google Cloud 資源具有完整存取權與控管權,可管理使用者存取權

roles/editor

編輯者 所有 memcache 權限 (除了 *.getIamPolicy.setIamPolicy) 具備所有 Google Cloud 和 Memcached 資源的讀取/寫入權限 (具備完整的控管權限,但無法修改權限)

roles/viewer

檢視者

memcache.*.get memcache.*.list

具備所有 Google Cloud 資源的唯讀存取權,包括 Memcached 資源

roles/memcache.admin

Memcached 管理員

memcache.*

可完整控制所有 Memorystore for Memcached 資源。

roles/memcache.editor

Memcached 編輯器 所有 memcache 權限,除了

memcache.instances.create memcache.instances.delete memcache.instances.applySoftwareUpdate memcache.instances.upgrade

管理 Memorystore for Memcached 執行個體。但無法建立或刪除執行個體

roles/memcache.viewer

Memcached 檢視器 所有 memcache 權限,除了

memcache.instances.create memcache.instances.delete memcache.instances.update memcache.operations.delete memcache.instances.applyParameters memcache.instances.updateParameters memcache.instances.applySoftwareUpdate memcache.instances.upgrade

具備所有 Memorystore for Memcached 資源的唯讀存取權。

權限與角色

下表列出 Memorystore for Memcached 支援的權限,以及包含這些權限的 Memorystore for Memcached 角色:

權限 Memcached 角色 基本角色

memcache.instances.list

Memcached 管理員
Memcached 編輯器
Memcached 檢視器
讀取者

memcache.instances.get

Memcached 管理員
Memcached 編輯器
Memcached 檢視器
讀取者

memcache.instances.create

Memcached 管理員 寫入者

memcache.instances.update

Memcached 管理員
Memcached 編輯器
寫入者

memcache.instances.delete

Memcached 管理員 寫入者

memcache.instances.applyParameters

Memcached 管理員
Memcached 編輯器
寫入者

memcache.instances.updateParameters

Memcached 管理員
Memcached 編輯器
寫入者

memcache.instances.applySoftwareUpdate

Memcached 管理員
Memcached 編輯器
寫入者

memcache.instances.upgrade

Memcached 管理員 寫入者

memcache.locations.list

Memcached 管理員
Memcached 編輯器
Memcached 檢視器
讀取者

memcache.locations.get

Memcached 管理員
Memcached 編輯器
Memcached 檢視器
讀取者

memcache.operations.list

Memcached 管理員
Memcached 編輯器
Memcached 檢視器
讀取者

memcache.operations.get

Memcached 管理員
Memcached 編輯器
Memcached 檢視器
讀取者

memcache.operations.delete

Memcached 管理員
Memcached 編輯器
寫入者

自訂角色

如果預先定義的角色無法滿足您的獨特業務需求,您可以使用自訂角色,並指定這些角色擁有的權限。為 Memorystore for Memcached 建立自訂角色時,請務必同時納入 resourcemanager.projects.getresourcemanager.projects.list。詳情請參閱「權限依附元件」。

Google Cloud 主控台中常見工作所需的權限

如要讓使用者透過 Google Cloud 控制台使用 Memorystore for Memcached,使用者角色必須具備 resourcemanager.projects.getresourcemanager.projects.list 權限。

下表列出 Google Cloud 主控台中常見任務所需的其他權限:

工作 其他所需權限
顯示執行個體清單頁面

memcache.instances.get
memcache.instances.list

建立及編輯執行個體

memcache.instances.create
memcache.instances.get
memcache.instances.list
memcache.instances.update
memcache.instances.applyParameters
memcache.instances.updateParameters
memcache.instances.applySoftwareUpdate
compute.networks.list

刪除執行個體

memcache.instances.delete
memcache.instances.get
memcache.instances.list

從 Cloud Shell 連線至執行個體

memcache.instances.get
memcache.instances.list
memcache.instances.update

升級執行個體的 Memcached 版本

memcache.instances.upgrade

查看執行個體資訊

memcache.instances.get
monitoring.timeSeries.list

gcloud 指令的所需權限

如要讓使用者使用 gcloud 指令操作 Memorystore for Memcached,使用者角色必須具備 resourcemanager.projects.getresourcemanager.projects.list 權限。

下表列出使用者在叫用 gcloud 指令時,必須具備的每個 gcloud memcache 子指令權限:

指令 所需權限
gcloud memcache instances create

memcache.instances.get
memcache.instances.create

gcloud memcache instances delete

memcache.instances.delete

gcloud memcache instances update

memcache.instances.get
memcache.instances.update
memcache.instances.updateParameters

gcloud memcache instances upgrade

memcache.instances.upgrade

gcloud memcache instances list

memcache.instances.list

gcloud memcache instances describe

memcache.instances.get

gcloud memcache instances apply-parameters

memcache.instances.applyParameters

gcloud beta memcache instances apply-software-update

memcache.instances.applySoftwareUpdate

gcloud memcache operations list

memcache.operations.list

gcloud memcache operations describe

memcache.operations.get

gcloud memcache regions list

memcache.locations.list

gcloud memcache regions describe

memcache.locations.get

gcloud memcache zones list

memcache.locations.list

API 方法的所需權限

下表列出使用者在呼叫 Memorystore for Memcached API 中的各個方法,或透過使用該 API 的Google Cloud 工具 (例如 Google Cloud 主控台或 gcloud 指令列工具) 執行工作時,必須具備的權限:

方法 所需權限

locations.get

memcache.locations.get

locations.list

memcache.locations.list

instances.create

memcache.instances.create

instances.delete

memcache.instances.delete

instances.get

memcache.instances.get

instances.upgrade

memcache.instances.upgrade

instances.list

memcache.instances.list

instances.patch

memcache.instances.update

instances.updateParameters

memcache.instances.updateParameters

instances.applyParameters

memcache.instances.applyParameters

instances.applySoftwareUpdate

memcache.instances.applySoftwareUpdate

operations.get

memcache.operations.get

operations.list

memcache.operations.list

維護政策權限

下表列出管理 Memorystore for Memcached 的維護政策所需的權限。

所需權限 建立啟用維護政策的 Memorystore 執行個體 在現有的 Memorystore 執行個體上建立或修改維護政策 查看維護政策設定 重新排定維護時間
memcache.instances.create X X X
memcache.instances.update X X X
memcache.instances.get X X X
memcache.instances.rescheduleMaintenance X X X

後續步驟