Class: Google::Apis::PrivatecaV1beta1::CertificateAuthority

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/privateca_v1beta1/classes.rb,
lib/google/apis/privateca_v1beta1/representations.rb,
lib/google/apis/privateca_v1beta1/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.



585
586
587
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 585

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

Instance Attribute Details

#access_urlsGoogle::Apis::PrivatecaV1beta1::AccessUrls

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



484
485
486
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 484

def access_urls
  @access_urls
end

#ca_certificate_descriptionsArray<Google::Apis::PrivatecaV1beta1::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



490
491
492
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 490

def ca_certificate_descriptions
  @ca_certificate_descriptions
end

#certificate_policyGoogle::Apis::PrivatecaV1beta1::CertificateAuthorityPolicy

The issuing policy for a CertificateAuthority. Certificates will not be successfully issued from this CertificateAuthority if they violate the policy. Corresponds to the JSON property certificatePolicy



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

def certificate_policy
  @certificate_policy
end

#configGoogle::Apis::PrivatecaV1beta1::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



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

def config
  @config
end

#create_timeString

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

Returns:

  • (String)


507
508
509
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 507

def create_time
  @create_time
end

#delete_timeString

Output only. The time at which this CertificateAuthority will be deleted, if scheduled for deletion. Corresponds to the JSON property deleteTime

Returns:

  • (String)


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

def delete_time
  @delete_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)


522
523
524
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 522

def gcs_bucket
  @gcs_bucket
end

#issuing_optionsGoogle::Apis::PrivatecaV1beta1::IssuingOptions

Options that affect all certificates issued by a CertificateAuthority. Corresponds to the JSON property issuingOptions



527
528
529
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 527

def issuing_options
  @issuing_options
end

#key_specGoogle::Apis::PrivatecaV1beta1::KeyVersionSpec

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



532
533
534
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 532

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>)


537
538
539
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 537

def labels
  @labels
end

#lifetimeString

Required. 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)


543
544
545
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 543

def lifetime
  @lifetime
end

#nameString

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

Returns:

  • (String)


549
550
551
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 549

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>)


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

def pem_ca_certificates
  @pem_ca_certificates
end

#stateString

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

Returns:

  • (String)


562
563
564
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 562

def state
  @state
end

#subordinate_configGoogle::Apis::PrivatecaV1beta1::SubordinateConfig

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



568
569
570
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 568

def subordinate_config
  @subordinate_config
end

#tierString

Required. Immutable. The Tier of this CertificateAuthority. Corresponds to the JSON property tier

Returns:

  • (String)


573
574
575
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 573

def tier
  @tier
end

#typeString

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

Returns:

  • (String)


578
579
580
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 578

def type
  @type
end

#update_timeString

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

Returns:

  • (String)


583
584
585
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 583

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 590

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)
  @certificate_policy = args[:certificate_policy] if args.key?(:certificate_policy)
  @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)
  @gcs_bucket = args[:gcs_bucket] if args.key?(:gcs_bucket)
  @issuing_options = args[:issuing_options] if args.key?(:issuing_options)
  @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