Class: AWSCDK::PCAConnectorAD::CfnTemplate::TemplateV2Property

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
pca_connector_ad/cfn_template.rb

Overview

v2 template schema that uses Legacy Cryptographic Providers.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(certificate_validity:, enrollment_flags:, extensions:, general_flags:, private_key_attributes:, private_key_flags:, subject_name_flags:, superseded_templates: nil) ⇒ TemplateV2Property

Returns a new instance of TemplateV2Property.

Parameters:



2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
# File 'pca_connector_ad/cfn_template.rb', line 2264

def initialize(certificate_validity:, enrollment_flags:, extensions:, general_flags:, private_key_attributes:, private_key_flags:, subject_name_flags:, superseded_templates: nil)
  @certificate_validity = certificate_validity.is_a?(Hash) ? ::AWSCDK::PCAConnectorAD::CfnTemplate::CertificateValidityProperty.new(**certificate_validity.transform_keys(&:to_sym)) : certificate_validity
  Jsii::Type.check_type(@certificate_validity, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19wY2Fjb25uZWN0b3JhZC5DZm5UZW1wbGF0ZS5DZXJ0aWZpY2F0ZVZhbGlkaXR5UHJvcGVydHkifV19fQ==")), "certificateValidity")
  @enrollment_flags = enrollment_flags.is_a?(Hash) ? ::AWSCDK::PCAConnectorAD::CfnTemplate::EnrollmentFlagsV2Property.new(**enrollment_flags.transform_keys(&:to_sym)) : enrollment_flags
  Jsii::Type.check_type(@enrollment_flags, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19wY2Fjb25uZWN0b3JhZC5DZm5UZW1wbGF0ZS5FbnJvbGxtZW50RmxhZ3NWMlByb3BlcnR5In1dfX0=")), "enrollmentFlags")
  @extensions = extensions.is_a?(Hash) ? ::AWSCDK::PCAConnectorAD::CfnTemplate::ExtensionsV2Property.new(**extensions.transform_keys(&:to_sym)) : extensions
  Jsii::Type.check_type(@extensions, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19wY2Fjb25uZWN0b3JhZC5DZm5UZW1wbGF0ZS5FeHRlbnNpb25zVjJQcm9wZXJ0eSJ9XX19")), "extensions")
  @general_flags = general_flags.is_a?(Hash) ? ::AWSCDK::PCAConnectorAD::CfnTemplate::GeneralFlagsV2Property.new(**general_flags.transform_keys(&:to_sym)) : general_flags
  Jsii::Type.check_type(@general_flags, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19wY2Fjb25uZWN0b3JhZC5DZm5UZW1wbGF0ZS5HZW5lcmFsRmxhZ3NWMlByb3BlcnR5In1dfX0=")), "generalFlags")
  @private_key_attributes = private_key_attributes.is_a?(Hash) ? ::AWSCDK::PCAConnectorAD::CfnTemplate::PrivateKeyAttributesV2Property.new(**private_key_attributes.transform_keys(&:to_sym)) : private_key_attributes
  Jsii::Type.check_type(@private_key_attributes, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19wY2Fjb25uZWN0b3JhZC5DZm5UZW1wbGF0ZS5Qcml2YXRlS2V5QXR0cmlidXRlc1YyUHJvcGVydHkifV19fQ==")), "privateKeyAttributes")
  @private_key_flags = private_key_flags.is_a?(Hash) ? ::AWSCDK::PCAConnectorAD::CfnTemplate::PrivateKeyFlagsV2Property.new(**private_key_flags.transform_keys(&:to_sym)) : private_key_flags
  Jsii::Type.check_type(@private_key_flags, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19wY2Fjb25uZWN0b3JhZC5DZm5UZW1wbGF0ZS5Qcml2YXRlS2V5RmxhZ3NWMlByb3BlcnR5In1dfX0=")), "privateKeyFlags")
  @subject_name_flags = subject_name_flags.is_a?(Hash) ? ::AWSCDK::PCAConnectorAD::CfnTemplate::SubjectNameFlagsV2Property.new(**subject_name_flags.transform_keys(&:to_sym)) : subject_name_flags
  Jsii::Type.check_type(@subject_name_flags, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19wY2Fjb25uZWN0b3JhZC5DZm5UZW1wbGF0ZS5TdWJqZWN0TmFtZUZsYWdzVjJQcm9wZXJ0eSJ9XX19")), "subjectNameFlags")
  @superseded_templates = superseded_templates
  Jsii::Type.check_type(@superseded_templates, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "supersededTemplates") unless @superseded_templates.nil?
end

Instance Attribute Details

#certificate_validityAWSCDK::IResolvable, AWSCDK::PCAConnectorAD::CfnTemplate::CertificateValidityProperty (readonly)

Certificate validity describes the validity and renewal periods of a certificate.



2287
2288
2289
# File 'pca_connector_ad/cfn_template.rb', line 2287

def certificate_validity
  @certificate_validity
end

#enrollment_flagsAWSCDK::IResolvable, AWSCDK::PCAConnectorAD::CfnTemplate::EnrollmentFlagsV2Property (readonly)

Enrollment flags describe the enrollment settings for certificates such as using the existing private key and deleting expired or revoked certificates.



2292
2293
2294
# File 'pca_connector_ad/cfn_template.rb', line 2292

def enrollment_flags
  @enrollment_flags
end

#extensionsAWSCDK::IResolvable, AWSCDK::PCAConnectorAD::CfnTemplate::ExtensionsV2Property (readonly)

Extensions describe the key usage extensions and application policies for a template.



2297
2298
2299
# File 'pca_connector_ad/cfn_template.rb', line 2297

def extensions
  @extensions
end

#general_flagsAWSCDK::IResolvable, AWSCDK::PCAConnectorAD::CfnTemplate::GeneralFlagsV2Property (readonly)

General flags describe whether the template is used for computers or users and if the template can be used with autoenrollment.



2302
2303
2304
# File 'pca_connector_ad/cfn_template.rb', line 2302

def general_flags
  @general_flags
end

#private_key_attributesAWSCDK::IResolvable, AWSCDK::PCAConnectorAD::CfnTemplate::PrivateKeyAttributesV2Property (readonly)

Private key attributes allow you to specify the minimal key length, key spec, and cryptographic providers for the private key of a certificate for v2 templates.

V2 templates allow you to use Legacy Cryptographic Service Providers.



2309
2310
2311
# File 'pca_connector_ad/cfn_template.rb', line 2309

def private_key_attributes
  @private_key_attributes
end

#private_key_flagsAWSCDK::IResolvable, AWSCDK::PCAConnectorAD::CfnTemplate::PrivateKeyFlagsV2Property (readonly)

Private key flags for v2 templates specify the client compatibility, if the private key can be exported, and if user input is required when using a private key.



2314
2315
2316
# File 'pca_connector_ad/cfn_template.rb', line 2314

def private_key_flags
  @private_key_flags
end

#subject_name_flagsAWSCDK::IResolvable, AWSCDK::PCAConnectorAD::CfnTemplate::SubjectNameFlagsV2Property (readonly)

Subject name flags describe the subject name and subject alternate name that is included in a certificate.



2319
2320
2321
# File 'pca_connector_ad/cfn_template.rb', line 2319

def subject_name_flags
  @subject_name_flags
end

#superseded_templatesArray<String>? (readonly)

List of templates in Active Directory that are superseded by this template.



2324
2325
2326
# File 'pca_connector_ad/cfn_template.rb', line 2324

def superseded_templates
  @superseded_templates
end

Class Method Details

.jsii_propertiesObject



2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
# File 'pca_connector_ad/cfn_template.rb', line 2326

def self.jsii_properties
  {
    :certificate_validity => "certificateValidity",
    :enrollment_flags => "enrollmentFlags",
    :extensions => "extensions",
    :general_flags => "generalFlags",
    :private_key_attributes => "privateKeyAttributes",
    :private_key_flags => "privateKeyFlags",
    :subject_name_flags => "subjectNameFlags",
    :superseded_templates => "supersededTemplates",
  }
end

Instance Method Details

#to_jsiiObject



2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
# File 'pca_connector_ad/cfn_template.rb', line 2339

def to_jsii
  result = {}
  result.merge!({
    "certificateValidity" => @certificate_validity,
    "enrollmentFlags" => @enrollment_flags,
    "extensions" => @extensions,
    "generalFlags" => @general_flags,
    "privateKeyAttributes" => @private_key_attributes,
    "privateKeyFlags" => @private_key_flags,
    "subjectNameFlags" => @subject_name_flags,
    "supersededTemplates" => @superseded_templates,
  })
  result.compact
end