Roles and permissions
These are the built-in roles for the Vault service. Each row lists a role, what it
grants, and the exact permissions it includes. Roles are system-defined (built-in) or
custom; permissions are system-defined and read-only. The platform-wide Viewer,
Editor, and Admin roles also apply across every service; see the
roles and permissions catalogue. You can also compose
a custom role from any of these permissions.
A permission authorizes an operation whatever engine it runs on. The
engines/{engine} selector decides where the work happens, not whether you may
ask for it; see engine selection.
| Role | Included permissions |
|---|---|
| Vault Viewer Read-only access to all vault resources | vault.capsule.getvault.capsule.listvault.certificate.getvault.certificate.listvault.certificateauthority.getvault.certificateauthority.listvault.certificatetemplate.getvault.certificatetemplate.listvault.cryptokey.getvault.cryptokey.listvault.cryptokeyversion.getvault.cryptokeyversion.listvault.operation.getvault.operation.listvault.secret.getvault.secret.listvault.secretversion.getvault.secretversion.list |
| Vault Editor Read and write access to all vault resources | vault.capsule.createvault.capsule.getvault.capsule.listvault.certificate.getvault.certificate.getcrlvault.certificate.issuevault.certificate.listvault.certificateauthority.createvault.certificateauthority.getvault.certificateauthority.listvault.certificatetemplate.createvault.certificatetemplate.getvault.certificatetemplate.listvault.certificatetemplate.updatevault.cryptokey.createvault.cryptokey.decryptvault.cryptokey.encryptvault.cryptokey.generatedatakeyvault.cryptokey.generaterandombytesvault.cryptokey.getvault.cryptokey.hmacvault.cryptokey.listvault.cryptokey.reencryptvault.cryptokey.rotatevault.cryptokey.signvault.cryptokey.updatevault.cryptokey.verifyvault.cryptokeyversion.disablevault.cryptokeyversion.getvault.cryptokeyversion.listvault.operation.getvault.operation.listvault.secret.addversionvault.secret.createvault.secret.getvault.secret.listvault.secret.updatevault.secretversion.disablevault.secretversion.getvault.secretversion.list |
| Vault Admin Full access to all vault resources | vault.capsule.createvault.capsule.getvault.capsule.listvault.capsule.revokevault.certificate.getvault.certificate.getcrlvault.certificate.issuevault.certificate.listvault.certificate.revokevault.certificateauthority.createvault.certificateauthority.deletevault.certificateauthority.getvault.certificateauthority.listvault.certificateauthority.revokevault.certificatetemplate.createvault.certificatetemplate.deletevault.certificatetemplate.getvault.certificatetemplate.listvault.certificatetemplate.updatevault.cryptokey.createvault.cryptokey.decryptvault.cryptokey.deletevault.cryptokey.encryptvault.cryptokey.generatedatakeyvault.cryptokey.generaterandombytesvault.cryptokey.getvault.cryptokey.hmacvault.cryptokey.listvault.cryptokey.reencryptvault.cryptokey.rotatevault.cryptokey.signvault.cryptokey.updatevault.cryptokey.verifyvault.cryptokeyversion.canceldestroyvault.cryptokeyversion.disablevault.cryptokeyversion.getvault.cryptokeyversion.listvault.cryptokeyversion.scheduledestroyvault.operation.getvault.operation.listvault.secret.addversionvault.secret.createvault.secret.deletevault.secret.getvault.secret.listvault.secret.updatevault.secretversion.destroyvault.secretversion.disablevault.secretversion.getvault.secretversion.list |
| Secret Viewer View vault secrets | vault.secret.getvault.secret.listvault.secretversion.getvault.secretversion.list |
| Secret Editor View and manage vault secrets | vault.secret.addversionvault.secret.createvault.secret.getvault.secret.listvault.secret.updatevault.secretversion.disablevault.secretversion.getvault.secretversion.list |
| Secret Admin Full access to vault secrets | vault.secret.addversionvault.secret.createvault.secret.deletevault.secret.getvault.secret.listvault.secret.updatevault.secretversion.destroyvault.secretversion.disablevault.secretversion.getvault.secretversion.list |
| CryptoKey Viewer View crypto keys | vault.cryptokey.getvault.cryptokey.listvault.cryptokeyversion.getvault.cryptokeyversion.list |
| CryptoKey Editor View and manage crypto keys | vault.cryptokey.createvault.cryptokey.decryptvault.cryptokey.encryptvault.cryptokey.generatedatakeyvault.cryptokey.generaterandombytesvault.cryptokey.getvault.cryptokey.hmacvault.cryptokey.listvault.cryptokey.reencryptvault.cryptokey.rotatevault.cryptokey.signvault.cryptokey.updatevault.cryptokey.verifyvault.cryptokeyversion.disablevault.cryptokeyversion.getvault.cryptokeyversion.list |
| CryptoKey Admin Full access to crypto keys | vault.cryptokey.createvault.cryptokey.decryptvault.cryptokey.deletevault.cryptokey.encryptvault.cryptokey.generatedatakeyvault.cryptokey.generaterandombytesvault.cryptokey.getvault.cryptokey.hmacvault.cryptokey.listvault.cryptokey.reencryptvault.cryptokey.rotatevault.cryptokey.signvault.cryptokey.updatevault.cryptokey.verifyvault.cryptokeyversion.canceldestroyvault.cryptokeyversion.disablevault.cryptokeyversion.getvault.cryptokeyversion.listvault.cryptokeyversion.scheduledestroy |
| CertificateAuthority Viewer View certificate authorities | vault.certificateauthority.getvault.certificateauthority.list |
| CertificateAuthority Editor View and manage certificate authorities | vault.certificateauthority.createvault.certificateauthority.getvault.certificateauthority.list |
| CertificateAuthority Admin Full access to certificate authorities | vault.certificateauthority.createvault.certificateauthority.deletevault.certificateauthority.getvault.certificateauthority.listvault.certificateauthority.revoke |
| Certificate Viewer View certificates | vault.certificate.getvault.certificate.getcrlvault.certificate.list |
| Certificate Editor Issue and view certificates | vault.certificate.getvault.certificate.getcrlvault.certificate.issuevault.certificate.list |
| Certificate Admin Full access to certificates including revoke | vault.certificate.getvault.certificate.getcrlvault.certificate.issuevault.certificate.listvault.certificate.revoke |
| VaultOperation Viewer View vault operation history | vault.operation.getvault.operation.list |
| VaultOperation Editor View vault operation history (no write actions) | vault.operation.getvault.operation.list |
| VaultOperation Admin Full access to vault operation history | vault.operation.getvault.operation.list |
Permissions no built-in role carries
Section titled “Permissions no built-in role carries”Two sets sit outside the table above, and neither is grantable through it.
vault.safe.snapshot takes a snapshot of the whole vault backend, so it belongs
to the installation rather than to a workspace. Only the platform Admin role
holds it; the Vault Admin role above is every vault permission except this one.
Restore, root-key rotation, and the platform secret store
(vault.platform.safe.restore, vault.platform.safe.rotaterootkey,
vault.platform.secret.read / .write / .delete) live on a separate
platform-authorization plane reserved for service-account principals. They cannot
be added to any role, including a custom one, and cannot be held by a person.