Interface CfnTemplate.TemplateV4Property

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnTemplate.TemplateV4Property.Jsii$Proxy
Enclosing class:
CfnTemplate

@Stability(Stable) public static interface CfnTemplate.TemplateV4Property extends software.amazon.jsii.JsiiSerializable
v4 template schema that can use either Legacy Cryptographic Providers or Key Storage Providers.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.pcaconnectorad.*;
 TemplateV4Property templateV4Property = TemplateV4Property.builder()
         .certificateValidity(CertificateValidityProperty.builder()
                 .renewalPeriod(ValidityPeriodProperty.builder()
                         .period(123)
                         .periodType("periodType")
                         .build())
                 .validityPeriod(ValidityPeriodProperty.builder()
                         .period(123)
                         .periodType("periodType")
                         .build())
                 .build())
         .enrollmentFlags(EnrollmentFlagsV4Property.builder()
                 .enableKeyReuseOnNtTokenKeysetStorageFull(false)
                 .includeSymmetricAlgorithms(false)
                 .noSecurityExtension(false)
                 .removeInvalidCertificateFromPersonalStore(false)
                 .userInteractionRequired(false)
                 .build())
         .extensions(ExtensionsV4Property.builder()
                 .keyUsage(KeyUsageProperty.builder()
                         .usageFlags(KeyUsageFlagsProperty.builder()
                                 .dataEncipherment(false)
                                 .digitalSignature(false)
                                 .keyAgreement(false)
                                 .keyEncipherment(false)
                                 .nonRepudiation(false)
                                 .build())
                         // the properties below are optional
                         .critical(false)
                         .build())
                 // the properties below are optional
                 .applicationPolicies(ApplicationPoliciesProperty.builder()
                         .policies(List.of(ApplicationPolicyProperty.builder()
                                 .policyObjectIdentifier("policyObjectIdentifier")
                                 .policyType("policyType")
                                 .build()))
                         // the properties below are optional
                         .critical(false)
                         .build())
                 .build())
         .generalFlags(GeneralFlagsV4Property.builder()
                 .autoEnrollment(false)
                 .machineType(false)
                 .build())
         .privateKeyAttributes(PrivateKeyAttributesV4Property.builder()
                 .keySpec("keySpec")
                 .minimalKeyLength(123)
                 // the properties below are optional
                 .algorithm("algorithm")
                 .cryptoProviders(List.of("cryptoProviders"))
                 .keyUsageProperty(KeyUsagePropertyProperty.builder()
                         .propertyFlags(KeyUsagePropertyFlagsProperty.builder()
                                 .decrypt(false)
                                 .keyAgreement(false)
                                 .sign(false)
                                 .build())
                         .propertyType("propertyType")
                         .build())
                 .build())
         .privateKeyFlags(PrivateKeyFlagsV4Property.builder()
                 .clientVersion("clientVersion")
                 // the properties below are optional
                 .exportableKey(false)
                 .requireAlternateSignatureAlgorithm(false)
                 .requireSameKeyRenewal(false)
                 .strongKeyProtectionRequired(false)
                 .useLegacyProvider(false)
                 .build())
         .subjectNameFlags(SubjectNameFlagsV4Property.builder()
                 .requireCommonName(false)
                 .requireDirectoryPath(false)
                 .requireDnsAsCn(false)
                 .requireEmail(false)
                 .sanRequireDirectoryGuid(false)
                 .sanRequireDns(false)
                 .sanRequireDomainDns(false)
                 .sanRequireEmail(false)
                 .sanRequireSpn(false)
                 .sanRequireUpn(false)
                 .build())
         // the properties below are optional
         .hashAlgorithm("hashAlgorithm")
         .supersededTemplates(List.of("supersededTemplates"))
         .build();
 

See Also: