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

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

Overview

A DNSSEC key pair.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ DnsKey

Returns a new instance of DnsKey



211
212
213
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 211

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)


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

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)


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

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)


155
156
157
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 155

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



162
163
164
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 162

def digests
  @digests
end

#idString

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

Returns:

  • (String)


167
168
169
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 167

def id
  @id
end

#is_activeBoolean Also known as: is_active?

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

Returns:

  • (Boolean)


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

def is_active
  @is_active
end

#key_lengthFixnum

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

Returns:

  • (Fixnum)


180
181
182
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 180

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)


190
191
192
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 190

def key_tag
  @key_tag
end

#kindString

Identifies what kind of resource this is. Value: the fixed string "dns#dnsKey". Corresponds to the JSON property kind

Returns:

  • (String)


195
196
197
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 195

def kind
  @kind
end

#public_keyString

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

Returns:

  • (String)


200
201
202
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 200

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, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time. Corresponds to the JSON property type

Returns:

  • (String)


209
210
211
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 209

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



216
217
218
219
220
221
222
223
224
225
226
227
228
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 216

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