It is recommended that you install and configure the Certificate Enrollment Policy Web Service using the  
    InstallConfigCEP.ps1 PowerShell script provided by Entrust. This script requires the TLS certificate previously obtained in Issuing TLS certificates for the Certificate Enrollment Policy Web Service.
To install and configure the Certificate Enrollment Policy Web Service using a PowerShell script
- Install a supported version of Microsoft Windows Server (if not already installed), and join it to the Windows domain.
- From Entrust TrustedCare, download the PowerShell scripts for Certificate Enrollment Gateway.
- Extract the PowerShell scripts to a directory on the server.
- PowerShell scripts downloaded from the Internet may be blocked from running. To unblock a PowerShell script:- Right-click the PowerShell script > Properties. 
 A Properties dialog box appears.
- Under the General tab, click Unblock.
 
- Right-click the PowerShell script > Properties. 
- Open an elevated PowerShell window. Select Start > Windows PowerShell, then right-click Windows PowerShell > Run as administrator.
- Navigate to the directory where you extracted the PowerShell scripts.
- Enter the following command to run the - InstallConfigCEP.ps1script:- .\InstallConfigCEP.ps1- The script validates the pre-requisites, and then installs any required Windows packages or features. For example: - The PowerShell script was tested on specific versions of PowerShell. When validating the prerequisites, the PowerShell version my be listed as Unverified, an "Unverified" version of PowerShell indicates that the script was not tested on that version of PowerShell. You can still use the script on an "Unverified" version of PowerShell. - Validating pre-requisites:- Script-Mode: Windows- Script Version:- 1.5- .- 1.19- - Member of Domain: Verified- - Domain Admins privileges: Verified- - Enterprise Admins privileges: Verified- - Windows Version: Verified (Microsoft Windows NT- 10.0- .- 17763.0- )- - PowerShell Version: Verified (- 5.1- .- 17763.2931- )- ------------------------------------------------------------- Installing ADCS-Enroll-Web-Pol- ADCS-Enroll-Web-Pol installed- Checking- for- Web-Mgmt-Console- Installing Web-Mgmt-Console- Checking- for- Web-Mgmt-Compat- Installing Web-Mgmt-Compat
- The script prompts you to select the authentication type: - CEP Authentication Setting- Choices :- Name Value- ---- ------ UserName- 4- Kerberos- 2- Select Authentication Type [Default:- 2- ]:- To select user name and password authentication, enter 4. 
 User name and password authentication is the only authentication mode supported by non-domain enrollment endpoints.
- To select Kerberos (Windows integrated) authentication, enter 2.
 
- The Certificate Enrollment Policy Web Service requires a certificate. The script prompts you to select a certificate option: - A CEP webserver certificate has not been selected.- Choose from the following Options:- [S] Select Existing Cert [N] Supply New Certificate [C] Continue with selected Certificate [E] Exit [?] Help- (- default- is- "S"- ):- To select an existing certificate, enter - S.
- To supply a new certificate, enter N.
 
- If you chose to select an existing certificate: - The script will search the server for existing TLS Web certificates. 
 The script will first search for a certificate assigned to the Default Web Site in Microsoft IIS. If no certificate is assigned to the Default Web Site, the script will then search the certificate store of the local computer for valid (not expired) certificates with the following:- a subject name with the fully qualified domain name (FQDN) of the host
- a private key
- an extended key usage of Server Authentication
 
- If the script finds a valid certificate, it asks if you want to use the certificate. For example: - Searching- for- Existing Certificate(s)- A certificate was found.- Subject : CN=cepusername.example.com- Issuer : CN=cepusername.example.com- KeyUsage : DataEncipherment, KeyEncipherment- EKU List : Server Authentication (- 1.3- .- 6.1- .- 5.5- .- 7.3- .- 1- )- DNS SAN : cepusername.example.com- Serial Number : 37F2440E97A3AE8046AA54BD7227FAFC- Thumbprint : 50C09642942060AE1A58C5C3006F2455B57326BC- Not After :- 09- /- 05- /- 2023- 20- :- 00- :- 00- PolicyId :- Continue with above Certificate? (y/n):- To continue with the certificate found by the script, enter y.
- To go back and provide a different certificate, enter n.
 
