Class: AWSCDK::IoT::CfnCertificateProps

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
io_t/cfn_certificate_props.rb

Overview

Properties for defining a CfnCertificate.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(status:, ca_certificate_pem: nil, certificate_mode: nil, certificate_pem: nil, certificate_signing_request: nil) ⇒ CfnCertificateProps

Returns a new instance of CfnCertificateProps.

Parameters:

  • status (String)

    The status of the certificate.

  • ca_certificate_pem (String, nil) (defaults to: nil)

    The CA certificate used to sign the device certificate being registered, not available when CertificateMode is SNI_ONLY.

  • certificate_mode (String, nil) (defaults to: nil)

    Specifies which mode of certificate registration to use with this resource.

  • certificate_pem (String, nil) (defaults to: nil)

    The certificate data in PEM format.

  • certificate_signing_request (String, nil) (defaults to: nil)

    The certificate signing request (CSR).



14
15
16
17
18
19
20
21
22
23
24
25
# File 'io_t/cfn_certificate_props.rb', line 14

def initialize(status:, ca_certificate_pem: nil, certificate_mode: nil, certificate_pem: nil, certificate_signing_request: nil)
  @status = status
  Jsii::Type.check_type(@status, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "status")
  @ca_certificate_pem = ca_certificate_pem
  Jsii::Type.check_type(@ca_certificate_pem, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "caCertificatePem") unless @ca_certificate_pem.nil?
  @certificate_mode = certificate_mode
  Jsii::Type.check_type(@certificate_mode, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "certificateMode") unless @certificate_mode.nil?
  @certificate_pem = certificate_pem
  Jsii::Type.check_type(@certificate_pem, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "certificatePem") unless @certificate_pem.nil?
  @certificate_signing_request = certificate_signing_request
  Jsii::Type.check_type(@certificate_signing_request, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "certificateSigningRequest") unless @certificate_signing_request.nil?
end

Instance Attribute Details

#ca_certificate_pemString? (readonly)

The CA certificate used to sign the device certificate being registered, not available when CertificateMode is SNI_ONLY.



40
41
42
# File 'io_t/cfn_certificate_props.rb', line 40

def ca_certificate_pem
  @ca_certificate_pem
end

#certificate_modeString? (readonly)

Specifies which mode of certificate registration to use with this resource.

Valid options are DEFAULT with CaCertificatePem and CertificatePem, SNI_ONLY with CertificatePem, and Default with CertificateSigningRequest.

DEFAULT : A certificate in DEFAULT mode is either generated by AWS IoT Core or registered with an issuer certificate authority (CA). Devices with certificates in DEFAULT mode aren't required to send the Server Name Indication (SNI) extension when connecting to AWS IoT Core . However, to use features such as custom domains and VPC endpoints, we recommend that you use the SNI extension when connecting to AWS IoT Core .

SNI_ONLY : A certificate in SNI_ONLY mode is registered without an issuer CA. Devices with certificates in SNI_ONLY mode must send the SNI extension when connecting to AWS IoT Core .



51
52
53
# File 'io_t/cfn_certificate_props.rb', line 51

def certificate_mode
  @certificate_mode
end

#certificate_pemString? (readonly)

The certificate data in PEM format.

Requires SNI_ONLY for the certificate mode or the accompanying CACertificatePem for registration.



58
59
60
# File 'io_t/cfn_certificate_props.rb', line 58

def certificate_pem
  @certificate_pem
end

#certificate_signing_requestString? (readonly)

The certificate signing request (CSR).



63
64
65
# File 'io_t/cfn_certificate_props.rb', line 63

def certificate_signing_request
  @certificate_signing_request
end

#statusString (readonly)

The status of the certificate.

Valid values are ACTIVE, INACTIVE, REVOKED, PENDING_TRANSFER, and PENDING_ACTIVATION.

The status value REGISTER_INACTIVE is deprecated and should not be used.



35
36
37
# File 'io_t/cfn_certificate_props.rb', line 35

def status
  @status
end

Class Method Details

.jsii_propertiesObject



65
66
67
68
69
70
71
72
73
# File 'io_t/cfn_certificate_props.rb', line 65

def self.jsii_properties
  {
    :status => "status",
    :ca_certificate_pem => "caCertificatePem",
    :certificate_mode => "certificateMode",
    :certificate_pem => "certificatePem",
    :certificate_signing_request => "certificateSigningRequest",
  }
end

Instance Method Details

#to_jsiiObject



75
76
77
78
79
80
81
82
83
84
85
# File 'io_t/cfn_certificate_props.rb', line 75

def to_jsii
  result = {}
  result.merge!({
    "status" => @status,
    "caCertificatePem" => @ca_certificate_pem,
    "certificateMode" => @certificate_mode,
    "certificatePem" => @certificate_pem,
    "certificateSigningRequest" => @certificate_signing_request,
  })
  result.compact
end