Google 会使用 AI 技术将内容翻译成您偏好的语言。AI 翻译可能包含错误。
使用 IAM 进行访问权限控制
本页介绍可用于配置 Secret Manager 的 Identity and Access Management (IAM) 角色。角色可限制主账号访问资源的权限。请始终授予执行给定任务所需的最低权限集。
Secret Manager 角色
以下是与 Secret Manager 关联的 IAM 角色。如需了解如何使用 IAM 角色授予、更改或撤消对资源的访问权限,请参阅授予、更改和撤消对资源的访问权限。
| Role |
Permissions |
Secret Manager Admin
(roles/secretmanager.admin)
Full access to administer Secret Manager resources.
Lowest-level resources where you can grant this role:
|
cloudkms.keyHandles.*
cloudkms.keyHandles.create
cloudkms.keyHandles.get
cloudkms.keyHandles.list
cloudkms.operations.get
cloudkms.projects.showEffectiveAutokeyConfig
resourcemanager.projects.get
resourcemanager.projects.list
secretmanager.*
secretmanager.backups.create
secretmanager.backups.delete
secretmanager.backups.get
secretmanager.backups.list
secretmanager.backups.restore
secretmanager.backups.update
secretmanager.locations.get
secretmanager.locations.list
secretmanager.operations.cancel
secretmanager.operations.get
secretmanager.operations.list
secretmanager.secrets.backup
secretmanager.secrets.create
secretmanager.secrets.createTagBinding
secretmanager.secrets.delete
secretmanager.secrets.deleteTagBinding
secretmanager.secrets.enableManagedRotation
secretmanager.secrets.get
secretmanager.secrets.getIamPolicy
secretmanager.secrets.list
secretmanager.secrets.listEffectiveTags
secretmanager.secrets.listTagBindings
secretmanager.secrets.restore
secretmanager.secrets.rotate
secretmanager.secrets.setIamPolicy
secretmanager.secrets.update
secretmanager.versions.access
secretmanager.versions.add
secretmanager.versions.destroy
secretmanager.versions.disable
secretmanager.versions.enable
secretmanager.versions.get
secretmanager.versions.list
|
Secret Manager Editor
(roles/secretmanager.editor)
Editor role for Secret Manager
|
resourcemanager.projects.get
resourcemanager.projects.list
secretmanager.backups.create
secretmanager.backups.delete
secretmanager.backups.get
secretmanager.backups.list
secretmanager.backups.update
secretmanager.locations.*
secretmanager.locations.get
secretmanager.locations.list
secretmanager.operations.*
secretmanager.operations.cancel
secretmanager.operations.get
secretmanager.operations.list
secretmanager.secrets.create
secretmanager.secrets.delete
secretmanager.secrets.enableManagedRotation
secretmanager.secrets.get
secretmanager.secrets.getIamPolicy
secretmanager.secrets.list
secretmanager.secrets.listEffectiveTags
secretmanager.secrets.listTagBindings
secretmanager.secrets.rotate
secretmanager.secrets.update
secretmanager.versions.add
secretmanager.versions.destroy
secretmanager.versions.disable
secretmanager.versions.enable
secretmanager.versions.get
secretmanager.versions.list
|
Secret Manager Secret Accessor
(roles/secretmanager.secretAccessor)
Allows accessing the payload of secrets.
Lowest-level resources where you can grant this role:
|
resourcemanager.projects.get
resourcemanager.projects.list
secretmanager.versions.access
|
Secret Manager Viewer
(roles/secretmanager.viewer)
Allows viewing metadata of all Secret Manager resources
Lowest-level resources where you can grant this role:
|
resourcemanager.projects.get
resourcemanager.projects.list
secretmanager.backups.get
secretmanager.backups.list
secretmanager.locations.*
secretmanager.locations.get
secretmanager.locations.list
secretmanager.operations.get
secretmanager.operations.list
secretmanager.secrets.get
secretmanager.secrets.getIamPolicy
secretmanager.secrets.list
secretmanager.secrets.listEffectiveTags
secretmanager.secrets.listTagBindings
secretmanager.versions.get
secretmanager.versions.list
|
Secret Manager Secret Version Adder
(roles/secretmanager.secretVersionAdder)
Allows adding versions to existing secrets.
Lowest-level resources where you can grant this role:
|
resourcemanager.projects.get
resourcemanager.projects.list
secretmanager.secrets.rotate
secretmanager.versions.add
|
Secret Manager Secret Version Manager
(roles/secretmanager.secretVersionManager)
Allows creating and managing versions of existing secrets.
Lowest-level resources where you can grant this role:
|
resourcemanager.projects.get
resourcemanager.projects.list
secretmanager.secrets.rotate
secretmanager.versions.add
secretmanager.versions.destroy
secretmanager.versions.disable
secretmanager.versions.enable
secretmanager.versions.get
secretmanager.versions.list
|
最小权限原则
当您遵循最小权限原则时,您将为执行特定任务所需的资源授予最低级别的访问权限。例如,如果主账号需要访问单个密文,请勿向该主账号授予对项目或组织中其他密文或所有密文的访问权限。如果主账号只需要读取密文,请勿向该主账号授予修改密文的权限。
您可以使用 IAM 在 Cloud de Confiance 密文、项目、文件夹或组织级别授予 IAM 角色和权限。始终在资源层次结构中应用最低级别的权限。
下表根据授予了 Secret Manager Secret Accessor 角色 (roles/secretmanager.secretAccessor) 的资源层次结构级别,提供了服务账号的有效功能。
| 资源层次结构 |
能力 |
| 密文 |
仅访问该密文 |
| 项目 |
访问项目中的所有密文 |
| 文件夹 |
访问文件夹中所有项目中的所有密文 |
| 组织 |
访问组织的所有项目中的所有密文 |
角色 roles/owner 包含 `secretmanager.versions.access` 权限,但 roles/editor 和 roles/viewer 则不含。
如果主账号只需要访问单个密文的值,请勿向该主账号授予访问所有密文的权限。例如,您可以为服务账号授予单个 Secret Manager Secret Accessor 角色 (roles/secretmanager.secretAccessor)。
如果主账号只需要管理单个密文,请勿向该主账号授予管理所有密文的权限。例如,您可以向服务账号授予对单个 Secret Manager 密文的 Admin 角色 (roles/secretmanager.admin)。
IAM Conditions
IAM Conditions 允许您为某些 Cloud de Confiance 资源(包括 Secret Manager 资源)定义和强制执行基于属性的条件访问权限控制。
在 Secret Manager 中,您可以根据以下属性强制执行条件访问权限:
- 日期/时间属性:用于设置 Secret Manager 资源的可过期、定期或限制时长的访问权限。例如,您可以允许用户访问某个密文,直到指定日期为止。
- 资源属性:用于根据资源名称、资源类型或资源服务属性配置有条件访问权限。在 Secret Manager 中,您可以使用密文和密文版本的属性来配置条件访问权限。例如,您可以允许用户仅管理以特定前缀开头的密文,或仅允许访问特定密文版本。
如需详细了解 IAM 条件,请参阅条件概览。
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2026-11-03。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["没有我需要的信息","missingTheInformationINeed","thumb-down"],["太复杂/步骤太多","tooComplicatedTooManySteps","thumb-down"],["内容需要更新","outOfDate","thumb-down"],["翻译问题","translationIssue","thumb-down"],["示例/代码问题","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["最后更新时间 (UTC):2026-11-03。"],[],[]]