docs/documentation/platform/pki/applications/enrollment-methods/est.mdx
Use the EST enrollment method to issue and renew certificates for enterprise devices, IoT systems, and secure networks. EST provides strong mutual TLS authentication and is ideal for environments where devices have pre-installed bootstrap certificates.
<Info> EST enrollment is configured on profiles attached to your [Application](/documentation/platform/pki/applications/overview). Product Admins attach [profiles](/documentation/platform/pki/settings/profiles), and Application Admins configure enrollment methods on those profiles. </Info>Infisical's EST service implements RFC 7030 with the following endpoints:
| Endpoint | Purpose |
|---|---|
/cacerts | Get the CA chain for certificate validation |
/simpleenroll | Request a new certificate |
/simplereenroll | Renew an existing certificate |
<Note>
If your devices don't have bootstrap certificates, you can disable bootstrap validation in the EST configuration (less secure).
</Note>
<Note>
For Infisical Cloud, configure devices to trust [Amazon root CA certificates](https://www.amazontrust.com/repository).
</Note>
<Note>
Profiles are attached by Product Admins. If you don't see any profiles, ask your Product Admin to attach one.
</Note>
<Warning>
Disabling bootstrap validation removes a layer of security. Only use this for testing or controlled environments.
</Warning>
- `/cacerts` — retrieve CA certificates
- `/simpleenroll` — initial enrollment
- `/simplereenroll` — certificate renewal
<Info>
The EST endpoint URL is unique to this Application + Profile pair. Certificates requested through these endpoints are associated with this Application and follow the selected profile's policy. EST endpoints use port 8443 and the `.well-known/est` path as defined in RFC 7030.
</Info>
Configure your EST client with the profile ID and passphrase.
<Tabs> <Tab title="Initial Enrollment"> For new devices with a bootstrap certificate:1. Configure the EST server URL: `https://app.infisical.com:8443/.well-known/est/{profile-id}`
2. Set EST username to any value (e.g., `device-001`)
3. Set EST password to your **EST Passphrase**
4. Use the bootstrap/manufacturer certificate for client authentication
5. Generate a CSR and call `/simpleenroll`
```bash
# Example using curl (simplified)
curl --cert bootstrap-cert.pem --key bootstrap-key.pem \
-u "device-001:<EST-passphrase>" \
--data-binary @device.csr \
-H "Content-Type: application/pkcs10" \
"https://app.infisical.com:8443/.well-known/est/{profile-id}/simpleenroll"
```
<Note>
When creating PKCS#12 bundles for client certificates, include only the leaf certificate and private key (not the full chain).
</Note>
1. Use the current EST-issued certificate for client authentication
2. Generate a new CSR
3. Call `/simplereenroll`
```bash
curl --cert current-cert.pem --key current-key.pem \
-u "device-001:<EST-passphrase>" \
--data-binary @device.csr \
-H "Content-Type: application/pkcs10" \
"https://app.infisical.com:8443/.well-known/est/{profile-id}/simplereenroll"
```
```bash
curl "https://app.infisical.com:8443/.well-known/est/{profile-id}/cacerts"
```
Use this chain to validate certificates issued by Infisical.