Class: AWSCDK::ACMPCA::CfnCertificate::ExtensionsProperty

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
acmpca/cfn_certificate.rb

Overview

Contains X.509 extension information for a certificate.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(certificate_policies: nil, custom_extensions: nil, extended_key_usage: nil, key_usage: nil, subject_alternative_names: nil) ⇒ ExtensionsProperty

Returns a new instance of ExtensionsProperty.

Parameters:



833
834
835
836
837
838
839
840
841
842
843
844
# File 'acmpca/cfn_certificate.rb', line 833

def initialize(certificate_policies: nil, custom_extensions: nil, extended_key_usage: nil, key_usage: nil, subject_alternative_names: nil)
  @certificate_policies = certificate_policies
  Jsii::Type.check_type(@certificate_policies, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYWNtcGNhLkNmbkNlcnRpZmljYXRlLlBvbGljeUluZm9ybWF0aW9uUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "certificatePolicies") unless @certificate_policies.nil?
  @custom_extensions = custom_extensions
  Jsii::Type.check_type(@custom_extensions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYWNtcGNhLkNmbkNlcnRpZmljYXRlLkN1c3RvbUV4dGVuc2lvblByb3BlcnR5In1dfX0sImtpbmQiOiJhcnJheSJ9fV19fQ==")), "customExtensions") unless @custom_extensions.nil?
  @extended_key_usage = extended_key_usage
  Jsii::Type.check_type(@extended_key_usage, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYWNtcGNhLkNmbkNlcnRpZmljYXRlLkV4dGVuZGVkS2V5VXNhZ2VQcm9wZXJ0eSJ9XX19LCJraW5kIjoiYXJyYXkifX1dfX0=")), "extendedKeyUsage") unless @extended_key_usage.nil?
  @key_usage = key_usage.is_a?(Hash) ? ::AWSCDK::ACMPCA::CfnCertificate::KeyUsageProperty.new(**key_usage.transform_keys(&:to_sym)) : key_usage
  Jsii::Type.check_type(@key_usage, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19hY21wY2EuQ2ZuQ2VydGlmaWNhdGUuS2V5VXNhZ2VQcm9wZXJ0eSJ9XX19")), "keyUsage") unless @key_usage.nil?
  @subject_alternative_names = subject_alternative_names
  Jsii::Type.check_type(@subject_alternative_names, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfYWNtcGNhLkNmbkNlcnRpZmljYXRlLkdlbmVyYWxOYW1lUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "subjectAlternativeNames") unless @subject_alternative_names.nil?
end

Instance Attribute Details

#certificate_policiesAWSCDK::IResolvable, ... (readonly)

Contains a sequence of one or more policy information terms, each of which consists of an object identifier (OID) and optional qualifiers.

For more information, see NIST's definition of Object Identifier (OID) .

In an end-entity certificate, these terms indicate the policy under which the certificate was issued and the purposes for which it may be used. In a CA certificate, these terms limit the set of policies for certification paths that include this certificate.



854
855
856
# File 'acmpca/cfn_certificate.rb', line 854

def certificate_policies
  @certificate_policies
end

#custom_extensionsAWSCDK::IResolvable, ... (readonly)

Contains a sequence of one or more X.509 extensions, each of which consists of an object identifier (OID), a base64-encoded value, and the critical flag. For more information, see the Global OID reference database..



859
860
861
# File 'acmpca/cfn_certificate.rb', line 859

def custom_extensions
  @custom_extensions
end

#extended_key_usageAWSCDK::IResolvable, ... (readonly)

Specifies additional purposes for which the certified public key may be used other than basic purposes indicated in the KeyUsage extension.



864
865
866
# File 'acmpca/cfn_certificate.rb', line 864

def extended_key_usage
  @extended_key_usage
end

#key_usageAWSCDK::IResolvable, ... (readonly)

Defines one or more purposes for which the key contained in the certificate can be used.

Default value for each option is false.



871
872
873
# File 'acmpca/cfn_certificate.rb', line 871

def key_usage
  @key_usage
end

#subject_alternative_namesAWSCDK::IResolvable, ... (readonly)

The subject alternative name extension allows identities to be bound to the subject of the certificate.

These identities may be included in addition to or in place of the identity in the subject field of the certificate.



878
879
880
# File 'acmpca/cfn_certificate.rb', line 878

def subject_alternative_names
  @subject_alternative_names
end

Class Method Details

.jsii_propertiesObject



880
881
882
883
884
885
886
887
888
# File 'acmpca/cfn_certificate.rb', line 880

def self.jsii_properties
  {
    :certificate_policies => "certificatePolicies",
    :custom_extensions => "customExtensions",
    :extended_key_usage => "extendedKeyUsage",
    :key_usage => "keyUsage",
    :subject_alternative_names => "subjectAlternativeNames",
  }
end

Instance Method Details

#to_jsiiObject



890
891
892
893
894
895
896
897
898
899
900
# File 'acmpca/cfn_certificate.rb', line 890

def to_jsii
  result = {}
  result.merge!({
    "certificatePolicies" => @certificate_policies,
    "customExtensions" => @custom_extensions,
    "extendedKeyUsage" => @extended_key_usage,
    "keyUsage" => @key_usage,
    "subjectAlternativeNames" => @subject_alternative_names,
  })
  result.compact
end