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.



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

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



462
463
464
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 462

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



468
469
470
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 468

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



474
475
476
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 474

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



480
481
482
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 480

def config
  @config
end

#create_timeString

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

Returns:

  • (String)


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

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)


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

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)


500
501
502
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 500

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



505
506
507
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 505

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



510
511
512
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 510

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


515
516
517
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 515

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)


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

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)


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

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


535
536
537
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 535

def pem_ca_certificates
  @pem_ca_certificates
end

#stateString

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

Returns:

  • (String)


540
541
542
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 540

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



546
547
548
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 546

def subordinate_config
  @subordinate_config
end

#tierString

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

Returns:

  • (String)


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

def tier
  @tier
end

#typeString

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

Returns:

  • (String)


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

def type
  @type
end

#update_timeString

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

Returns:

  • (String)


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

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
# File 'lib/google/apis/privateca_v1beta1/classes.rb', line 568

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