本页面介绍如何使用 Identity and Access Management (IAM) 控制 Memorystore for Memcached 的项目访问和权限。
概览
借助 IAM,您可以精细地控制对特定 Google Cloud 资源的访问权限,还可以防止意外访问这些资源。如需详细了解角色和权限,请参阅 IAM 文档。
Memorystore for Memcached 提供了一组预定义角色,旨在帮您轻松控制对 Memcached 资源的访问权限。如果预定义角色未提供您所需的权限,您还可以创建自己的自定义角色。此外,旧版基本角色(Editor、Viewer 和 Owner)仍可供您使用,但这些角色提供的控制不如 Memorystore for Memcached 角色那样精细。具体而言,基本角色提供的是对整个 Google Cloud 资源的访问权限,而不仅仅是对 Memorystore for Memcached 的访问权限。如需详细了解基本角色,请参阅基本角色。
权限和角色
本部分汇总了 Memorystore for Memcached 支持的各种权限和角色。
预定义角色
Memorystore for Memcached 提供了预定义角色,可供您用来为主账号提供更精细的权限。您授予主账号的角色决定了该主账号可以执行的操作。主账号可以是个人、群组或服务账号。
您可以为同一主账号授予多个角色,并且可以随时更改这些角色。
范围越广的角色定义的权限范围越窄。例如,Memcached Editor 角色不但拥有 Memcached Viewer 角色的所有权限,而且还添加了 Memcached Editor 角色的若干权限。同样,Memcached Admin 角色不但拥有 Memcached Editor 角色的所有权限,而且还添加了一些专有权限。
基本角色(Owner、Editor、Viewer)提供对整个 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 权限 | 说明 |
---|---|---|---|
|
Owner |
|
对所有 Google Cloud 资源拥有完整访问权限和控制权;可以管理用户访问权限 |
|
Editor | 除以下权限以外的所有 memcache 权限: *.getIamPolicy 和 .setIamPolicy |
对所有 Google Cloud 和 Memcached 资源拥有读写权限(拥有完全控制权,但不能修改权限) |
|
Viewer |
|
对所有 Google Cloud 资源(包括 Memcached 资源)拥有只读权限 |
|
Memcached Admin |
|
对所有 Memorystore for Memcached 资源拥有完全控制权。 |
|
Memcached Editor | 除以下权限以外的所有 memcache 权限
|
管理 Memorystore for Memcached 实例。无法创建或删除实例。 |
|
Memcached Viewer | 除以下权限以外的所有 memcache 权限
|
拥有对所有 Memorystore for Memcached 资源的只读权限。 |
权限及其对应的角色
下表列出了 Memorystore for Memcached 支持的权限以及拥有这些权限的 Memorystore for Memcached 角色:
权限 | Memcached 角色 | 基本角色 |
---|---|---|
|
Memcached Admin Memcached Editor Memcached Viewer |
Reader |
|
Memcached Admin Memcached Editor Memcached Viewer |
Reader |
|
Memcached Admin | Writer |
|
Memcached Admin Memcached Editor |
Writer |
|
Memcached Admin | Writer |
|
Memcached Admin Memcached Editor |
Writer |
|
Memcached Admin Memcached Editor |
Writer |
|
Memcached Admin Memcached Editor |
写入者 |
|
Memcached Admin | 写入者 |
|
Memcached Admin Memcached Editor Memcached Viewer |
Reader |
|
Memcached Admin Memcached Editor Memcached Viewer |
Reader |
|
Memcached Admin Memcached Editor Memcached Viewer |
Reader |
|
Memcached Admin Memcached Editor Memcached Viewer |
Reader |
|
Memcached Admin Memcached Editor |
Writer |
自定义角色
如果预定义角色不能满足您的独特业务需求,您可以使用指定的权限定义自己的自定义角色。在为 Memorystore for Memcached 创建自定义角色时,请务必同时包含 resourcemanager.projects.get
和 resourcemanager.projects.list
。如需了解详情,请参阅权限依赖项。
Google Cloud 控制台中常见任务所需的权限
为了让用户能够通过 Google Cloud 控制台使用 Memorystore for Memcached,用户的角色必须包含 resourcemanager.projects.get
和 resourcemanager.projects.list
权限。
下表提供了 Google Cloud 控制台中一些常见任务所需的其他权限:
任务 | 其他必需权限 |
---|---|
显示实例列表页面 |
|
创建和修改实例 |
|
删除实例 |
|
使用 Cloud Shell 连接到实例 |
|
升级实例的 Memcached 版本 |
|
查看实例信息 |
|
gcloud 命令所需的权限
为了让用户能够通过 gcloud
命令使用 Memorystore for Memcached,用户的角色必须包含 resourcemanager.projects.get
和 resourcemanager.projects.list
权限。
下表列出了调用 gcloud
命令的用户必须对各个 gcloud memcache
子命令拥有的权限:
命令 | 所需权限 |
---|---|
gcloud memcache instances create |
|
gcloud memcache instances delete |
|
gcloud memcache instances update |
|
gcloud memcache instances upgrade |
|
gcloud memcache instances list |
|
gcloud memcache instances describe |
|
gcloud memcache instances apply-parameters |
|
gcloud beta memcache instances apply-software-update |
|
gcloud memcache operations list |
|
gcloud memcache operations describe |
|
gcloud memcache regions list |
|
gcloud memcache regions describe |
|
gcloud memcache zones list |
|
API 方法所需的权限
下表列出了用户在调用 Memorystore for Memcached API 中的每种方法或通过使用该 API 的 Google Cloud 工具(例如 Google Cloud 控制台或 gcloud
命令行工具)执行任务时必须具备的权限:
方法 | 所需权限 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
维护政策权限
下表显示了管理 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 | ✓ |
后续步骤
- 监控 Memcached 实例。
- 查看 Memcached 实例的审核日志。