Why client certificates matter more and more
The point is simple: API keys and tokens are not identities, they are shared secrets. They work until they end up in the wrong place: a poorly copied configuration file, incorrectly executed exchange procedures, overly verbose logs, a public repository “for testing”. And once a key is stolen, the attacker becomes indistinguishable from the legitimate client.
With client certificates, the story changes. Every application, container, workload, or API gateway has a strong identity, anchored to a private key. We are no longer saying “I know the password”, but “I am this entity and I can prove it”. Moreover, this identity is:
- non-clonable (without the private key you can do nothing);
- traceable and auditable (trust chain, attributes, revocation);
- governable via policy (who can call what, based on CN/SAN/EKU and CA).
In other words, mTLS is the natural way to implement zero trust between machines.
Naturally, the client certificate performs best when it is part of proper identity and key management. Its strength is based on protecting the private key: in machine-to-machine environments, storing it in a secure keystore, vault, or HSM raises authentication to a truly robust level, drastically reducing the risk of misuse even in the presence of misconfigurations or overly broad permissions. In practice, with the right tools, the client certificate becomes one of the most reliable defenses available.
Likewise, it is true that a certificate expires—but this is not a limitation, it is a security and control mechanism. When rotation is managed in a centralized and automated way, expiration stops being an operational burden and becomes an opportunity: it ensures continuity, regularly updates keys, and keeps the infrastructure current and governed. Of course, you can also choose longer durations (we offer certificates up to 3 years) to further reduce effort, but it is automation that closes the loop and makes the certificate lifecycle finally simple, secure, and predictable.
Moreover, a certificate expires, and expiration is notoriously an operational hassle: if not managed centrally and automatically, it can disrupt critical services at the worst possible time. You can always opt for long-lived certificates (we offer certificates with durations up to 3 years), but automation is what truly solves the issue.
That said, as an authentication method it remains among the most robust: a stolen private key is an isolated and revocable incident, whereas a compromised API token is infinitely replicable and indistinguishable from the original. In other words: the risk exists, but it is manageable—and above all, it does not force you to blindly trust static secrets scattered across your infrastructure.