Class: Google::Apis::DnsV1beta2::DnsKey

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/dns_v1beta2/classes.rb,
lib/google/apis/dns_v1beta2/representations.rb,
lib/google/apis/dns_v1beta2/representations.rb

Overview

A DNSSEC key pair.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ DnsKey

Returns a new instance of DnsKey.



205
206
207
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 205

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#algorithmString

String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time. Corresponds to the JSON property algorithm

Returns:

  • (String)


137
138
139
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 137

def algorithm
  @algorithm
end

#creation_timeString

The time that this resource was created in the control plane. This is in RFC3339 text format. Output only. Corresponds to the JSON property creationTime

Returns:

  • (String)


143
144
145
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 143

def creation_time
  @creation_time
end

#descriptionString

A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function. Corresponds to the JSON property description

Returns:

  • (String)


149
150
151
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 149

def description
  @description
end

#digestsArray<Google::Apis::DnsV1beta2::DnsKeyDigest>

Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only. Corresponds to the JSON property digests



156
157
158
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 156

def digests
  @digests
end

#idString

Unique identifier for the resource; defined by the server (output only). Corresponds to the JSON property id

Returns:

  • (String)


161
162
163
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 161

def id
  @id
end

#is_activeBoolean Also known as: is_active?

Active keys are used to sign subsequent changes to the ManagedZone. Inactive keys are still present as DNSKEY Resource Records for the use of resolvers validating existing signatures. Corresponds to the JSON property isActive

Returns:

  • (Boolean)


168
169
170
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 168

def is_active
  @is_active
end

#key_lengthFixnum

Length of the key in bits. Specified at creation time, and then immutable. Corresponds to the JSON property keyLength

Returns:

  • (Fixnum)


174
175
176
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 174

def key_length
  @key_length
end

#key_tagFixnum

The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only. Corresponds to the JSON property keyTag

Returns:

  • (Fixnum)


184
185
186
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 184

def key_tag
  @key_tag
end

#kindString

Corresponds to the JSON property kind

Returns:

  • (String)


189
190
191
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 189

def kind
  @kind
end

#public_keyString

Base64 encoded public half of this key. Output only. Corresponds to the JSON property publicKey

Returns:

  • (String)


194
195
196
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 194

def public_key
  @public_key
end

#typeString

One of "KEY_SIGNING" or "ZONE_SIGNING". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, are used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag is cleared, and this key is used to sign only resource record sets of other types. Immutable after creation time. Corresponds to the JSON property type

Returns:

  • (String)


203
204
205
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 203

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



210
211
212
213
214
215
216
217
218
219
220
221
222
# File 'lib/google/apis/dns_v1beta2/classes.rb', line 210

def update!(**args)
  @algorithm = args[:algorithm] if args.key?(:algorithm)
  @creation_time = args[:creation_time] if args.key?(:creation_time)
  @description = args[:description] if args.key?(:description)
  @digests = args[:digests] if args.key?(:digests)
  @id = args[:id] if args.key?(:id)
  @is_active = args[:is_active] if args.key?(:is_active)
  @key_length = args[:key_length] if args.key?(:key_length)
  @key_tag = args[:key_tag] if args.key?(:key_tag)
  @kind = args[:kind] if args.key?(:kind)
  @public_key = args[:public_key] if args.key?(:public_key)
  @type = args[:type] if args.key?(:type)
end