Class CfnTemplate
Creates an Active Directory compatible certificate template.
Inherited Members
Namespace: Amazon.CDK.AWS.PCAConnectorAD
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnTemplate : CfnResource, IInspectable, ITemplateRef, IConstruct, IDependable, IEnvironmentAware, ITaggableV2
Syntax (vb)
Public Class CfnTemplate Inherits CfnResource Implements IInspectable, ITemplateRef, IConstruct, IDependable, IEnvironmentAware, ITaggableV2
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.PCAConnectorAD;
var cfnTemplate = new CfnTemplate(this, "MyCfnTemplate", new CfnTemplateProps {
ConnectorArn = "connectorArn",
Definition = new TemplateDefinitionProperty {
TemplateV2 = new TemplateV2Property {
CertificateValidity = new CertificateValidityProperty {
RenewalPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
},
ValidityPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
}
},
EnrollmentFlags = new EnrollmentFlagsV2Property {
EnableKeyReuseOnNtTokenKeysetStorageFull = false,
IncludeSymmetricAlgorithms = false,
NoSecurityExtension = false,
RemoveInvalidCertificateFromPersonalStore = false,
UserInteractionRequired = false
},
Extensions = new ExtensionsV2Property {
KeyUsage = new KeyUsageProperty {
UsageFlags = new KeyUsageFlagsProperty {
DataEncipherment = false,
DigitalSignature = false,
KeyAgreement = false,
KeyEncipherment = false,
NonRepudiation = false
},
// the properties below are optional
Critical = false
},
// the properties below are optional
ApplicationPolicies = new ApplicationPoliciesProperty {
Policies = new [] { new ApplicationPolicyProperty {
PolicyObjectIdentifier = "policyObjectIdentifier",
PolicyType = "policyType"
} },
// the properties below are optional
Critical = false
}
},
GeneralFlags = new GeneralFlagsV2Property {
AutoEnrollment = false,
MachineType = false
},
PrivateKeyAttributes = new PrivateKeyAttributesV2Property {
KeySpec = "keySpec",
MinimalKeyLength = 123,
// the properties below are optional
CryptoProviders = new [] { "cryptoProviders" }
},
PrivateKeyFlags = new PrivateKeyFlagsV2Property {
ClientVersion = "clientVersion",
// the properties below are optional
ExportableKey = false,
StrongKeyProtectionRequired = false
},
SubjectNameFlags = new SubjectNameFlagsV2Property {
RequireCommonName = false,
RequireDirectoryPath = false,
RequireDnsAsCn = false,
RequireEmail = false,
SanRequireDirectoryGuid = false,
SanRequireDns = false,
SanRequireDomainDns = false,
SanRequireEmail = false,
SanRequireSpn = false,
SanRequireUpn = false
},
// the properties below are optional
SupersededTemplates = new [] { "supersededTemplates" }
},
TemplateV3 = new TemplateV3Property {
CertificateValidity = new CertificateValidityProperty {
RenewalPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
},
ValidityPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
}
},
EnrollmentFlags = new EnrollmentFlagsV3Property {
EnableKeyReuseOnNtTokenKeysetStorageFull = false,
IncludeSymmetricAlgorithms = false,
NoSecurityExtension = false,
RemoveInvalidCertificateFromPersonalStore = false,
UserInteractionRequired = false
},
Extensions = new ExtensionsV3Property {
KeyUsage = new KeyUsageProperty {
UsageFlags = new KeyUsageFlagsProperty {
DataEncipherment = false,
DigitalSignature = false,
KeyAgreement = false,
KeyEncipherment = false,
NonRepudiation = false
},
// the properties below are optional
Critical = false
},
// the properties below are optional
ApplicationPolicies = new ApplicationPoliciesProperty {
Policies = new [] { new ApplicationPolicyProperty {
PolicyObjectIdentifier = "policyObjectIdentifier",
PolicyType = "policyType"
} },
// the properties below are optional
Critical = false
}
},
GeneralFlags = new GeneralFlagsV3Property {
AutoEnrollment = false,
MachineType = false
},
HashAlgorithm = "hashAlgorithm",
PrivateKeyAttributes = new PrivateKeyAttributesV3Property {
Algorithm = "algorithm",
KeySpec = "keySpec",
KeyUsageProperty = new KeyUsagePropertyProperty {
PropertyFlags = new KeyUsagePropertyFlagsProperty {
Decrypt = false,
KeyAgreement = false,
Sign = false
},
PropertyType = "propertyType"
},
MinimalKeyLength = 123,
// the properties below are optional
CryptoProviders = new [] { "cryptoProviders" }
},
PrivateKeyFlags = new PrivateKeyFlagsV3Property {
ClientVersion = "clientVersion",
// the properties below are optional
ExportableKey = false,
RequireAlternateSignatureAlgorithm = false,
StrongKeyProtectionRequired = false
},
SubjectNameFlags = new SubjectNameFlagsV3Property {
RequireCommonName = false,
RequireDirectoryPath = false,
RequireDnsAsCn = false,
RequireEmail = false,
SanRequireDirectoryGuid = false,
SanRequireDns = false,
SanRequireDomainDns = false,
SanRequireEmail = false,
SanRequireSpn = false,
SanRequireUpn = false
},
// the properties below are optional
SupersededTemplates = new [] { "supersededTemplates" }
},
TemplateV4 = new TemplateV4Property {
CertificateValidity = new CertificateValidityProperty {
RenewalPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
},
ValidityPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
}
},
EnrollmentFlags = new EnrollmentFlagsV4Property {
EnableKeyReuseOnNtTokenKeysetStorageFull = false,
IncludeSymmetricAlgorithms = false,
NoSecurityExtension = false,
RemoveInvalidCertificateFromPersonalStore = false,
UserInteractionRequired = false
},
Extensions = new ExtensionsV4Property {
KeyUsage = new KeyUsageProperty {
UsageFlags = new KeyUsageFlagsProperty {
DataEncipherment = false,
DigitalSignature = false,
KeyAgreement = false,
KeyEncipherment = false,
NonRepudiation = false
},
// the properties below are optional
Critical = false
},
// the properties below are optional
ApplicationPolicies = new ApplicationPoliciesProperty {
Policies = new [] { new ApplicationPolicyProperty {
PolicyObjectIdentifier = "policyObjectIdentifier",
PolicyType = "policyType"
} },
// the properties below are optional
Critical = false
}
},
GeneralFlags = new GeneralFlagsV4Property {
AutoEnrollment = false,
MachineType = false
},
PrivateKeyAttributes = new PrivateKeyAttributesV4Property {
KeySpec = "keySpec",
MinimalKeyLength = 123,
// the properties below are optional
Algorithm = "algorithm",
CryptoProviders = new [] { "cryptoProviders" },
KeyUsageProperty = new KeyUsagePropertyProperty {
PropertyFlags = new KeyUsagePropertyFlagsProperty {
Decrypt = false,
KeyAgreement = false,
Sign = false
},
PropertyType = "propertyType"
}
},
PrivateKeyFlags = new PrivateKeyFlagsV4Property {
ClientVersion = "clientVersion",
// the properties below are optional
ExportableKey = false,
RequireAlternateSignatureAlgorithm = false,
RequireSameKeyRenewal = false,
StrongKeyProtectionRequired = false,
UseLegacyProvider = false
},
SubjectNameFlags = new SubjectNameFlagsV4Property {
RequireCommonName = false,
RequireDirectoryPath = false,
RequireDnsAsCn = false,
RequireEmail = false,
SanRequireDirectoryGuid = false,
SanRequireDns = false,
SanRequireDomainDns = false,
SanRequireEmail = false,
SanRequireSpn = false,
SanRequireUpn = false
},
// the properties below are optional
HashAlgorithm = "hashAlgorithm",
SupersededTemplates = new [] { "supersededTemplates" }
}
},
Name = "name",
// the properties below are optional
ReenrollAllCertificateHolders = false,
Tags = new Dictionary<string, string> {
{ "tagsKey", "tags" }
}
});
Synopsis
Constructors
| CfnTemplate(Construct, string, ICfnTemplateProps) | Create a new |
Properties
| AttrTemplateArn | The Amazon Resource Name (ARN) that was returned when you called CreateTemplate . |
| CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
| CdkTagManager | Tag Manager which manages the tags for this resource. |
| CfnProperties | Creates an Active Directory compatible certificate template. |
| CfnPropertyNames | Creates an Active Directory compatible certificate template. |
| ConnectorArn | The Amazon Resource Name (ARN) that was returned when you called CreateConnector . |
| Definition | Template configuration to define the information included in certificates. |
| Name | Name of the templates. |
| ReenrollAllCertificateHolders | This setting allows the major version of a template to be increased automatically. |
| Tags | Metadata assigned to a template consisting of a key-value pair. |
| TemplateRef | A reference to a Template resource. |
Methods
| ArnForTemplate(ITemplateRef) | Creates an Active Directory compatible certificate template. |
| Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
| IsCfnTemplate(object) | Checks whether the given object is a CfnTemplate. |
| RenderProperties(IDictionary<string, object>) | Creates an Active Directory compatible certificate template. |
Constructors
CfnTemplate(Construct, string, ICfnTemplateProps)
Create a new AWS::PCAConnectorAD::Template.
public CfnTemplate(Construct scope, string id, ICfnTemplateProps props)
Parameters
- scope Construct
Scope in which this resource is defined.
- id string
Construct identifier for this resource (unique in its scope).
- props ICfnTemplateProps
Resource properties.
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
Properties
AttrTemplateArn
The Amazon Resource Name (ARN) that was returned when you called CreateTemplate .
public virtual string AttrTemplateArn { get; }
Property Value
Remarks
CloudformationAttribute: TemplateArn
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
CdkTagManager
Tag Manager which manages the tags for this resource.
public virtual TagManager CdkTagManager { get; }
Property Value
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
CfnProperties
Creates an Active Directory compatible certificate template.
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
Overrides
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
CfnPropertyNames
Creates an Active Directory compatible certificate template.
protected override IDictionary<string, string> CfnPropertyNames { get; }
Property Value
Overrides
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
ConnectorArn
The Amazon Resource Name (ARN) that was returned when you called CreateConnector .
public virtual string ConnectorArn { get; set; }
Property Value
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
Definition
Template configuration to define the information included in certificates.
public virtual object Definition { get; set; }
Property Value
Remarks
Type union: either IResolvable or CfnTemplate.ITemplateDefinitionProperty
Name
Name of the templates.
public virtual string Name { get; set; }
Property Value
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
ReenrollAllCertificateHolders
This setting allows the major version of a template to be increased automatically.
public virtual object? ReenrollAllCertificateHolders { get; set; }
Property Value
Remarks
Type union: either bool or IResolvable
Tags
Metadata assigned to a template consisting of a key-value pair.
public virtual IDictionary<string, string>? Tags { get; set; }
Property Value
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
TemplateRef
A reference to a Template resource.
public virtual ITemplateReference TemplateRef { get; }
Property Value
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
Methods
ArnForTemplate(ITemplateRef)
Creates an Active Directory compatible certificate template.
public static string ArnForTemplate(ITemplateRef resource)
Parameters
- resource ITemplateRef
Returns
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.PCAConnectorAD;
var cfnTemplate = new CfnTemplate(this, "MyCfnTemplate", new CfnTemplateProps {
ConnectorArn = "connectorArn",
Definition = new TemplateDefinitionProperty {
TemplateV2 = new TemplateV2Property {
CertificateValidity = new CertificateValidityProperty {
RenewalPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
},
ValidityPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
}
},
EnrollmentFlags = new EnrollmentFlagsV2Property {
EnableKeyReuseOnNtTokenKeysetStorageFull = false,
IncludeSymmetricAlgorithms = false,
NoSecurityExtension = false,
RemoveInvalidCertificateFromPersonalStore = false,
UserInteractionRequired = false
},
Extensions = new ExtensionsV2Property {
KeyUsage = new KeyUsageProperty {
UsageFlags = new KeyUsageFlagsProperty {
DataEncipherment = false,
DigitalSignature = false,
KeyAgreement = false,
KeyEncipherment = false,
NonRepudiation = false
},
// the properties below are optional
Critical = false
},
// the properties below are optional
ApplicationPolicies = new ApplicationPoliciesProperty {
Policies = new [] { new ApplicationPolicyProperty {
PolicyObjectIdentifier = "policyObjectIdentifier",
PolicyType = "policyType"
} },
// the properties below are optional
Critical = false
}
},
GeneralFlags = new GeneralFlagsV2Property {
AutoEnrollment = false,
MachineType = false
},
PrivateKeyAttributes = new PrivateKeyAttributesV2Property {
KeySpec = "keySpec",
MinimalKeyLength = 123,
// the properties below are optional
CryptoProviders = new [] { "cryptoProviders" }
},
PrivateKeyFlags = new PrivateKeyFlagsV2Property {
ClientVersion = "clientVersion",
// the properties below are optional
ExportableKey = false,
StrongKeyProtectionRequired = false
},
SubjectNameFlags = new SubjectNameFlagsV2Property {
RequireCommonName = false,
RequireDirectoryPath = false,
RequireDnsAsCn = false,
RequireEmail = false,
SanRequireDirectoryGuid = false,
SanRequireDns = false,
SanRequireDomainDns = false,
SanRequireEmail = false,
SanRequireSpn = false,
SanRequireUpn = false
},
// the properties below are optional
SupersededTemplates = new [] { "supersededTemplates" }
},
TemplateV3 = new TemplateV3Property {
CertificateValidity = new CertificateValidityProperty {
RenewalPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
},
ValidityPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
}
},
EnrollmentFlags = new EnrollmentFlagsV3Property {
EnableKeyReuseOnNtTokenKeysetStorageFull = false,
IncludeSymmetricAlgorithms = false,
NoSecurityExtension = false,
RemoveInvalidCertificateFromPersonalStore = false,
UserInteractionRequired = false
},
Extensions = new ExtensionsV3Property {
KeyUsage = new KeyUsageProperty {
UsageFlags = new KeyUsageFlagsProperty {
DataEncipherment = false,
DigitalSignature = false,
KeyAgreement = false,
KeyEncipherment = false,
NonRepudiation = false
},
// the properties below are optional
Critical = false
},
// the properties below are optional
ApplicationPolicies = new ApplicationPoliciesProperty {
Policies = new [] { new ApplicationPolicyProperty {
PolicyObjectIdentifier = "policyObjectIdentifier",
PolicyType = "policyType"
} },
// the properties below are optional
Critical = false
}
},
GeneralFlags = new GeneralFlagsV3Property {
AutoEnrollment = false,
MachineType = false
},
HashAlgorithm = "hashAlgorithm",
PrivateKeyAttributes = new PrivateKeyAttributesV3Property {
Algorithm = "algorithm",
KeySpec = "keySpec",
KeyUsageProperty = new KeyUsagePropertyProperty {
PropertyFlags = new KeyUsagePropertyFlagsProperty {
Decrypt = false,
KeyAgreement = false,
Sign = false
},
PropertyType = "propertyType"
},
MinimalKeyLength = 123,
// the properties below are optional
CryptoProviders = new [] { "cryptoProviders" }
},
PrivateKeyFlags = new PrivateKeyFlagsV3Property {
ClientVersion = "clientVersion",
// the properties below are optional
ExportableKey = false,
RequireAlternateSignatureAlgorithm = false,
StrongKeyProtectionRequired = false
},
SubjectNameFlags = new SubjectNameFlagsV3Property {
RequireCommonName = false,
RequireDirectoryPath = false,
RequireDnsAsCn = false,
RequireEmail = false,
SanRequireDirectoryGuid = false,
SanRequireDns = false,
SanRequireDomainDns = false,
SanRequireEmail = false,
SanRequireSpn = false,
SanRequireUpn = false
},
// the properties below are optional
SupersededTemplates = new [] { "supersededTemplates" }
},
TemplateV4 = new TemplateV4Property {
CertificateValidity = new CertificateValidityProperty {
RenewalPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
},
ValidityPeriod = new ValidityPeriodProperty {
Period = 123,
PeriodType = "periodType"
}
},
EnrollmentFlags = new EnrollmentFlagsV4Property {
EnableKeyReuseOnNtTokenKeysetStorageFull = false,
IncludeSymmetricAlgorithms = false,
NoSecurityExtension = false,
RemoveInvalidCertificateFromPersonalStore = false,
UserInteractionRequired = false
},
Extensions = new ExtensionsV4Property {
KeyUsage = new KeyUsageProperty {
UsageFlags = new KeyUsageFlagsProperty {
DataEncipherment = false,
DigitalSignature = false,
KeyAgreement = false,
KeyEncipherment = false,
NonRepudiation = false
},
// the properties below are optional
Critical = false
},
// the properties below are optional
ApplicationPolicies = new ApplicationPoliciesProperty {
Policies = new [] { new ApplicationPolicyProperty {
PolicyObjectIdentifier = "policyObjectIdentifier",
PolicyType = "policyType"
} },
// the properties below are optional
Critical = false
}
},
GeneralFlags = new GeneralFlagsV4Property {
AutoEnrollment = false,
MachineType = false
},
PrivateKeyAttributes = new PrivateKeyAttributesV4Property {
KeySpec = "keySpec",
MinimalKeyLength = 123,
// the properties below are optional
Algorithm = "algorithm",
CryptoProviders = new [] { "cryptoProviders" },
KeyUsageProperty = new KeyUsagePropertyProperty {
PropertyFlags = new KeyUsagePropertyFlagsProperty {
Decrypt = false,
KeyAgreement = false,
Sign = false
},
PropertyType = "propertyType"
}
},
PrivateKeyFlags = new PrivateKeyFlagsV4Property {
ClientVersion = "clientVersion",
// the properties below are optional
ExportableKey = false,
RequireAlternateSignatureAlgorithm = false,
RequireSameKeyRenewal = false,
StrongKeyProtectionRequired = false,
UseLegacyProvider = false
},
SubjectNameFlags = new SubjectNameFlagsV4Property {
RequireCommonName = false,
RequireDirectoryPath = false,
RequireDnsAsCn = false,
RequireEmail = false,
SanRequireDirectoryGuid = false,
SanRequireDns = false,
SanRequireDomainDns = false,
SanRequireEmail = false,
SanRequireSpn = false,
SanRequireUpn = false
},
// the properties below are optional
HashAlgorithm = "hashAlgorithm",
SupersededTemplates = new [] { "supersededTemplates" }
}
},
Name = "name",
// the properties below are optional
ReenrollAllCertificateHolders = false,
Tags = new Dictionary<string, string> {
{ "tagsKey", "tags" }
}
});
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
tree inspector to collect and process attributes.
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
IsCfnTemplate(object)
Checks whether the given object is a CfnTemplate.
public static bool IsCfnTemplate(object x)
Parameters
- x object
Returns
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated
RenderProperties(IDictionary<string, object>)
Creates an Active Directory compatible certificate template.
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props IDictionary<string, object>
Returns
Overrides
Remarks
The connectors issues certificates using these templates based on the requester’s Active Directory group membership.
CloudformationResource: AWS::PCAConnectorAD::Template
ExampleMetadata: fixture=_generated