- To continue with the certificate found by the script, enter 
- If the script finds multiple valid certificates, it will prompt you to select a certificate. For example: - Searching- for- Existing Certificate(s)- More than one certificate with FQDN cepusername.example.com has been found.- Certificate Index :- 1- ------------------ Subject : CN=cepusername.example.com- Issuer : CN=cepusername.example.com- KeyUsage : DataEncipherment, KeyEncipherment- EKU List : Server Authentication (- 1.3- .- 6.1- .- 5.5- .- 7.3- .- 1- )- DNS SAN : cepusername.example.com- Serial Number : 1862326CAB4507B1411EA7624F6DDDBA- Thumbprint : EEC5FF53EA64B1B56B8731A7E73C058257A4DC0E- Not After :- 09- /- 06- /- 2023- 20- :- 00- :- 00- PolicyId :- Certificate Index :- 2- ------------------ Subject : CN=cepusername.example.com- Issuer : CN=cepusername.example.com- KeyUsage : DataEncipherment, KeyEncipherment- EKU List : Server Authentication (- 1.3- .- 6.1- .- 5.5- .- 7.3- .- 1- )- DNS SAN : cepusername.example.com- Serial Number : 37F2440E97A3AE8046AA54BD7227FAFC- Thumbprint : 50C09642942060AE1A58C5C3006F2455B57326BC- Not After :- 09- /- 05- /- 2023- 20- :- 00- :- 00- PolicyId :- Please select the Index to select a Certificate.- 0- to- return- to previous menu.:- To select one of the existing certificates, enter the index number associated with the certificate. 
- To go back and provide a different certificate, enter 0.
 
- To select one of the existing certificates, enter the index number associated with the certificate. 
 
- If you chose to supply a certificate:- The script prompts you to provide the certificate: - Please enter full path to certificate file including the filename :- Enter the full path and file name of the certificate, in PFX or P12 format. 
- When prompted, enter the password of the certificate file.
- If the supplied certificate has a subject that does not match the fully qualified domain name (FQDN) of the host, the script displays a warning and asks if you want to continue with the certificate. For example: - The supplied certificate has a subject that does not match the FQDN of- this- host.- Host FQDN : cepusername.example.com- Supplied certificate details:- ------------------------------ Subject : CN=CEP Web Service, CN=CA Entry, O=Example, C=US- Issuer : CN=CA Entry, O=Example, C=US- KeyUsage : KeyEncipherment, DigitalSignature- EKU List : Server Authentication (- 1.3- .- 6.1- .- 5.5- .- 7.3- .- 1- ) Client Authentication (- 1.3- .- 6.1- .- 5.5- .- 7.3- .- 2- )- DNS SAN : cepusername.example.com- Serial Number : 6AFEE3C47A569F95A9C5622D679B42C1- Thumbprint : 2E6601A98E2ADBD4EBE5DF6D8C3A514CD7660BAD- Not After :- 09- /- 06- /- 2025- 13- :- 55- :- 27- PolicyId :- Continue with above Certificate? (y/n):- To continue with the certificate, enter y.
- To go back and provide a different certificate, enter n.
 
- To continue with the certificate, enter 
 
- After providing a certificate, the script displays information about the certificate, and prompts you to select a certificate option: - Selected Webserver Certificate- for- CEP:- Subject : CN=cepusername.example.com- Issuer : CN=cepusername.example.com- KeyUsage : DataEncipherment, KeyEncipherment- EKU List : Server Authentication (- 1.3- .- 6.1- .- 5.5- .- 7.3- .- 1- )- DNS SAN : cepusername.example.com- Serial Number : 1862326CAB4507B1411EA7624F6DDDBA- Thumbprint : EEC5FF53EA64B1B56B8731A7E73C058257A4DC0E- Not After :- 09- /- 06- /- 2023- 20- :- 00- :- 00- PolicyId :- Choose from the following Options:- [S] Select Existing Cert [N] Supply New Certificate [C] Continue with selected Certificate [E] Exit [?] Help- (- default- is- "S"- ):- To go back and select a different existing certificate, enter S.
- To go back and supply and different certificate, enter N.
- To continue with the selected certificate, enter C.
 
