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



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

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)


135
136
137
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 135

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)


141
142
143
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 141

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)


147
148
149
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 147

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



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

def digests
  @digests
end

#idString

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

Returns:

  • (String)


159
160
161
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 159

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)


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

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)


172
173
174
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 172

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)


182
183
184
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 182

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)


187
188
189
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 187

def kind
  @kind
end

#public_keyString

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

Returns:

  • (String)


192
193
194
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 192

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)


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

def type
  @type
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



208
209
210
211
212
213
214
215
216
217
218
219
220
# File 'generated/google/apis/dns_v1beta2/classes.rb', line 208

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