使用 IAM 控管存取權
透過集合功能整理內容
你可以依據偏好儲存及分類內容。
本頁說明可用於設定 Secret Manager 的 Identity and Access Management (IAM) 角色。角色會限制主體存取資源的能力。一律只授予執行特定工作所需的最低權限。
Secret 管理員角色
以下是與 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.locations.get
secretmanager.locations.list
secretmanager.secrets.create
secretmanager.secrets.createTagBinding
secretmanager.secrets.delete
secretmanager.secrets.deleteTagBinding
secretmanager.secrets.get
secretmanager.secrets.getIamPolicy
secretmanager.secrets.list
secretmanager.secrets.listEffectiveTags
secretmanager.secrets.listTagBindings
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 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 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.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.versions.add
secretmanager.versions.destroy
secretmanager.versions.disable
secretmanager.versions.enable
secretmanager.versions.get
secretmanager.versions.list
|
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.locations.*
secretmanager.locations.get
secretmanager.locations.list
secretmanager.secrets.get
secretmanager.secrets.getIamPolicy
secretmanager.secrets.list
secretmanager.secrets.listEffectiveTags
secretmanager.secrets.listTagBindings
secretmanager.versions.get
secretmanager.versions.list
|
最低權限原則
遵循最低權限原則時,您會授予執行特定工作所需的最低資源存取權。舉例來說,如果主體只需要存取單一密鑰,請勿授予該主體存取專案或機構中其他密鑰或所有密鑰的權限。如果主體只需要讀取密鑰,請勿授予該主體修改密鑰的權限。
您可以使用 IAM,在 Google Cloud 密鑰、專案、資料夾或機構層級授予 IAM 角色和權限。一律在資源階層的最低層級套用權限。
下表顯示服務帳戶的有效功能,具體取決於授予 Secret Manager Secret Accessor 角色 (roles/secretmanager.secretAccessor
) 的資源階層層級。
資源階層 |
功能 |
密鑰 |
僅存取該密鑰 |
專案 |
存取專案中的所有密鑰 |
資料夾 |
存取資料夾中所有專案的所有密鑰 |
機構 |
存取機構中所有專案的所有密鑰 |
角色 roles/owner
包含 `secretmanager.versions.access` 權限,但 roles/editor
和 roles/viewer
則不包含。
如果主體只需要存取單一密鑰的值,請勿授予該主體存取所有密鑰的權限。舉例來說,您可以將單一密鑰的 Secret Manager 密鑰存取者角色 (roles/secretmanager.secretAccessor
) 授予服務帳戶。
如果主體只需要管理單一密鑰,請勿授予該主體管理所有密鑰的權限。舉例來說,您可以為單一密鑰授予服務帳戶 Secret Manager 管理員角色 (roles/secretmanager.admin
)。
IAM 條件
IAM 條件可讓您針對部分 Google Cloud 資源 (包括 Secret Manager 資源),定義及強制執行條件式、屬性式存取控管機制。
在 Secret Manager 中,您可以根據下列屬性強制執行條件式存取權:
- 日期/時間屬性:
可用來為 Secret Manager 資源設定有期限、已排定或限時等各類存取。舉例來說,您可以允許使用者存取密鑰,直到指定日期為止。
- 資源屬性:
根據資源名稱、資源類型或資源服務屬性設定條件式存取權。在 Secret Manager 中,您可以使用密鑰和密鑰版本的屬性設定條件式存取權。舉例來說,您可以允許使用者只管理開頭為特定前置字元的密鑰版本,或只允許使用者存取特定密鑰版本。
如要進一步瞭解 IAM 條件,請參閱條件總覽。
後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-14 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["難以理解","hardToUnderstand","thumb-down"],["資訊或程式碼範例有誤","incorrectInformationOrSampleCode","thumb-down"],["缺少我需要的資訊/範例","missingTheInformationSamplesINeed","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-07-14 (世界標準時間)。"],[],[]]