- To go back and select a different existing certificate, enter 
- After providing a certificate, the script prompts you to provide a Windows user to configure the Certificate Enrollment Policy. The user must have Domain Admin and Enterprise Admin permissions. - Configuring CEP Service- Please enter the user information to be able to configure CEP- The user must have Domain Admin and Enterprise Admin rights- cmdlet Get-Credential at command pipeline position 1- Supply values for the following parameters:- Credential
 Enter the user name and password credentials of the Windows user.
- The script installs the Certificate Enrollment Policy Web Service, then prompts you to provide a friendly name for the service: - Installing AdcsEnrollmentPolicyWebService- Authentication : UserName- SSLThumbprint : DE45D685512D0F58A4CA7A60A485D8FD03723276- Install Complete- Please enter the 'Friendly Name' for the CEP Service :- Enter a friendly name for the Certificate Enrollment Policy Web Service. The friendly name must be unique for the domain. The friendly name will appear in some interfaces. For example: - WSTEP UserName CEP.
- To properly function with an existing Microsoft CA, the Certificate Enrollment Policy Web Service requires a UUID (Universally Unique Identifier). The script asks whether you want to generate a UUID or supply an external UUID. - All instances of the CEP Service must use the same UUID.- You must generate the UUID for the first instance, then supply the UUID for all subsequent instances.- Generate or supply a UUID for the CEP Service?- Generate a UUID 1- Supply a UUID 2- Enter Selection ( 1 | 2 ) :- If you are installing the initial instance of the Certificate Enrollment Policy Web Service and you want the script to generate the UUID, enter 1. For example: - Generating Unique UUID- UUID 6e42b254-0302-4428-9bc5-c34d11c3b4b6- WARNING: Use the same UUID on all the CEP instances for Entrust WSETP.- Selected UUID : 6e42b254-0302-4428-9bc5-c34d11c3b4b6- Record the generated UUID. All instances of the Certificate Enrollment Policy Web Service must use the same UUID for Entrust WSTEP enrollment. 
- If you are installing subsequent instances of the Certificate Enrollment Policy Web Service and you want to supply the UUID generated in the first instance, enter 2. For example: - Enter a unique valid UUID : 1435d47b-a043-4b39-9420-0ff067344e4e- Selected UUID : 1435d47b-a043-4b39-9420-0ff067344e4e- When using Kerberos authentication, you can obtain the UUID of the installed Certificate Enrollment Policy Web Service by entering the following PowerShell command: - (Get-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST/Default Web Site/ADPolicyProvider_CEP_Kerberos" -filter "appSettings/add[@key='ID']" -name "value").value- When using user name and password authentication, you can obtain the UUID of the installed Certificate Enrollment Policy Web Service by entering the following PowerShell command. - (Get-WebConfigurationProperty -pspath "MACHINE/WEBROOT/APPHOST/Default Web Site/ADPolicyProvider_CEP_UsernamePassword" -filter "appSettings/add[@key='ID']" -name "value").value
 
- The script asks if you want to continue with the provided UUID: - Continue with above UUID? (y/n):- To continue with the provided UUID, enter y.
- To go back and change the UUID, enter n.
 
- To continue with the provided UUID, enter 
- The script asks if you want to restart Microsoft IIS: - Recommended: Restart IIS- Restart IIS now ? (y/n):- It is recommend that you restart Microsoft IIS to ensure the changes are applied. - To have the script restart Microsoft IIS, enter y.
- To not restart Microsoft IIS, enter n.
 It is recommended that you manually restart Microsoft IIS to ensure that the changes are applied.
 
- To have the script restart Microsoft IIS, enter 
