Class: Google::Apis::PrivatecaV1::CertificateAuthority

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

Overview

A CertificateAuthority represents an individual Certificate Authority. A CertificateAuthority can be used to create Certificates.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ CertificateAuthority

Returns a new instance of CertificateAuthority.



594
595
596
# File 'lib/google/apis/privateca_v1/classes.rb', line 594

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

Instance Attribute Details

#access_urlsGoogle::Apis::PrivatecaV1::AccessUrls

URLs where a CertificateAuthority will publish content. Corresponds to the JSON property accessUrls



496
497
498
# File 'lib/google/apis/privateca_v1/classes.rb', line 496

def access_urls
  @access_urls
end

#ca_certificate_descriptionsArray<Google::Apis::PrivatecaV1::CertificateDescription>

Output only. A structured description of this CertificateAuthority's CA certificate and its issuers. Ordered as self-to-root. Corresponds to the JSON property caCertificateDescriptions



502
503
504
# File 'lib/google/apis/privateca_v1/classes.rb', line 502

def ca_certificate_descriptions
  @ca_certificate_descriptions
end

#configGoogle::Apis::PrivatecaV1::CertificateConfig

A CertificateConfig describes an X.509 certificate or CSR that is to be created, as an alternative to using ASN.1. Corresponds to the JSON property config



508
509
510
# File 'lib/google/apis/privateca_v1/classes.rb', line 508

def config
  @config
end

#create_timeString

Output only. The time at which this CertificateAuthority was created. Corresponds to the JSON property createTime

Returns:

  • (String)


513
514
515
# File 'lib/google/apis/privateca_v1/classes.rb', line 513

def create_time
  @create_time
end

#delete_timeString

Output only. The time at which this CertificateAuthority was soft deleted, if it is in the DELETED state. Corresponds to the JSON property deleteTime

Returns:

  • (String)


519
520
521
# File 'lib/google/apis/privateca_v1/classes.rb', line 519

def delete_time
  @delete_time
end

#expire_timeString

Output only. The time at which this CertificateAuthority will be permanently purged, if it is in the DELETED state. Corresponds to the JSON property expireTime

Returns:

  • (String)


525
526
527
# File 'lib/google/apis/privateca_v1/classes.rb', line 525

def expire_time
  @expire_time
end

#gcs_bucketString

Immutable. The name of a Cloud Storage bucket where this CertificateAuthority will publish content, such as the CA certificate and CRLs. This must be a bucket name, without any prefixes (such as gs://) or suffixes (such as . googleapis.com). For example, to use a bucket named my-bucket, you would simply specify my-bucket. If not specified, a managed bucket will be created. Corresponds to the JSON property gcsBucket

Returns:

  • (String)


534
535
536
# File 'lib/google/apis/privateca_v1/classes.rb', line 534

def gcs_bucket
  @gcs_bucket
end

#key_specGoogle::Apis::PrivatecaV1::KeyVersionSpec

A Cloud KMS key configuration that a CertificateAuthority will use. Corresponds to the JSON property keySpec



539
540
541
# File 'lib/google/apis/privateca_v1/classes.rb', line 539

def key_spec
  @key_spec
end

#labelsHash<String,String>

Optional. Labels with user-defined metadata. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


544
545
546
# File 'lib/google/apis/privateca_v1/classes.rb', line 544

def labels
  @labels
end

#lifetimeString

Required. Immutable. The desired lifetime of the CA certificate. Used to create the "not_before_time" and "not_after_time" fields inside an X.509 certificate. Corresponds to the JSON property lifetime

Returns:

  • (String)


551
552
553
# File 'lib/google/apis/privateca_v1/classes.rb', line 551

def lifetime
  @lifetime
end

#nameString

Output only. The resource name for this CertificateAuthority in the format projects/*/locations/*/caPools/*/certificateAuthorities/*. Corresponds to the JSON property name

Returns:

  • (String)


557
558
559
# File 'lib/google/apis/privateca_v1/classes.rb', line 557

def name
  @name
end

#pem_ca_certificatesArray<String>

Output only. This CertificateAuthority's certificate chain, including the current CertificateAuthority's certificate. Ordered such that the root issuer is the final element (consistent with RFC 5246). For a self-signed CA, this will only list the current CertificateAuthority's certificate. Corresponds to the JSON property pemCaCertificates

Returns:

  • (Array<String>)


565
566
567
# File 'lib/google/apis/privateca_v1/classes.rb', line 565

def pem_ca_certificates
  @pem_ca_certificates
end

#stateString

Output only. The State for this CertificateAuthority. Corresponds to the JSON property state

Returns:

  • (String)


570
571
572
# File 'lib/google/apis/privateca_v1/classes.rb', line 570

def state
  @state
end

#subordinate_configGoogle::Apis::PrivatecaV1::SubordinateConfig

Describes a subordinate CA's issuers. This is either a resource name to a known issuing CertificateAuthority, or a PEM issuer certificate chain. Corresponds to the JSON property subordinateConfig



576
577
578
# File 'lib/google/apis/privateca_v1/classes.rb', line 576

def subordinate_config
  @subordinate_config
end

#tierString

Output only. The CaPool.Tier of the CaPool that includes this CertificateAuthority. Corresponds to the JSON property tier

Returns:

  • (String)


582
583
584
# File 'lib/google/apis/privateca_v1/classes.rb', line 582

def tier
  @tier
end

#typeString

Required. Immutable. The Type of this CertificateAuthority. Corresponds to the JSON property type

Returns:

  • (String)


587
588
589
# File 'lib/google/apis/privateca_v1/classes.rb', line 587

def type
  @type
end

#update_timeString

Output only. The time at which this CertificateAuthority was last updated. Corresponds to the JSON property updateTime

Returns:

  • (String)


592
593
594
# File 'lib/google/apis/privateca_v1/classes.rb', line 592

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
# File 'lib/google/apis/privateca_v1/classes.rb', line 599

def update!(**args)
  @access_urls = args[:access_urls] if args.key?(:access_urls)
  @ca_certificate_descriptions = args[:ca_certificate_descriptions] if args.key?(:ca_certificate_descriptions)
  @config = args[:config] if args.key?(:config)
  @create_time = args[:create_time] if args.key?(:create_time)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @expire_time = args[:expire_time] if args.key?(:expire_time)
  @gcs_bucket = args[:gcs_bucket] if args.key?(:gcs_bucket)
  @key_spec = args[:key_spec] if args.key?(:key_spec)
  @labels = args[:labels] if args.key?(:labels)
  @lifetime = args[:lifetime] if args.key?(:lifetime)
  @name = args[:name] if args.key?(:name)
  @pem_ca_certificates = args[:pem_ca_certificates] if args.key?(:pem_ca_certificates)
  @state = args[:state] if args.key?(:state)
  @subordinate_config = args[:subordinate_config] if args.key?(:subordinate_config)
  @tier = args[:tier] if args.key?(:tier)
  @type = args[:type] if args.key?(:type)
  @update_time = args[:update_time] if args.key?(:update_time)
end