| Allowed Enrollment Types |
An integer indicating the allowed enrollment types for the enrollment pattern. This value controls which enrollment methods can be used through the Keyfactor API and Management Portal.
For CSR and PFX enrollment, the enrollment pattern is only available when associated with a CA that is configured for enrollment in Keyfactor Command (see HTTPS CAs - Enrollment Section or DCOM CAs - Enrollment Section).
Show allowed enrollment type details.
| 0 |
None |
| 1 |
PFX Enrollment |
| 2 |
CSR Enrollment |
| 3 |
CSR Enrollment & PFX Enrollment |
| 4 |
CSR Generation |
| 5 |
CSR Generation & PFX Enrollment |
| 6 |
CSR Generation & CSR Enrollment |
| 7 |
CSR Enrollment, PFX Enrollment & CSR Generation |
|
| Associated Roles |
An array of objects indicating the security roles associated with the enrollment pattern. Only users holding ones of these roles will be able to use the enrollment pattern if UseADPermissions is False. Show role details.
| Id |
An integer indicating the ID of the security role in Keyfactor Command.
|
| Name |
A string indicating the name of the security role. |
|
| Certificate Authorities |
An array of objects indicating the certificate authorities to which the enrollment pattern is restricted, if applicable (see the RestrictCAs parameter). Show CA details.
| Id |
An integer indicating the ID of the certificate authority in Keyfactor Command.
|
| Logical Name |
A string indicating the logical name of the certificate authority. |
| HostName |
A string indicating the DNS host name (for DCOM configurations) or URL (for HTTPS configurations) of the certificate authority (for example, myca.keyexample.com or https://myca.keyexample.com). |
| Configuration Tenant |
A string indicating the forest root name or DNS domain name for the certificate authority (for example, keyexample.com). |
|
| Defaults |
An array of objects defining default certificate subject values for an enrollment pattern. These values are used to prepopulate subject fields in the Management Portal during enrollment when using this pattern and apply only to enrollments made with this pattern. Enrollment pattern defaults take precedence over system-wide default subject settings. For more information about system-wide defaults, see GET Enrollment Patterns Settings.
Note: Enrollment defaults do not apply to requests made with CSR enrollment or the Keyfactor API.
Show enrollment pattern default details.
| SubjectPart |
A string indicating the portion of the subject the default applies to (for example, L for City/Locality).
|
| Value |
A string containing the value to assign as the default for that subject part (for example, Chicago). |
|
| Description |
A string indicating the Keyfactor Command description of the enrollment pattern. |
| Enrollment Fields |
An array of objects defining custom enrollment fields for an enrollment pattern. These fields allow additional request attributes to be included with CSR and PFX enrollments and passed to the certificate authority (CA) during the enrollment process.
Custom enrollment fields can be used to:
-
Enforce certificate request requirements and prevent invalid enrollments
-
Provide additional information to the CA as part of the request
-
Support integrations such as the Keyfactor Windows Enrollment Gateway, which uses enrollment fields for standard functionality
When configured, these fields are presented during CSR and PFX enrollment (for example, in the Additional Enrollment Fields section in the Management Portal) and must be completed as part of the request. The submitted values are passed to the CA and may appear in CA-issued certificate attributes, depending on CA configuration.
Note: These fields are not metadata and are not stored in Keyfactor Command. They are passed through to the CA, where they can be used by a gateway or policy module to perform additional processing.
Show enrollment field details.
| DataType |
An integer indicating the parameter type. The options are:
| 1 |
String: A free-form data entry field. |
| 2 |
Multiple Choice: Provides a list of acceptable values for the field. The multiple choice values are provided in the Options parameter. |
|
| Name |
A string indicating the name of the custom enrollment field. This name will appear on the enrollment pages. |
| Options |
For multiple choice values, an array of strings containing the value choices. |
|
| Id |
An integer indicating the ID of the enrollment pattern in Keyfactor Command.
|
| Metadata Fields |
An array of objects containing metadata field settings specific to an individual enrollment pattern. These metadata field configurations can override global metadata field configurations in these possible ways:
-
Configuration on the metadata field of required, optional or hidden.
-
The default value for the metadata field.
-
A regular expression defined for the field (string fields only) against which entered data will be validated along with its associated message.
-
For fields of data type multiple choice, the list of values that appear in multiple choice dropdowns.
Metadata field settings defined on an enrollment pattern apply to enrollments made with that enrollment pattern only and take precedence over global-level metadata field settings.
Show metadata field details.
| Metadata Id |
An integer indicating the Keyfactor Command reference ID of the global metadata field associated with the settings specific to the enrollment pattern.
|
| Default Value |
A string containing the default value defined for the metadata field for the specific enrollment pattern. |
| Validation |
A string containing the regular expression for the enrollment pattern against which data entered in a string field will be validated. When a user enters information in a metadata field that does not match the specified regular expression, he or she will see the warning message specified in the Message field. For example:Copy^[a-zA-Z0-9'_\.\-]*@(keyexample\.org|keyexample\.com)$
This regular expression specifies that the data entered in the field must consist of some number of characters prior to the @ made up only of lowercase letters, uppercase letters, numbers, apostrophes, underscores, periods, and/or hyphens followed by exactly either @keyexample.org or keyexample.com. This field is only supported for metadata fields with data type string. |
| Enrollment |
An integer that indicates how metadata fields should be handled on the PFX and CSR Enrollment pages. Possible values are:
|
0
|
Optional Users have the option to either enter a value or not enter a value in the field. |
|
1
|
Required Users are required to enter data in the field when populating metadata fields on the PFX and CSR Enrollment pages. The field is not required on the certificate details or Add Certificate page. |
| 2 |
Hidden The field is hidden and does not appear on the PFX and CSR Enrollment pages. This field still appears on the certificate details and the Add Certificate page. |
|
| Message |
A string containing a message to present when a user enters information in a metadata field that does not match the regular expression for the enrollment pattern (Validation field). |
| Case Sensitive |
A Boolean for string metadata fields with Validation defined, that sets the validation for the field to be case-sensitive (True or False). If the user's entry for the metadata field does not match the expected case, the value specified by the Message parameter will display. |
|
| Name |
A string indicating the Keyfactor Command reference name of the enrollment pattern. |
| Policies |
An object containing the individual policy settings for the enrollment pattern. Policies defined on an enrollment pattern apply to enrollments made with that enrollment pattern only and take precedence over system-wide policies. For more information about system-wide enrollment pattern policies, see GET Enrollment Patterns Settings. Show enrollment pattern policy details.
| Allow Key Reuse |
A Boolean that indicates whether private key reuse is allowed (True or False). This option applies to certificate renewals. By default, this is set to true at a system-wide level. |
| Allow Wildcards |
A Boolean that indicates whether wildcards are allowed (True or False). By default, this is set to true at a system-wide level. |
| AlternativeKeyAlgorithms |
An array of objects containing the supported alternative key algorithms for the template as reported by the CA including the bit lengths and/or curves as appropriate. If the enrollment pattern is using the system-wide settings for this parameter, a value will not be returned. Show alternative key algorithm details.| name | A string indicating the name of the key algorithm. The supported key algorithm names are: ECDSA RSA Ed448 Ed25519 ML-DSA-44 ML-DSA-65 ML-DSA-87
| | bit_lengths | An array of integers indicating the key sizes supported for enrollment through Keyfactor Command. For RSA, Keyfactor Command supports key sizes 2048, 3072, 4096, 6144, 8192, and 16384. | | curves | An array of strings indicating the elliptic curve algorithms that are supported for enrollment through Keyfactor Command, if applicable. ECC curves may be specified using the well-known OIDs for ECC algorithms or by friendly name. Well-known OIDs include: 1.2.840.10045.3.1.7 = P-256/ prime256v1/ secp256r1 1.3.132.0.34 = P-384/secp384r1 1.3.132.0.35 = P-521/secp521r1
When specifying by friendly name, do not include a slash (use “P-256” or “secp256r1”, not “P-256/prime256v1/secp256r1”). |
|
| Certificate Owner Role |
An integer indicating the certificate owner role setting. The supported values are:
-
0: Optional:
The field appears in PFX and CSR enrollment in the Management Portal, but the user is not required to enter a value. If a default owner is defined (either at the system-wide level or in the enrollment pattern) and the user does not enter a value, the default value is automatically applied upon submission. This default-value behavior applies to enrollments submitted through both the Management Portal and the Keyfactor API PFX and CSR enrollment operations.
-
1: Required:
The field appears in PFX and CSR enrollment in the Management Portal, and a value must be provided before submission. The same requirement applies to enrollments submitted through the Keyfactor API PFX and CSR enrollment operations—a certificate owner value must be provided before submission in all cases.
-
2: Hidden:
The field does not appear in PFX and CSR enrollment in the Management Portal, but if a default owner is defined (either at the system-wide level or in the enrollment pattern), that value is automatically applied upon submission. This default-value behavior applies to enrollments submitted through both the Management Portal and the Keyfactor API PFX and CSR enrollment operations.
|
| CSRSANControl |
An integer indicating the policy to apply when handling CSR SANs.
This field can be used to configure how CSR subject alternative names (SANs) are handled. During enrollment, when submitting a CSR, this option can be configured to either replace the custom subject alternative names (SANs) supplied by CSR, merge with the custom subject alternative names (SANs) supplied by the CSR, or not allow custom subject alternative names (SANs) to be added to the CSR.
Important: This allows you to select, more directly and clearly, the option that is compatible with the CA you are using, since some CAs do not allow SAN replacement or merging.
Note: This functionality replaces the enrollment application setting Allow CSR SAN Entry.
Options are:
-
NULL - Indicates the global setting for enrollment patterns will be used. *Cannot be set to NULL for PUT /EnrollmentPattterns or PUT /EnrollmentPattterns/Settings.
-
0 -
Off
When this field is set to Off, the Subject Alternative Names section will not appear in the CSR Enrollment page. API requests that specify external SANs will have those ignored. This matches the prior behavior when the application setting was set to False.
-
1 -
Replace
When this field is set to Replace, the Subject Alternative Names section will appear in the CSR Enrollment page. If any external SANs are provided, those will be used by the workflow instead of the SANs from the CSR. If no external SANs are provided, the SANs from the CSR will be used by the workflow. This matches the prior behavior when the application setting was set to True.
-
2 -
Merge
When this field is set to Merge, the Subject Alternative Names section will appear in the CSR Enrollment page. Any external SANs provided will be merged with any SANs present in the CSR. Duplicates will be removed, and the result will be used in the workflow.
|
| Default Certificate Owner Override |
A Boolean that indicates whether the default certificate owner name from the system-wide policy should be overridden with a locally-configured value for the enrollment pattern (True or False).
|
| Default Certificate Owner Role Id |
An integer indicating the Keyfactor Command reference ID of the security role assigned as the default certificate owner for certificates enrolled or imported via synchronization or scanning with this enrollment pattern.
|
| Default Certificate Owner Role Name |
A string indicating the name of the security role to assign as the default certificate owner for certificates enrolled or imported via synchronization or scanning with this enrollment pattern.
|
| KeyInfo |
An object containing the supported key types for the enrollment pattern along with the bit lengths and/or curves for the key types as appropriate. If the enrollment pattern is using the system-wide settings for these, a value will not be returned.
Important: The KeyInfo parameter has been deprecated. It is retained for backwards compatibility, but all new development should use the PrimaryKeyAlgorithms and AlternativeKeyAlgorithms parameters.
Show key info details.
| ECDSA |
An object containing the name of the key type and two arrays:
- name: A string indicating the name of the key type.
- bit_lengths: An array of integers indicating the key sizes supported for enrollment through Keyfactor Command.
- curves: An array of strings indicating the elliptic curve algorithms that are supported for enrollment through Keyfactor Command.
|
| RSA |
An object containing the name of the key type and two arrays:
- name: A string indicating the name of the key type.
- bit_lengths: An array of integers indicating the key sizes supported for enrollment through Keyfactor Command.
- curves: There are no curves for this type of key.
|
| Ed448 |
An object containing the name of the key type and two arrays:
- name: A string indicating the name of the key type.
- bit_lengths: An array of integers indicating the key sizes supported for enrollment through Keyfactor Command.
- curves: There are no curves for this type of key.
|
| Ed25519 |
An object containing the name of the key type and two arrays:
- name: A string indicating the name of the key type.
- bit_lengths: An array of integers indicating the key sizes supported for enrollment through Keyfactor Command.
- curves: There are no curves for this type of key.
|
| MLDSA44 |
An object containing the name of the key type and two arrays:
- name: A string indicating the name of the key type.
- bit_lengths: There are no key size choices for this type of key.
- curves: There are no curves for this type of key.
|
| MLDSA65 |
An object containing the name of the key type and two arrays:
- name: A string indicating the name of the key type.
- bit_lengths: There are no key size choices for this type of key.
- curves: There are no curves for this type of key.
|
| MLDSA87 |
An object containing the name of the key type and two arrays:
- name: A string indicating the name of the key type.
- bit_lengths: There are no key size choices for this type of key.
- curves: There are no curves for this type of key.
|
|
| PrimaryKeyAlgorithms |
An array of objects containing the supported primary key algorithms for the enrollment pattern as defined in the specific enrollment pattern policy, including the bit lengths and/or curves as appropriate. If the enrollment pattern is using the system-wide settings for this parameter, a value will not be returned. Show primary key algorithm details.| name | A string indicating the name of the key algorithm. The supported key algorithm names are: ECDSA RSA Ed448 Ed25519 ML-DSA-44 ML-DSA-65 ML-DSA-87
| | bit_lengths | An array of integers indicating the key sizes supported for enrollment through Keyfactor Command. For RSA, Keyfactor Command supports key sizes 2048, 3072, 4096, 6144, 8192, and 16384. | | curves | An array of strings indicating the elliptic curve algorithms that are supported for enrollment through Keyfactor Command, if applicable. ECC curves may be specified using the well-known OIDs for ECC algorithms or by friendly name. Well-known OIDs include: 1.2.840.10045.3.1.7 = P-256/ prime256v1/ secp256r1 1.3.132.0.34 = P-384/secp384r1 1.3.132.0.35 = P-521/secp521r1
When specifying by friendly name, do not include a slash (use “P-256” or “secp256r1”, not “P-256/prime256v1/secp256r1”). |
|
| RFC Enforcement |
A Boolean that indicates whether RFC 2818 compliance enforcement is turned on (True or False). When this option is set to True, certificate enrollments made through Keyfactor Command for this enrollment pattern must include at least one DNS SAN.
In the Keyfactor Command Management Portal, this causes the following behavior:
-
PFX Enrollment: The CN entered in PFX enrollment is automatically replicated as a DNS SAN, which the user does not see and cannot change.
-
CSR Enrollment: If the CSR does not have a SAN that matches the CN, one will automatically be added to the certificate. The user enrolling does not see this and cannot change it.
-
CSR Generation: The CN entered will be automatically replicated as a DNS SAN and set to read only.
By default, this is set to False at the system-wide level.
|
|
| Regexes |
An array of objects containing regular expressions specific to an individual enrollment pattern, used to validate the subject data. Regular expressions defined on an enrollment pattern apply to enrollments made with that enrollment pattern only. Regular expressions defined for enrollment patterns take precedence over system-wide regular expressions. Show regular expression details.
| Subject Part |
A string indicating the portion of the subject the regular expression applies to (for example, CN).
|
| Regex |
A string specifying the regular expression against which data entered in the indicated subject part field (for example, CN) in the enrollment pages of the Keyfactor Command Management Portal or using an API enrollment operation will be validated.
Show regular expression examples.
| CN (Common Name) |
This regular expression specifies that the data entered in the field must consist of 1 to 63 characters in the first portion of the field made up only of lowercase letters, uppercase letters, numbers, periods, and/or hyphens (but not at the beginning or end of sections or duplicated) followed by exactly .keyexample.com:
Copy
^(?!-)(?!.*--)[A-Za-z0-9-]{1,63}(?<!-)(\.[A-Za-z0-9-]{1,63})*\.keyexample\.com$
The default value for the Common Name regular expression is:
This requires entry of at least one character in the Common Name field in the enrollment pages.
|
| O (Organization) |
This regular expression requires that the organization name entered in the field be one of “Key Example Inc”, “Key Example” or “Key Example Inc.”:
Copy
^(?:Key Example Inc|Key Example|Key Example, Inc\.)$
The period in the final company name (Key Example, Inc.) needs to be escaped in the regular expression with a slash ("\") but the comma does not.
|
| OU (Organization Unit) |
This regular expression requires that the organizational unit entered in the field be one of these four departments:
Copy
^(?:IT|HR|Accounting|E-Commerce)$
|
| L (City/ Locality) |
This regular expression requires that the city entered in the field be one of these five cities:
Copy
^(?:Boston|Chicago|New York|London|Dallas)$
|
| ST (State/ Province) |
This regular expression requires that the state entered in the field be one of these eight states:
Copy
^(?:Massachusetts|Illinois|New York|Ontario|Texas)$
|
| C (Country) |
This regular expression requires that the country entered in the field be either US or CA:
|
| E (Email) |
This regular expression specifies that the data entered in the field must consist of some number of characters prior to the “@” made up only of lowercase letters, uppercase letters, numbers, periods, underscores, percent signs, apostrophes, plus signs, and/or hyphens followed by exactly “@keyexample.com”:
Copy
^[A-Za-z0-9._%'+-]+@keyexample\.com$
|
| DNS (Subject Alternative Name: DNS Name) |
This regular expression specifies that the data entered in the field must consist of 1 to 63 characters in the first portion of the field made up only of lowercase letters, uppercase letters, numbers, periods, and/or hyphens (but not at the beginning or end of sections or duplicated) followed by exactly either “.keyexample1.com” or “.keyexample2.com”:
Copy
^(?!-)(?!.*--)[A-Za-z0-9-]{1,63}(?<!-)(\.[A-Za-z0-9-]{1,63})*\.(keyexample\.com|keyexample2\.com)$
|
| IPv4 (Subject Alternative Name: IPv4 Address) |
This regular expression specifies that the data entered in the field must be exactly “130.101.” followed by a value between 0 and 255, followed by “.”, followed a value between 0 and 255:
Copy
^130\.101\.(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.(?:[0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
This regular expression specifies only that the IPv4 address is made up of 4 sets of values between 0 and 255 separated by periods:
Copy
^(?:[0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.(?:[0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.(?:[0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.(?:[0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
|
| IPv6 (Subject Alternative Name: IPv6 Address) |
This regular expression specifies that the data entered in the field must be made up of up to eight sets of between one and four numbers and/or uppercase letters separated by colons:
Copy
^([A-F0-9]{1,4}:){1,7}([A-F0-9]{1,4})?(\:\:([A-F0-9]{1,4}:){0,6}[A-F0-9]{1,4})?$
This regular expression optionally matches a shorthand “::” that can replace one or more groups of zero segments, allowing the address to use shorthand notation.
|
| MAIL (Subject Alternative Name: Email) |
This regular expression specifies that the data entered in the field must consist of some number of characters prior to the “@” made up only of lowercase letters, uppercase letters, numbers, periods, underscores, percent signs, apostrophes, plus signs, and/or hyphens followed by exactly “@keyexample.com”:
Copy
^[A-Za-z0-9._%'+-]+@keyexample\.com$
|
| UPN (Subject Alternative Name: User Principal Name) |
This regular expression specifies that the data entered in the field must consist of between 1 and 64 characters prior to the “@” made up only of lowercase letters, uppercase letters, numbers, apostrophes, underscores, spaces, and/or hyphens followed by exactly “@keyexample.com”:
Copy
^[A-Za-z0-9'_ -]{1,64}@keyexample\.com$
|
|
| Error |
A string specifying the error message displayed to the user when the subject part referenced in the CSR or entered for a PFX enrollment does not match the given regular expression.
Note: The error message already includes a leading string with the subject part (for example, “Common Name:” or “Invalid CN provided:” depending on the interface used). Your custom message follows this.
|
| Case Sensitive |
A Boolean that sets the validation for the field to be case-sensitive (True or False). If the subject part does not match the expected case, the value specified by the Error parameter will display. If the CaseSensitive option is disabled, even if the regular expression contains requirements to enforce case, the case requirement will not be enforced. |
|
| RestrictCAs |
A Boolean indicating whether the enrollment pattern should be restricted to use with a specified list of certificate authorities (True or False). If set to True, at least one CA must be configured using the CertificateAuthorities parameter. |
| Template |
An object containing information for the template associated with the enrollment pattern. Show template details.
| Id |
An integer indicating the ID of the template in Keyfactor Command. |
| Template Name |
A string containing the name of the template. For a template created using a Microsoft management tool, this will be the Microsoft template display name. For a template generated for an EJBCA CA, this will be built using a naming scheme of end entity profile name (certificate profile name). This field is populated based on information retrieved from the CA and is not configurable. |
| Common Name |
A string containing the common name (short name) of the template. This name typically does not contain spaces. For a template created using a Microsoft management tool, this will be the Microsoft template name. For a template generated for an EJBCA CA, this will be built using a naming scheme of end entity profile name_certificate profile name. This field is populated based on information retrieved from the CA and is not configurable. |
| Configuration Tenant |
A string indicating the configuration tenant of the template. |
| Requires Approval |
A Boolean indicating whether the template has been configured with the Microsoft CA certificate manager approval option enabled (True or False). |
| Friendly Name |
A string indicating the Keyfactor Command friendly name of the template. Template friendly names, if configured, appear in the dropdowns for PFX enrollment, CSR enrollment, and CSR generation in place of the template names. This can be useful in environments where the template names are long or not very human readable. |
|
| Template Default |
A Boolean indicating whether this enrollment pattern is the default pattern for the associated template (True or False). A certificate template can have only one default enrollment pattern, which is required for the template to be used for enrollment. If no other enrollment pattern for the template exists or is marked as default, this option will automatically be enabled when a new pattern is created.
|
| UseAD Permissions |
A Boolean indicating whether Active Directory permissions should be used for certificate enrollment authorization (True) or whether Keyfactor Command security roles should be used (False). If set to False, at least one value must be provided for AssociatedRoles. |