TestimoX

API Reference

Class

TemplateRow

Namespace ADPlayground.Pki.PkiTemplatesEvaluator
Assembly ADPlayground
Implements
IEquatable<TemplateRow>
Modifiers sealed

Row describing a single template and key risk flags.

Inheritance

  • Object
  • TemplateRow

Constructors

public TemplateRow(String TemplateName, String DisplayName, Nullable<Int32> MinimalKeySize, Boolean WeakKey, Boolean IssuancePolicyMissing, Boolean TakeoverRisk, String TakeoverSummary, Boolean ExportableKeys, Boolean SupplySubject, Boolean NoManagerApproval, Boolean EnrollmentAgent, Boolean KdcAuth, String DistinguishedName, Boolean AnyEku, Boolean MissingEku, Boolean HasCodeSigningEku, Boolean HasClientAuthEku, Boolean HasSmartCardLogonEku, Boolean RaSignatureRequired, Nullable<Int32> RaSignatureRequiredValue, Boolean RaPolicyMissingWhenRequired, Boolean CodeSigningRisk, Boolean ClientAuthRisk) #

Row describing a single template and key risk flags.

Parameters

TemplateName System.String requiredposition: 0
Template name (CN).
DisplayName System.String requiredposition: 1
Friendly display name.
MinimalKeySize System.Nullable{System.Int32} requiredposition: 2
Configured minimal key size.
WeakKey System.Boolean requiredposition: 3
True when MinimalKeySize is below 2048.
IssuancePolicyMissing System.Boolean requiredposition: 4
True when no issuance policies are configured.
TakeoverRisk System.Boolean requiredposition: 5
True when takeover findings exist.
TakeoverSummary System.String requiredposition: 6
Friendly text summarizing takeover findings.
ExportableKeys System.Boolean requiredposition: 7
True when private keys may be exportable.
SupplySubject System.Boolean requiredposition: 8
True when enrollee supplies subject.
NoManagerApproval System.Boolean requiredposition: 9
True when manager approval is not required.
EnrollmentAgent System.Boolean requiredposition: 10
True when EA EKU is present.
KdcAuth System.Boolean requiredposition: 11
True when KDC Authentication EKU is present.
DistinguishedName System.String requiredposition: 12
Template DN.
AnyEku System.Boolean requiredposition: 13
True when Any EKU is present.
MissingEku System.Boolean requiredposition: 14
True when EKU list is empty.
HasCodeSigningEku System.Boolean requiredposition: 15
True when Code Signing EKU is present.
HasClientAuthEku System.Boolean requiredposition: 16
True when Client Auth EKU is present.
HasSmartCardLogonEku System.Boolean requiredposition: 17
True when Smart Card Logon EKU is present.
RaSignatureRequired System.Boolean requiredposition: 18
True when RA signature is required.
RaSignatureRequiredValue System.Nullable{System.Int32} requiredposition: 19
Raw RA signature required value.
RaPolicyMissingWhenRequired System.Boolean requiredposition: 20
True when RA policy is missing while RA signature is required.
CodeSigningRisk System.Boolean requiredposition: 21
True when the template is risky for code signing usage.
ClientAuthRisk System.Boolean requiredposition: 22
True when the template is risky for client authentication usage.

Methods

public TemplateRow <Clone>$() #
Returns: TemplateRow
public Void Deconstruct(out String TemplateName, out String DisplayName, out Nullable<Int32> MinimalKeySize, out Boolean WeakKey, out Boolean IssuancePolicyMissing, out Boolean TakeoverRisk, out String TakeoverSummary, out Boolean ExportableKeys, out Boolean SupplySubject, out Boolean NoManagerApproval, out Boolean EnrollmentAgent, out Boolean KdcAuth, out String DistinguishedName, out Boolean AnyEku, out Boolean MissingEku, out Boolean HasCodeSigningEku, out Boolean HasClientAuthEku, out Boolean HasSmartCardLogonEku, out Boolean RaSignatureRequired, out Nullable<Int32> RaSignatureRequiredValue, out Boolean RaPolicyMissingWhenRequired, out Boolean CodeSigningRisk, out Boolean ClientAuthRisk) #
Returns: Void

Parameters

TemplateName String requiredposition: 0
DisplayName String requiredposition: 1
MinimalKeySize Nullable<Int32> requiredposition: 2
WeakKey Boolean requiredposition: 3
IssuancePolicyMissing Boolean requiredposition: 4
TakeoverRisk Boolean requiredposition: 5
TakeoverSummary String requiredposition: 6
ExportableKeys Boolean requiredposition: 7
SupplySubject Boolean requiredposition: 8
NoManagerApproval Boolean requiredposition: 9
EnrollmentAgent Boolean requiredposition: 10
KdcAuth Boolean requiredposition: 11
DistinguishedName String requiredposition: 12
AnyEku Boolean requiredposition: 13
MissingEku Boolean requiredposition: 14
HasCodeSigningEku Boolean requiredposition: 15
HasClientAuthEku Boolean requiredposition: 16
HasSmartCardLogonEku Boolean requiredposition: 17
RaSignatureRequired Boolean requiredposition: 18
RaSignatureRequiredValue Nullable<Int32> requiredposition: 19
RaPolicyMissingWhenRequired Boolean requiredposition: 20
CodeSigningRisk Boolean requiredposition: 21
ClientAuthRisk Boolean requiredposition: 22
public virtual Boolean Equals(TemplateRow other) #
Returns: Boolean

Parameters

obj Object requiredposition: 0
public override Int32 GetHashCode() #
Returns: Int32
public override String ToString() #
Returns: String

Properties

public String TemplateName { get; set; } #

Template name (CN).

public String DisplayName { get; set; } #

Friendly display name.

public Nullable<Int32> MinimalKeySize { get; set; } #

Configured minimal key size.

public Boolean WeakKey { get; set; } #

True when MinimalKeySize is below 2048.

public Boolean IssuancePolicyMissing { get; set; } #

True when no issuance policies are configured.

public Boolean TakeoverRisk { get; set; } #

True when takeover findings exist.

public String TakeoverSummary { get; set; } #

Friendly text summarizing takeover findings.

public Boolean ExportableKeys { get; set; } #

True when private keys may be exportable.

public Boolean SupplySubject { get; set; } #

True when enrollee supplies subject.

public Boolean NoManagerApproval { get; set; } #

True when manager approval is not required.

public Boolean EnrollmentAgent { get; set; } #

True when EA EKU is present.

public Boolean KdcAuth { get; set; } #

True when KDC Authentication EKU is present.

public String DistinguishedName { get; set; } #

Template DN.

public Boolean AnyEku { get; set; } #

True when Any EKU is present.

public Boolean MissingEku { get; set; } #

True when EKU list is empty.

public Boolean HasCodeSigningEku { get; set; } #

True when Code Signing EKU is present.

public Boolean HasClientAuthEku { get; set; } #

True when Client Auth EKU is present.

public Boolean HasSmartCardLogonEku { get; set; } #

True when Smart Card Logon EKU is present.

public Boolean RaSignatureRequired { get; set; } #

True when RA signature is required.

public Nullable<Int32> RaSignatureRequiredValue { get; set; } #

Raw RA signature required value.

public Boolean RaPolicyMissingWhenRequired { get; set; } #

True when RA policy is missing while RA signature is required.

public Boolean CodeSigningRisk { get; set; } #

True when the template is risky for code signing usage.

public Boolean ClientAuthRisk { get; set; } #

True when the template is risky for client authentication usage.