class Google::Apis::SecretmanagerV1::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.

Attributes

create_time[RW]

Output only. The time at which the Secret was created. Corresponds to the JSON property `createTime` @return [String]

etag[RW]

Optional. Etag of the currently stored Secret. Corresponds to the JSON property `etag` @return [String]

expire_time[RW]

Optional. Timestamp in UTC when the Secret is scheduled to expire. This is always provided on output, regardless of what was sent on input. Corresponds to the JSON property `expireTime` @return [String]

labels[RW]

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: `p`Ll`p`Lo“0,62“ 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: `[p`Ll`p` Lo`p`N`_-]`0,63“ No more than 64 labels can be assigned to a given resource. Corresponds to the JSON property `labels` @return [Hash<String,String>]

name[RW]

Output only. The resource name of the Secret in the format `projects/*/secrets/ *`. Corresponds to the JSON property `name` @return [String]

replication[RW]

A policy that defines the replication and encryption configuration of data. Corresponds to the JSON property `replication` @return [Google::Apis::SecretmanagerV1::Replication]

rotation[RW]

The rotation time and period for a Secret. At next_rotation_time, Secret Manager will send a Pub/Sub notification to the topics configured on the Secret. Secret.topics must be set to configure rotation. Corresponds to the JSON property `rotation` @return [Google::Apis::SecretmanagerV1::Rotation]

topics[RW]

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. Corresponds to the JSON property `topics` @return [Array<Google::Apis::SecretmanagerV1::Topic>]

ttl[RW]

Input only. The TTL for the Secret. Corresponds to the JSON property `ttl` @return [String]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/secretmanager_v1/classes.rb, line 861
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/secretmanager_v1/classes.rb, line 866
def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @etag = args[:etag] if args.key?(:etag)
  @expire_time = args[:expire_time] if args.key?(:expire_time)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @replication = args[:replication] if args.key?(:replication)
  @rotation = args[:rotation] if args.key?(:rotation)
  @topics = args[:topics] if args.key?(:topics)
  @ttl = args[:ttl] if args.key?(:ttl)
end