Skip to main content
Issue and manage certificates using Microsoft Active Directory Certificate Services (ADCS) for enterprise-grade certificate management integrated with your existing Windows infrastructure.

Prerequisites

Before setting up ADCS integration, ensure you have:
  • Microsoft Active Directory Certificate Services (ADCS) server running and accessible
  • Domain administrator account with certificate management permissions
  • ADCS web enrollment enabled on your server
  • Network connectivity from Infisical to the ADCS server
  • IP whitelisting: Your ADCS server must allow connections from Infisical’s IP addresses
    • For Infisical Cloud instances, see Networking Configuration for the list of IPs to whitelist
    • For self-hosted instances, whitelist your Infisical server’s IP address
  • Azure ADCS app connection configured (see Azure ADCS Connection)
Infisical supports two ways to use AD CS: as an External CA for direct certificate issuance, or to sign internal intermediate CAs so you can build an Infisical-managed CA hierarchy backed by your AD CS server. With the intermediate CA approach, Infisical handles CSR submission and signing automatically — no manual steps needed during installation or renewal.
This section walks you through the complete end-to-end process of setting up Azure ADCS integration and issuing your first certificate.
1

Navigate to External Certificate Authorities

In Certificate Manager, go to Settings → Certificate Authorities and scroll to the External Certificate Authorities section.
2

Create New Azure ADCS Certificate Authority

Click Create CA and configure:
  • Type: Choose Active Directory Certificate Services (AD CS)
  • Name: Friendly name for this CA (e.g., “Production ADCS CA”)
  • App Connection: Choose your ADCS connection from the dropdown
3

Create a Certificate Profile

Go to Certificate Manager → Settings → Certificate Profiles and create a new profile:
  • Certificate Authority: Select your ADCS CA
  • Certificate Policy: Select a policy
  • Certificate Template: Select from dynamically loaded ADCS templates
  • Configure default certificate attributes (TTL, key algorithm, etc.)
4

Create an Application and Configure Enrollment

Go to Certificate Manager → Applications and create an Application:
  • Attach the profile you created
  • Configure an enrollment method (API, ACME, EST, or SCEP)
  • Assign team members who need to issue certificates
5

Issue a Certificate

In your Application, go to the Certificate Requests tab and click Request:
  • Select the profile linked to your ADCS CA
  • Fill in the certificate details (common name, SANs, TTL)
  • Click Submit
The certificate is submitted to ADCS and issued using your configured template.

Certificate Templates

Infisical automatically retrieves available certificate templates from your ADCS server, ensuring you can only select templates that are properly configured and accessible. The system dynamically discovers templates during the certificate authority setup and certificate issuance process.

Common Template Types

ADCS templates you might see include:
  • Web Server: For SSL/TLS certificates with server authentication
  • Computer: For machine authentication certificates
  • User: For client authentication certificates
  • Basic EFS: For Encrypting File System certificates
  • EFS Recovery Agent: For EFS data recovery
  • Administrator: For administrative certificates
  • Subordinate Certification Authority: For issuing CA certificates

Template Requirements

Ensure your ADCS templates are configured with:
  • Enroll permissions for your connection account
  • Auto-enroll permissions if using automated workflows
  • Subject name requirements matching your certificate requests
  • Key usage extensions appropriate for your use case
Dynamic Template Discovery: Infisical queries your ADCS server in real-time to populate available templates. Only templates you have permission to use will be displayed during certificate issuance.

Certificate Issuance Limitations

Immediate Issuance Only

Manual Approval Not Supported: Infisical currently supports only immediate certificate issuance. Certificates that require manual approval or are held by ADCS policies cannot be issued through Infisical yet.
For successful certificate issuance, ensure your ADCS templates and policies are configured to:
  • Auto-approve certificate requests without manual intervention
  • Not require administrator approval for the templates you plan to use
  • Allow the connection account to request and receive certificates immediately

What Happens with Manual Approval

If a certificate request requires manual approval:
  1. The request will be submitted to ADCS successfully
  2. Infisical will attempt to retrieve the certificate with exponential backoff (up to 5 retries over ~1 minute)
  3. If the certificate is not approved within this timeframe, the request will fail
  4. No background polling: Currently, Infisical does not check for certificates that might be approved hours or days later
Future Enhancement: Background polling for delayed certificate approvals is planned for future releases.

Certificate Revocation

Certificate revocation is not supported by the Azure ADCS connector due to security and complexity considerations.

Advanced Configuration

Custom Validity Periods

Enable custom certificate validity periods on your ADCS server:
# Run on ADCS server as Administrator
certutil -setreg policy\EditFlags +EDITF_ATTRIBUTEENDDATE
net stop certsvc
net start certsvc
This allows Infisical to control certificate expiration dates directly.

Troubleshooting

  • Verify ADCS template permissions for your connection account
  • Check template subject name requirements
  • Ensure template allows the requested key algorithm and size
  • Verify the template exists on your ADCS server and is published
  • Check that your connection account has enrollment permissions
  • Templates are dynamically loaded — refresh the form if they don’t appear
Infisical only supports immediate issuance. If your request times out:
  • Check if your ADCS template requires manual approval
  • Verify the template is configured for auto-approval
  • Review ADCS server policies that might be holding requests
  • Verify your ADCS server’s firewall allows connections from Infisical
  • Infisical Cloud: Whitelist Infisical’s IPs (see Networking Configuration)
  • Self-hosted: Whitelist your Infisical server’s IP on the ADCS server
  • Test HTTPS connectivity to the ADCS web enrollment endpoint
  • Verify ADCS connection credentials
  • Check domain account permissions
  • Ensure network connectivity to the ADCS server
Common errors: UNABLE_TO_VERIFY_LEAF_SIGNATURE, SELF_SIGNED_CERT_IN_CHAIN, CERT_HAS_EXPIREDFor ADCS servers with self-signed or private certificates, disable Reject Unauthorized in the SSL tab of your Azure ADCS app connection, or provide the CA certificate in PEM format.