- Resource: Secret
- Replication
- Automatic
- CustomerManagedEncryption
- UserManaged
- Replica
- Topic
- Rotation
- Methods
Resource: Secret
A Secret is a logical secret whose value and versions can be accessed.
A Secret is made up of zero or more SecretVersions that represent the secret data.
| JSON representation |
|---|
{ "name": string, "replication": { object ( |
| Fields | |
|---|---|
name |
Output only. The resource name of the |
replication |
Required. Immutable. The replication policy of the secret data attached to the The replication policy cannot be changed after the Secret has been created. |
createTime |
Output only. The time at which the A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
labels |
The labels assigned to this Secret. Label keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: Label values must be between 0 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform to the following PCRE regular expression: No more than 64 labels can be assigned to a given resource. An object containing a list of |
topics[] |
Optional. A list of up to 10 Pub/Sub topics to which messages are published when control plane operations are called on the secret or its versions. |
etag |
Optional. Etag of the currently stored |
rotation |
Optional. Rotation policy attached to the |
versionAliases |
Optional. Mapping from version alias to version name. A version alias is a string with a maximum length of 63 characters and can contain uppercase and lowercase letters, numerals, and the hyphen ( Version-Alias pairs will be viewable via secrets.get and modifiable via secrets.patch. At launch Access by Allias will only be supported on GetSecretVersion and AccessSecretVersion. An object containing a list of |
annotations |
Optional. Custom metadata about the secret. Annotations are distinct from various forms of labels. Annotations exist to allow client tools to store their own state information without requiring a database. Annotation keys must be between 1 and 63 characters long, have a UTF-8 encoding of maximum 128 bytes, begin and end with an alphanumeric character ([a-z0-9A-Z]), and may have dashes (-), underscores (_), dots (.), and alphanumerics in between these symbols. The total size of annotation keys and values must be less than 16KiB. An object containing a list of |
Union field Expiration is not the recommended way to set time-based permissions. IAM Conditions is recommended for granting time-based permissions because the operation can be reversed. |
|
expireTime |
Optional. Timestamp in UTC when the A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
ttl |
Input only. The TTL for the A duration in seconds with up to nine fractional digits, ending with ' |
Replication
A policy that defines the replication and encryption configuration of data.
| JSON representation |
|---|
{ // Union field |
| Fields | |
|---|---|
Union field replication. The replication policy for this secret. replication can be only one of the following: |
|
automatic |
The |
userManaged |
The |
Automatic
A replication policy that replicates the Secret payload without any restrictions.
| JSON representation |
|---|
{
"customerManagedEncryption": {
object ( |
| Fields | |
|---|---|
customerManagedEncryption |
Optional. The customer-managed encryption configuration of the Updates to the |
CustomerManagedEncryption
Configuration for encrypting secret payloads using customer-managed encryption keys (CMEK).
| JSON representation |
|---|
{ "kmsKeyName": string } |
| Fields | |
|---|---|
kmsKeyName |
Required. The resource name of the Cloud KMS CryptoKey used to encrypt secret payloads. For secrets using the For secrets using the The expected format is |
UserManaged
A replication policy that replicates the Secret payload into the locations specified in [Secret.replication.user_managed.replicas][]
| JSON representation |
|---|
{
"replicas": [
{
object ( |
| Fields | |
|---|---|
replicas[] |
Required. The list of Replicas for this Cannot be empty. |
Replica
Represents a Replica for this Secret.
| JSON representation |
|---|
{
"location": string,
"customerManagedEncryption": {
object ( |
| Fields | |
|---|---|
location |
The canonical IDs of the location to replicate data. For example: |
customerManagedEncryption |
Optional. The customer-managed encryption configuration of the [User-Managed Replica][Replication.UserManaged.Replica]. If no configuration is provided, Google-managed default encryption is used. Updates to the |
Topic
A Pub/Sub topic which Secret Manager will publish to when control plane events occur on this secret.
| JSON representation |
|---|
{ "name": string } |
| Fields | |
|---|---|
name |
Required. The resource name of the Pub/Sub topic that will be published to, in the following format: |
Rotation
The rotation time and period for a Secret. At nextRotationTime, Secret Manager will send a Pub/Sub notification to the topics configured on the Secret. Secret.topics must be set to configure rotation.
| JSON representation |
|---|
{ "nextRotationTime": string, "rotationPeriod": string } |
| Fields | |
|---|---|
nextRotationTime |
Optional. Timestamp in UTC at which the
A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: |
rotationPeriod |
Input only. The Duration between rotation notifications. Must be in seconds and at least 3600s (1h) and at most 3153600000s (100 years). If A duration in seconds with up to nine fractional digits, ending with ' |
Methods |
|
|---|---|
|
Creates a new SecretVersion containing secret data and attaches it to an existing Secret. |
|
Creates a new Secret containing no SecretVersions. |
|
Deletes a Secret. |
|
Gets metadata for a given Secret. |
|
Gets the access control policy for a secret. |
|
Lists Secrets. |
|
Updates metadata of an existing Secret. |
|
Sets the access control policy on the specified secret. |
|
Returns permissions that a caller has for the specified secret. |