public sealed class Secret : IMessage<Secret>, IEquatable<Secret>, IDeepCloneable<Secret>, IBufferMessage, IMessage
Reference documentation and code samples for the Secret Manager v1 API class Secret.
A [Secret][google.cloud.secretmanager.v1.Secret] is a logical secret whose value and versions can be accessed.
A [Secret][google.cloud.secretmanager.v1.Secret] is made up of zero or more [SecretVersions][google.cloud.secretmanager.v1.SecretVersion] that represent the secret data.
Namespace
Google.Cloud.SecretManager.V1Assembly
Google.Cloud.SecretManager.V1.dll
Constructors
Secret()
public Secret()
Secret(Secret)
public Secret(Secret other)
Parameter | |
---|---|
Name | Description |
other |
Secret |
Properties
Annotations
public MapField<string, string> Annotations { get; }
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.
Property Value | |
---|---|
Type | Description |
MapFieldstringstring |
CreateTime
public Timestamp CreateTime { get; set; }
Output only. The time at which the [Secret][google.cloud.secretmanager.v1.Secret] was created.
Property Value | |
---|---|
Type | Description |
Timestamp |
CustomerManagedEncryption
public CustomerManagedEncryption CustomerManagedEncryption { get; set; }
Optional. The customer-managed encryption configuration of the Regionalised Secrets. If no configuration is provided, Google-managed default encryption is used.
Updates to the [Secret][google.cloud.secretmanager.v1.Secret] encryption configuration only apply to [SecretVersions][google.cloud.secretmanager.v1.SecretVersion] added afterwards. They do not apply retroactively to existing [SecretVersions][google.cloud.secretmanager.v1.SecretVersion].
Property Value | |
---|---|
Type | Description |
CustomerManagedEncryption |
Etag
public string Etag { get; set; }
Optional. Etag of the currently stored [Secret][google.cloud.secretmanager.v1.Secret].
Property Value | |
---|---|
Type | Description |
string |
ExpirationCase
public Secret.ExpirationOneofCase ExpirationCase { get; }
Property Value | |
---|---|
Type | Description |
SecretExpirationOneofCase |
ExpireTime
public Timestamp ExpireTime { get; set; }
Optional. Timestamp in UTC when the [Secret][google.cloud.secretmanager.v1.Secret] is scheduled to expire. This is always provided on output, regardless of what was sent on input.
Property Value | |
---|---|
Type | Description |
Timestamp |
Labels
public MapField<string, string> Labels { get; }
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}][\p{Ll}\p{Lo}\p{N}_-]{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.
Property Value | |
---|---|
Type | Description |
MapFieldstringstring |
Name
public string Name { get; set; }
Output only. The resource name of the
[Secret][google.cloud.secretmanager.v1.Secret] in the format
projects/*/secrets/*
.
Property Value | |
---|---|
Type | Description |
string |
Replication
public Replication Replication { get; set; }
Optional. Immutable. The replication policy of the secret data attached to the [Secret][google.cloud.secretmanager.v1.Secret].
The replication policy cannot be changed after the Secret has been created.
Property Value | |
---|---|
Type | Description |
Replication |
Rotation
public Rotation Rotation { get; set; }
Optional. Rotation policy attached to the [Secret][google.cloud.secretmanager.v1.Secret]. May be excluded if there is no rotation policy.
Property Value | |
---|---|
Type | Description |
Rotation |
SecretName
public SecretName SecretName { get; set; }
SecretName-typed view over the Name resource name property.
Property Value | |
---|---|
Type | Description |
SecretName |
Topics
public RepeatedField<Topic> Topics { get; }
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.
Property Value | |
---|---|
Type | Description |
RepeatedFieldTopic |
Ttl
public Duration Ttl { get; set; }
Input only. The TTL for the [Secret][google.cloud.secretmanager.v1.Secret].
Property Value | |
---|---|
Type | Description |
Duration |
VersionAliases
public MapField<string, long> VersionAliases { get; }
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 (-
)
and underscore ('_') characters. An alias string must start with a
letter and cannot be the string 'latest' or 'NEW'.
No more than 50 aliases can be assigned to a given secret.
Version-Alias pairs will be viewable via GetSecret and modifiable via UpdateSecret. Access by alias is only be supported on GetSecretVersion and AccessSecretVersion.
Property Value | |
---|---|
Type | Description |
MapFieldstringlong |
VersionDestroyTtl
public Duration VersionDestroyTtl { get; set; }
Optional. Secret Version TTL after destruction request
This is a part of the Delayed secret version destroy feature. For secret with TTL>0, version destruction doesn't happen immediately on calling destroy instead the version goes to a disabled state and destruction happens after the TTL expires.
Property Value | |
---|---|
Type | Description |
Duration |