Certificate Authority Service in Google Cloud: Building Trust Between Machines
A friendly, in-depth guide to running your own private certificate authority in Google Cloud: how digital certificates work, how CA pools, root and subordinate authorities, templates, tiers and revocation fit together, and how to design, secure and pay for a private trust system.
When you walk into a bank, you show an identity card. The clerk does not know you, but they trust the government office that printed the card, and the card carries features that are hard to forge. Computers meet strangers all the time too. A mobile app connects to a server, one service calls another, a sensor sends data to a platform. Each side needs to be sure who is on the other end, and each needs a way to keep the conversation private. Digital certificates are the identity cards of the machine world, and a certificate authority is the office that prints and vouches for them. Certificate Authority Service, called CAS for short, lets you run such an office inside Google Cloud, without buying hardware, building a vault or writing your own software.
1What Is Certificate Authority Service?
CAS is a managed service for creating and running private certificate authorities that issue digital certificates to your own services, devices and people.
A certificate authority, usually shortened to CA, is a trusted organization that issues digital certificates. A certificate binds a name, such as a server’s address or a device’s identity, to a cryptographic key, and the CA signs it so that others can check that the binding is genuine. Public CAs issue certificates for websites on the open internet. Private CAs issue certificates that are trusted only inside an organization, for internal services, employee devices, factory equipment and similar uses.
Running a private CA yourself is hard. You must protect the most sensitive keys in your company, write procedures for issuing and revoking certificates, publish lists of revoked certificates, keep records, and survive audits. Certificate Authority Service takes on much of that work. Google operates the infrastructure, stores the signing keys in protected systems, handles scale, and gives you a clean interface and API to issue and manage certificates. You keep control of policy: who can request what, with which names, for how long.
CAS is like a company’s own passport office. It decides who deserves an identity card, prints cards with a special seal that the company’s doors recognize, keeps records of every card issued, and cancels cards that are lost or stolen. The company does not need to build a printing factory, because the service provides it.
What CAS is not
CAS is a private CA service. It is not a public CA that issues certificates every web browser trusts out of the box. For public websites, Google Cloud offers other certificate management capabilities, and it is wise to check the current documentation to choose correctly. CAS also does not decide which of your services use certificates. It provides the identities, and your applications, platforms and tools must be configured to ask for and use them.
Google adds options and adjusts prices over time. Use this guide to understand the ideas, and confirm exact capabilities, limits and prices on the official pages before making decisions.
2Why Machines Need Identity
Modern systems have far more machine conversations than human ones, and each needs trust.
A typical application today is not one program but dozens of small services calling each other across a network. Add mobile apps, partner systems, scheduled jobs, containers that live for minutes and devices in the field. Every connection raises two questions. Am I talking to the real thing, and can anyone else listen in? Without good answers, an attacker who reaches the network can pretend to be a trusted service, read sensitive traffic or give false orders.
Authentication
Proving that a service or device is who it claims to be, not an impostor.
Confidentiality
Encrypting traffic so that eavesdroppers see only scrambled data.
Integrity
Making sure messages are not changed on the way.
Scale
Issuing identities automatically for thousands of short-lived workloads, not by hand.
Revocation
Cancelling an identity quickly when a device is stolen or a key leaks.
Evidence
Records of who issued what, for audits and investigations.
Imagine a huge office tower where everyone enters by saying their name at the door. A visitor can claim to be the chief executive and be believed. Identity cards checked by guards close that gap, and certificates are those cards for software and devices.
Treating everything inside the network as trusted is a dangerous habit. Once an attacker is inside, trust without verification lets them move freely.
3Core Concepts and Vocabulary
A short glossary makes the rest of the guide and the documentation far easier to read.
Digital Certificate
A signed electronic document that ties an identity, such as a name, to a public key.
Certificate Authority (CA)
The trusted party that signs certificates and vouches for the identities in them.
Root CA
The top of a trust chain, signed by itself, and trusted directly by those who use it.
Subordinate CA
A CA whose certificate is signed by another CA, so it inherits trust from above.
Chain of Trust
The path from a certificate up through its issuers to a root that the checker already trusts.
CA Pool
A CAS container that holds CAs and the certificates they issue, and carries shared policy.
Certificate Template
A reusable recipe that defines what a certain kind of certificate may contain.
CSR
Certificate signing request, the formal request sent to a CA asking it to sign a certificate for a key.
CRL
Certificate revocation list, a published list of certificates that are no longer to be trusted.
mTLS
Mutual TLS, where both sides present certificates and verify each other.
X.509
The standard format that most digital certificates follow.
Tier
A CAS setting, chosen per pool, that trades throughput and cost against tracking and revocation.
The root CA is the national government, a subordinate CA is a regional office it authorizes, and a certificate is an identity card issued by that regional office. A shop clerk who trusts the national government will accept cards issued by the regional office, because the authorization chain leads back to it.
A certificate is public information that can be shared freely. The private key that matches it must be kept secret by its owner. The certificate says who you are, and the private key proves you really are that party.
4Certificates and the Chain of Trust
The whole system rests on one idea: trust a few roots, and extend that trust through signatures.
A certificate contains the name of its owner, the owner’s public key, a validity period, the name of the issuing CA, and a signature made by the CA with its private key. Anyone who has the CA’s public key can check the signature. If it is valid, they know the CA vouched for this exact name and key, and that nobody has altered the certificate since.
The question then becomes: why trust the CA? The answer is the chain. A server’s certificate is signed by a subordinate CA. The subordinate CA’s own certificate is signed by a higher authority, and so on up to a root CA. The root signs its own certificate, and a client trusts it because the root’s certificate was installed in the client in advance, by the operating system, the company or the platform. Verification walks up the chain until it reaches a root the client already trusts.
flowchart TD
R["Root CA (self-signed, installed as trusted)"] --> S1["Subordinate CA: Production"]
R --> S2["Subordinate CA: Devices"]
S1 --> C1["Certificate: payments service"]
S1 --> C2["Certificate: orders service"]
S2 --> C3["Certificate: sensor 1047"]
S2 --> C4["Certificate: sensor 1048"]
What a checker verifies
Signature
Is the certificate genuinely signed by its issuer, and unchanged?
Chain
Does the path of issuers lead to a root that I already trust?
Validity Period
Is the certificate within its start and end dates?
Name and Purpose
Does the name match who I intended to talk to, and is the certificate allowed for this use?
Revocation Status
Has the certificate been cancelled? This is checked using lists published by the CA.
A university diploma is trusted because the university is accredited, and the accreditation body is recognized by the government. An employer checks the seal, the name, the date and the accreditation chain. A certificate check is the same series of questions, done in milliseconds.
For a private CA, you must distribute the root certificate to every system that should trust it. Plan how this will be done for servers, containers, laptops and devices.
5How TLS and Mutual TLS Use Certificates
The most common use of certificates is to secure connections between systems.
Transport Layer Security, known as TLS, is the protocol that protects most internet traffic. When a client connects to a server, the server presents its certificate. The client checks the chain, name and validity, and if everything is correct, the two sides agree on temporary keys and encrypt the conversation. This is the padlock you see in a web browser.
In ordinary TLS, only the server proves its identity. In mutual TLS, written mTLS, the client also presents a certificate, and the server verifies it. This lets services know exactly which other service or device is calling, with strong cryptographic proof, instead of relying on network location or shared passwords.
sequenceDiagram
participant C as Client service
participant S as Server service
C->>S: Hello, here are the encryption options I support
S-->>C: Hello, here is my certificate
C->>C: Check chain, name, dates and revocation
S->>C: Please show your certificate too
C-->>S: Here is my certificate
S->>S: Check chain, name, dates and revocation
C->>S: Both sides agree on session keys
Note over C,S: Traffic is now encrypted, and both sides know who the other is
| Aspect | Standard TLS | Mutual TLS |
|---|---|---|
| Server proves identity | Yes | Yes |
| Client proves identity | No, usually through a password or token instead | Yes, using its own certificate |
| Typical use | Websites and public APIs | Service-to-service traffic, devices, partner links |
| Certificates needed | Server side only | Both sides, which means many more certificates |
Normal TLS is like a customer checking the bank’s official sign before entering. Mutual TLS is like both the customer and the bank staff showing identity cards to each other at the counter before any business begins.
If every service and every container needs a certificate, you will issue enormous numbers of them. Automation and short lifetimes are not luxuries, they are requirements.
6Public CAs, Private CAs and Where CAS Fits
Choosing the right kind of CA depends on who must trust your certificates.
| Aspect | Public CA | Private CA such as CAS |
|---|---|---|
| Who trusts it | Everyone’s browsers and devices by default | Only systems you configure to trust your root |
| Typical use | Public websites | Internal services, devices, employee access, private APIs |
| Control over policy | Set by public rules and the CA | Set by you, including names, lifetimes and extensions |
| Internal names allowed | Generally no | Yes |
| Volume and automation | Subject to the CA’s limits | Designed for your own scale and automation |
| Effort for you | Low | You must distribute trust and manage policy |
Many organizations use both. Public certificates secure the front door that customers use, while a private CA secures the thousands of internal doors. Using a public CA for internal traffic is awkward, since it may refuse internal names and gives you no control over policy. Using a private CA for public websites fails because browsers will not trust it.
A public CA is like a national passport, accepted at every border. A private CA is like an employee badge, accepted at your own buildings and nowhere else. You need both, but you would never use a badge to cross a border.
Installing a private root on customers’ machines is invasive and risky. Keep private CAs for systems you control.
7CA Pools: The Main Container
In CAS, you request certificates from a pool, not from an individual CA.
According to Google’s documentation, a CA pool is the primary container for CAs and the certificates they issue. Settings such as access conditions and issuance policies are applied at the pool level. Issuance goes through the pool, which spreads requests across the CAs inside it. This arrangement makes rotation smooth: you can add a new CA to a pool, let it share the work, and later retire the old one, while your applications keep asking the same pool for certificates.
Single Entry Point
Applications and tools address the pool, so they need no change when the CAs behind it change.
Shared Policy
Issuance rules and access conditions apply to every CA inside, keeping behavior consistent.
Load Spreading
Requests are distributed across the pool’s CAs, helping with throughput and availability.
Tier Setting
The tier is chosen per pool, and every CA in the pool shares the same tier.
Why pools make life easier
Add a New CA
Create a replacement CA in the existing pool before the old one expires.
Share the Work
Both CAs issue certificates for a period, so there is no cliff edge.
Retire the Old CA
Stop it from issuing new certificates, while existing certificates remain valid until they expire.
A pool is like a front desk with several clerks behind it. Customers always go to the same desk, and it hands work to whichever clerk is available. When a clerk retires, a new one joins, and customers notice nothing.
Group CAs that should follow the same rules and the same tier into one pool, and use separate pools when policy, audience or tier differ.
8Root CAs and Subordinate CAs
A good private PKI is a small hierarchy, with a protected root at the top and working CAs below.
A root CA is self-signed and sits at the top of the chain. Because everything below depends on it, the root is the most valuable asset in the system. If it is compromised, every certificate issued under it is in doubt. For this reason, best practice keeps the root rarely used and heavily protected, and lets subordinate CAs do the daily work of issuing certificates.
Subordinate CAs are signed by another CA. In CAS, according to Google’s documentation, a subordinate CA can be signed by another CA created in CAS or by an external CA. In the external case, CAS produces a certificate signing request, you have your external CA sign it, and you activate the subordinate by uploading the signed certificate chain in PEM format using the command line or the console.
| Aspect | Root CA | Subordinate CA |
|---|---|---|
| Signed by | Itself | A root or another subordinate, in CAS or outside |
| Daily use | Rare, mainly to sign subordinate CAs | Issues certificates to services, devices and people |
| Exposure | Should be minimal and tightly controlled | Higher, since it is in regular use |
| If compromised | Whole PKI must be rebuilt | Only that branch must be replaced or revoked |
| Lifetime | Long | Shorter than the root |
The root CA is the national mint’s master die, locked deep in a vault and used only to create the working dies. The subordinate CAs are those working dies that press the coins daily. If a working die is stolen, you replace it. If the master is stolen, the whole currency is in trouble.
Using the root for everyday certificates multiplies its exposure. Keep it for signing subordinate CAs only, and protect it accordingly.
9Designing the CA Hierarchy
The shape of your hierarchy is hard to change later, so it deserves a sketch before any button is pressed.
The simplest hierarchy is a root and one subordinate. A more common arrangement for medium and large organizations is a root, a layer of intermediate CAs for broad regions or business areas, and issuing CAs below them that serve specific purposes. More layers give finer isolation and containment, but add complexity and longer chains to verify.
flowchart TD
R["Root CA (Enterprise tier, rarely used)"] --> I1["Intermediate: Internal services"]
R --> I2["Intermediate: Devices"]
I1 --> P1["Pool: Long-lived server certificates (Enterprise)"]
I1 --> P2["Pool: Short-lived workload certificates (DevOps)"]
I2 --> P3["Pool: Factory devices (Enterprise)"]
P1 --> E1["Server certificates"]
P2 --> E2["Container and job certificates"]
P3 --> E3["Device certificates"]
Questions that shape the design
Who Needs Isolation?
If a production branch is compromised, should development certificates be unaffected? Separate branches provide that.
What Lifetimes Are Needed?
Short-lived workload certificates and long-lived device certificates call for different tiers and pools.
Who Administers What?
Different teams may need control over different branches without seeing the others.
Where Does Data Live?
Location rules may require CAs in particular regions.
How Will Trust Be Distributed?
A root that is hard to change must be right from the start, since every client trusts it.
Is There an Existing CA?
You may chain beneath a corporate root, so your cloud CAs fit into existing trust.
Designing the hierarchy is like planning a company’s authority structure: head office, regional offices, local branches. Too flat and every problem escalates to the top. Too deep and nobody can follow the paperwork.
Add layers when you need isolation or delegation. Do not add layers for neatness alone, because every layer is another thing to secure and rotate.
10The Two Tiers: DevOps and Enterprise
The tier is the most important choice you make for a pool, and it decides what the pool can and cannot do.
| Aspect | DevOps Tier | Enterprise Tier |
|---|---|---|
| Throughput | Higher, built for high-volume issuance | Lower |
| Certificates tracked in the CA database | No | Yes |
| Revocation | Not possible | Supported |
| Signing keys | Google-owned and Google-managed only | Customer-managed Cloud KMS keys, or Google-owned and managed |
| Typical fit | Short-lived, high-volume certificates | Long-lived certificates and CAs that need revocation |
| Price | Lower monthly CA fee and per-certificate fee | Higher monthly CA fee and per-certificate fee |
Google’s best practices say that the DevOps tier should be used only for short-lived certificates, such as those for microservices, containers, session certificates and non-persistent virtual machines. The Enterprise tier is the usual choice for pools that issue certificates to other CAs and to long-lived end entities. A single PKI can mix both tiers in different pools.
DevOps Tier: Container Fleet
A cluster launches thousands of containers per hour, each getting a certificate valid for hours. If one container misbehaves, it is simply stopped and its certificate expires soon after. Tracking and revoking each one would be wasted effort.
Enterprise Tier: Factory Devices
Machines are installed in the field and may run for years. If one is stolen, the company needs to revoke its certificate at once. Tracking and revocation are essential.
DevOps tier is like day passes handed out at a busy festival gate: fast, cheap, expiring the same day, with no record of each one. Enterprise tier is like employee badges: slower to issue, registered in a database, and cancellable on the spot.
Every CA in a pool shares the pool’s tier. Think carefully before creating a pool, since you cannot make a DevOps pool revoke certificates later.
11Choosing the Right Tier
A short decision path will keep you from the two most common mistakes: overpaying and under-protecting.
flowchart TD
A["What will this pool issue?"] --> B{"Other CAs or long-lived certificates?"}
B -->|"Yes"| E["Enterprise tier"]
B -->|"No"| C{"Do you ever need to revoke individual certificates?"}
C -->|"Yes"| E
C -->|"No"| D{"Need customer-managed signing keys?"}
D -->|"Yes"| E
D -->|"No"| F{"Very high volume of short-lived certificates?"}
F -->|"Yes"| G["DevOps tier"]
F -->|"No"| H["Either; consider cost and growth"]
Rules of thumb
Roots and Intermediates Use Enterprise
CAs that sign other CAs should be tracked, protected and revocable.
Short-Lived Workloads Use DevOps
If certificates last hours and workloads are disposable, DevOps gives speed and lower cost.
People and Long-Lived Devices Use Enterprise
Anything that lives long enough to be lost or stolen needs revocation.
Regulated Key Control Needs Enterprise
If rules demand customer-managed signing keys, the Enterprise tier is the supported route.
Choosing a tier is like choosing between a temporary visitor sticker and a registered ID badge. If the visit lasts an afternoon, a sticker is enough. For a person who will be around for years, the badge is registered so it can be cancelled.
A certificate that expires in hours is its own revocation. This is why very short lifetimes pair well with the DevOps tier.
12Certificate Templates
A template turns a certificate request into a controlled, repeatable recipe.
A certificate template is a top-level resource that defines a specific issuance scenario. According to Google’s documentation, it holds preconfigured X.509 extensions, such as key usage and path length, which certificates issued from the template inherit. It controls which extensions in a request are kept or ignored, and it can define identity constraints to limit the identities a certificate may carry. A template can be used with one or more pools.
Web Server Template
Allows server authentication use only, with names restricted to the company’s internal domain.
Client Template
Allows client authentication only, for services or users that connect to others.
Device Template
Fixes the fields that identify a device, so each device’s certificate has a predictable shape.
Subordinate CA Template
Allows issuing certificates to CAs with a limited path length, so deeper chains are not possible.
Why templates matter
Without templates, every requester decides the contents of their own certificate, which invites mistakes and abuse. With templates, a security team designs the allowed shapes once. Requesters pick a template and supply only what the template allows, such as the name. The template overrides anything else they try to add. Combined with access conditions on the pool, templates also let different users have different powers on the same pool: a web team may use the server template, while a device team uses the device template.
A template is a pre-printed form. The applicant fills in only the name field. Boxes such as department, access level and expiry are already fixed by the office, so nobody can write “director” in the wrong box.
Choose names like “internal-web-server” or “factory-device”, so people pick the right template without asking for help.
13Issuance Policies and Access Conditions
Policy decides what a pool may issue, and access conditions decide who may ask.
The documentation describes two layers of control. At the coarse level, an issuance policy on a pool states which kinds of certificates its CAs are allowed to issue. For example, a pool can be limited to client authentication certificates and forbidden from issuing CA certificates. At the fine level, templates combined with Identity and Access Management conditions control which operations each user can perform. This allows one pool to serve several teams safely.
Pool-Wide Baseline
Set rules that apply to every certificate from the pool, such as allowed algorithms and forbidden extensions.
Template Selection
Requesters choose from approved templates, each limiting what the certificate may contain.
Access Conditions
Permissions say which people or services may use which templates, and under which conditions.
Identity Constraints
Limits on names ensure that a team can only request certificates for names it owns.
Benefits of Strong Policy
- Prevents mis-issued certificates
- Limits the damage if a requester is compromised
- Makes audits simple, since the rules are written down
- Lets teams self-serve within safe limits
Costs of Strong Policy
- Rules need design effort up front
- Too-strict rules cause failed requests and frustration
- Policies need regular review as needs change
- Testing is needed before applying to production pools
The pool policy is the building’s rule that only staff badges and visitor passes can be issued, never master keys. Templates are the specific badge designs, and access conditions are the list of who may order each design.
Try new policies in a test pool first. A mistaken rule can block all issuance, which breaks every system that renews certificates.
14Protecting CA Signing Keys with Cloud KMS and HSM
A CA is only as trustworthy as the protection of its private signing key.
CAS uses Cloud KMS to generate, store and use CA signing keys. A key version signs both certificates and revocation lists. You can bring your own Cloud KMS key, or specify an algorithm and let CAS create the key. Keys created by CAS are always hardware-backed, according to the documentation. Keys can be software-backed or hardware-backed when you bring your own. DevOps tier CAs cannot use customer-managed keys, so they use Google-owned keys.
Google’s best practices add some useful points. Unless you have custom security or operational needs, use Google-owned, Google-managed keys, which are generated and stored in Cloud HSM. A key cannot be exported from Cloud HSM after creation or import, so it cannot be migrated elsewhere. CA keys sign only certificates and revocation lists, and are never used for encryption. Choose algorithms and sizes that will stay secure for the CA’s whole intended life.
| Option | Control | Effort | Available For |
|---|---|---|---|
| Google-owned, Google-managed key | Lowest, simplest | Least | Both tiers |
| CAS-created key in your Cloud KMS | You control key access and settings | Moderate | Enterprise tier |
| Your existing Cloud KMS key | Highest, including own key policy | Highest | Enterprise tier |
Algorithm choice
The best practices page notes that ECDSA gives the best performance and security for well-defined PKIs with modern devices, while RSA is suitable where device support is uncertain. Check the devices and software that must verify your certificates before choosing, because an algorithm that a device cannot verify makes the certificate useless there.
The signing key is the master stamp of the passport office. It lives inside a vault where it can press the stamp but nobody can take it out. If the stamp could be copied, every passport would be suspect.
A CA key may live for many years. A choice that looks fine today must still be safe long after, and it cannot be moved out of hardware later.
15The Life of a Certificate Request
From the first request to a working certificate, the same steps repeat every time.
sequenceDiagram
participant W as Workload or device
participant A as Automation agent
participant P as CAS CA pool
participant K as Cloud KMS and HSM
W->>W: Create a private key
W->>A: Prepare a signing request with its public key and name
A->>P: Request a certificate using a template
P->>P: Check access conditions, template and policy
P->>K: Ask the CA key to sign the certificate
K-->>P: Signature
P-->>A: Signed certificate and chain
A-->>W: Install certificate and chain
Note over W: Workload uses the certificate until it expires, then renews
Step by step
Generate a Key Pair
The workload creates its own private key, which never leaves it. Only the public part goes into the request.
Send a Request
The request contains the public key and the identity wanted, and names a template to use.
Policy Checks
The pool checks that the requester may use the template and that the request obeys policy.
Signing
A CA in the pool signs the certificate, using its key protected in Cloud KMS.
Delivery
The signed certificate and its chain are returned for installation.
Use and Renewal
The workload uses the certificate until near expiry, then repeats the process automatically.
It is like applying for an ID card. You prepare your own photo and signature, the office checks you are eligible for that type of card, an officer stamps it with the official seal, and you take it away and renew it before it expires.
Generate the private key on the workload or device itself, so that it never travels across a network, and the CA never sees it.
16Revocation and Certificate Revocation Lists
Sometimes a certificate must stop being trusted before its expiry date.
A device may be stolen, a private key may leak, or an employee may leave. In such cases, the CA must be able to cancel the certificate. The standard method is a certificate revocation list, or CRL, a signed list of serial numbers of certificates that are no longer to be trusted. Clients that check revocation download the CRL and refuse any certificate on it. According to Google’s documentation, CRLs exist as a cloud resource nested under each CA.
Revocation is available only on Enterprise tier CAs, since the DevOps tier does not track issued certificates. The documentation states that DevOps certificates are not tracked in the CA database and therefore cannot be revoked. For DevOps pools, the practical answer is very short lifetimes, which is why that tier suits short-lived workloads.
| Situation | Best Response |
|---|---|
| Stolen long-lived device | Revoke its certificate on an Enterprise CA and publish an updated CRL |
| Leaked key of a short-lived workload | Stop the workload and wait for the short certificate to expire; rotate secrets |
| Employee leaves the company | Revoke their certificates and remove access in other systems too |
| Subordinate CA suspected compromised | Revoke that CA’s certificate from its issuer and replace the branch |
A CRL is the security desk’s list of cancelled badges. Guards check the list when someone presents a badge. A cancelled badge still looks real, but the list says it must not work.
Revocation only works if clients download and check the list. Verify that the systems you care about perform revocation checks, and understand how fresh their copy of the list is.
17Publishing CA Certificates and CRLs
Clients need a place to fetch the CA certificate and revocation list, and CAS provides it through Cloud Storage.
The documentation explains that CAs publish their CA certificates and CRLs to a Cloud Storage bucket in the same location as the CA. CRLs can be published in PEM or DER encoding. The bucket can be managed by Google or by you, and CRLs can be served from a publicly accessible web address. Certificates issued by the CA can carry pointers to these addresses, so clients know where to fetch the information.
CA Certificate
Clients and intermediate systems fetch the CA’s certificate to build the chain of trust.
CRL
Clients fetch the list to learn which certificates have been cancelled.
Google-Managed Bucket
Simplest option, with Google handling the storage.
Your Own Bucket
Gives you control over access, location and the web address served to clients.
Practical thinking about publishing
The published files must be reachable by every client that verifies your certificates. If those clients sit outside your network, a public address may be needed, which means the CA certificate and CRL are visible to anyone. These documents contain no secrets, but think about what the names inside them reveal. If your clients are all inside private networks, you may restrict access to match.
Publishing is like pinning the official notice board outside the passport office: the list of cancelled cards and the office’s own seal sample. Anyone checking a card can walk up to the board and compare.
After setup, fetch the CA certificate and CRL from a typical client network. A beautiful CA that clients cannot reach is of no use.
18Certificate Lifetimes and Automatic Renewal
How long a certificate lives is one of the most important security settings you control.
Every certificate has a start and an end date. A long lifetime means fewer renewals, but a stolen key stays dangerous for longer. A short lifetime limits the damage of a leak and reduces the need to revoke, but demands reliable automation, because a missed renewal means an outage when the certificate expires. The Google documentation I reviewed did not give default or maximum lifetimes, so check the current documentation and your own policy before deciding. The principle is widely accepted: make lifetimes as short as your automation can safely support.
| Use | Typical Lifetime Thinking | Why |
|---|---|---|
| Container or job identity | Hours to a day | Workloads are short-lived and fully automated; expiry replaces revocation |
| Internal server certificate | Weeks to a few months | Renewal can be automated and a leak is short-lived |
| Employee device certificate | Months to a year | Balances user disruption against exposure, with revocation available |
| Field device certificate | Longer, with a renewal plan | Devices may be offline for long periods and hard to reach |
| Subordinate CA certificate | Years, but shorter than its root | Replaced less often, but must be rotated before expiry |
| Root CA certificate | Longest in the system | Distributing a new root is a big effort, so it lasts a long time |
Making renewal reliable
Renew Early
Start renewal when a certificate has used roughly two thirds of its life, leaving time to fix failures.
Retry With Back-Off
If renewal fails, retry with growing delays, and alert people before expiry, not after.
Reload Without Restart
Design services to pick up new certificates while running, so renewal causes no downtime.
Monitor Expiry Dates
Track the soonest expiring certificates across your estate and alert on the ones nearing the end.
A certificate is like milk in the fridge. Short shelf life keeps it fresh and safe, but only if someone reliably restocks. A fridge with long-life milk is easy to forget, and a fridge with fresh milk and no shopping plan ends with an empty shelf.
Many major outages in the industry have come from a single forgotten expiry date. Treat renewal monitoring as seriously as server monitoring.
19Connecting to an Existing Corporate CA
Many companies already have a CA, and CAS can fit beneath it.
Organizations often already run an on-premises CA that issues certificates for office networks and legacy systems. Replacing it overnight is rarely possible, and not always desirable. CAS supports a subordinate CA signed by an external CA, which lets cloud workloads join the existing trust framework without asking every client to trust a second root.
The documentation describes the process. CAS creates a certificate signing request for the subordinate CA. You take the request to the external CA, which signs it. You then activate the CA in CAS by uploading the signed, PEM-encoded certificate chain through the command line or the console. From then on, the cloud CA issues certificates that chain up to your corporate root.
flowchart TD
R["Corporate root CA (on premises)"] --> O["On-premises issuing CA"]
R --> C["CAS subordinate CA in Google Cloud"]
O --> L["Office and legacy system certificates"]
C --> W["Cloud workload and service certificates"]
Benefits of Chaining
- One trusted root for the whole company
- No new root to distribute to every device
- Gradual migration from old to new systems
- Consistent policy across on-premises and cloud
Things to Consider
- Signing depends on the external CA team’s process and timing
- The old root’s key strength and lifetime limit the new branch
- Compromise of the old root affects the cloud branch too
- Policy must be agreed between the two teams
The best practices guidance adds a useful warning: previously issued certificates cannot be imported, so avoid importing an external CA that has already issued certificates. Start new CAs for new issuance and let old certificates expire naturally.
It is like a new regional passport office being authorized by the existing national ministry. Citizens and border guards need no new rules, because the new office’s passports are signed under the same national authority.
Before the external CA signs, agree path length, allowed uses, lifetime and naming constraints for the new subordinate, so the branch cannot exceed what the parent intended.
20Using Certificates for Workloads on Google Cloud
The value of a CA appears when your platforms use its certificates automatically.
CAS issues certificates, but something must request and install them. On Google Cloud, several kinds of platforms can do this. Container platforms and service meshes can obtain workload certificates for each pod or service, enabling mutual TLS between services without developers handling keys. Virtual machines can use agents or scripts to request certificates at start-up. Load balancers and other managed components can use certificates from a private CA for internal traffic. The exact integrations, setup steps and supported versions change often, so confirm the current list in the documentation for each platform you use.
Kubernetes and Service Meshes
Each workload receives a short-lived identity certificate automatically, enabling mutual TLS across services.
Virtual Machines
A start-up script or agent creates a key, requests a certificate and renews it before expiry.
Serverless and Jobs
Short-lived tasks request certificates when they start, or use platform-provided identity features.
Network Appliances and Gateways
Gateways present certificates to clients and may verify client certificates for strong access control.
Developer Tools and Pipelines
Build and release tools can request signing or client certificates as part of controlled workflows.
Custom Applications
Applications can call the CAS API directly or through client libraries to request certificates.
What a good integration looks like
Identity From the Platform
The workload proves who it is using its platform identity, not a shared password, before getting a certificate.
Narrow Permissions
That identity may request only the template and names that suit its job.
Automatic Renewal
The platform renews certificates well before expiry without human action.
No Keys in Images or Code
Private keys are generated at run time and never baked into container images or configuration.
It is a hotel where each new guest receives a key card at check-in, automatically, based on the booking, and the card expires at checkout. Nobody keeps a drawer of permanent keys that might be copied.
Pick a single workload type, such as one cluster, and get automatic issuance and renewal working end to end before expanding.
21Zero Trust and Service-to-Service Security
Certificates make “never trust, always verify” a practical design instead of a slogan.
Zero trust is a design approach that assumes the network can never be trusted by itself. Every request must prove who it comes from and be checked against policy, whether it originates inside or outside the company’s network. Machine certificates are a natural foundation. A service presents its certificate, the receiver verifies it, and the receiving service checks policy about which services may call which endpoints.
Service Mesh Between Microservices
Every service gets a short-lived certificate for mutual TLS. Policies state that only the checkout service may call the payment service. A rogue container on the same network cannot call it, since it lacks a valid identity.
Partner API Access
A company gives each partner a client certificate from a private CA. The API gateway verifies the certificate on every request. When a partnership ends, the certificate is revoked, and access ends at once.
Device-Based Access for Staff
Company laptops carry certificates proving they are managed devices. Internal applications allow access only from devices with a valid certificate, in addition to user sign-in.
Database and Message Queue Protection
Databases accept connections only from clients with valid certificates, adding a second proof beyond the password.
| Old Approach | Certificate-Based Approach |
|---|---|
| Trust based on network location | Trust based on cryptographic identity |
| Shared passwords between services | Per-workload certificates that expire quickly |
| Long-lived static credentials | Short-lived, automatically rotated credentials |
| Hard to tell which service called | Every call carries a verified identity in logs |
Old security was a guard at the building entrance and free movement inside. Zero trust is badge readers on every door, so an intruder who slips through the front gate still cannot open a single office.
A valid certificate shows who is calling, not what they are allowed to do. Always pair identity with authorization rules.
22Certificates for Devices and the Internet of Things
Devices in the field are the hardest place to keep identity safe and current.
Sensors, machines, meters and vehicles may be installed far from any technician, run for years, and connect over unreliable links. Each must prove its identity to the platform it reports to, and the platform must be able to cancel a device that is lost or stolen. These needs favor Enterprise tier pools, where certificates are tracked and can be revoked, and where customer-managed keys may be used if rules require.
Birth Identity at the Factory
Each device generates its own key during manufacture or first boot, ideally inside secure hardware, and receives its first certificate.
Prove It on Connection
The device presents its certificate each time it connects to the platform.
Renew in the Field
Before expiry, the device renews over a secure channel, using its existing certificate as proof.
Revoke on Loss
If a device is stolen or retired, its certificate is revoked and the platform refuses it.
Offline Devices
A device that is off for months may find its certificate expired when it returns. Plan a recovery path.
Clock Problems
Small devices may have wrong clocks, causing valid certificates to look expired or not yet valid.
Limited Hardware
Constrained devices may support only certain algorithms, which should guide your CA key and algorithm choices.
Physical Theft
Attackers with the device in hand may try to extract the key; secure hardware storage reduces this risk.
Field devices are like rural post offices run by a single clerk. They need ID cards that last long enough to be practical, a way to renew them without the head office visiting, and a quick way to cancel the card if the clerk’s office is robbed.
Prove the design on your most limited, remote device type. If it works there, easier devices will follow.
23Access Control and Separation of Duties
A CA concentrates power, so who may do what must be designed with great care.
Identity and Access Management controls access to CAS resources. Different jobs exist in a CA: administering the service and its CAs, managing certificate templates, requesting certificates, and auditing. Google’s best practices say that an individual should not hold more than one role at a time, and that a custom role should be created if a broader permission set is needed. They also advise training everyone who holds a role about their responsibilities and security practices. Role names and permissions change, so check the current documentation before designing your grants.
| Job | Should Be Able To | Should Not Be Able To |
|---|---|---|
| CA administrator | Create and manage pools and CAs, rotate CAs | Issue certificates in day-to-day operation |
| Template manager | Create and edit certificate templates | Create CAs or request certificates |
| Certificate requester (people or workloads) | Request certificates with approved templates and names | Edit templates, pools or CAs |
| Auditor | View configuration, issued certificate records and logs | Change anything |
| Key custodian (Enterprise, customer keys) | Manage the Cloud KMS keys under CAs | Issue certificates or change CA policy |
Principles to keep
One Role per Person
Prevent a single individual from both defining policy and using it.
Use Groups
Grant roles to groups so that joiners and leavers change access automatically.
Per-Workload Identities
Each workload gets its own identity and may request only its own kind of certificate.
Dedicated Project for the PKI
Keep CAs in their own project, with minimal access, separate from application projects.
Approval for Sensitive Actions
Require a second person for actions such as creating a root or activating a subordinate.
Regular Review
Check who holds each role, and remove access that is no longer needed.
In a passport office, the person who designs the passport layout does not stamp passports, and the person who stamps them does not audit the books. Three roles, so a single mistake or a single dishonest person cannot ruin the system.
Anyone who can freely request certificates with arbitrary names can impersonate any service. Limit requesters by template and name from the beginning.
24Audit Logging and Monitoring
A private CA must be able to show exactly what it did.
Google’s best practices say to enable Cloud Audit Logs, including Data Access logs, and note that on the DevOps tier these logs are the only way to track certificates, since the tier does not record them in the CA database. Administrative logs record who created or changed pools, CAs and templates. Data access logs record certificate requests and related operations. Together they give a trail for audits and investigations.
New CA or Pool Created
Always notify security staff, because any new CA can issue trusted certificates.
Template or Policy Changed
A relaxed template could allow mis-issued certificates, so changes need review and a recorded reason.
Unusual Issuance Volume
A sudden surge in requests from one identity may indicate abuse or a runaway automation loop.
Unexpected Names Requested
Requests for names that a requester does not normally use may point to an attempt at impersonation.
Revocations
Every revocation should be explained by a ticket or incident, and unexpected ones investigated.
Expiry monitoring
Beyond logs, monitor certificate expiry across your estate. Track the CA certificates themselves most closely, since an expired CA breaks everything below it. Also track the soonest expiring end certificates, and the success rate of renewals. A falling renewal success rate is an early warning that something in the automation is breaking.
Audit logs are the ledger of the passport office: every card issued, every cancellation, every change to the rules. Monitoring is the clerk who also watches the calendar for cards, and the office’s own license, about to expire.
Store logs where CA administrators cannot edit or delete them. Evidence that the accused can alter is not evidence.
25CA Rotation and Life Cycle
CAs expire and keys age, so replacing them calmly is part of normal operation.
Google’s best practices advise setting up a process for regular CA key rotation, whatever the lifetime, key size or algorithm. The documentation I reviewed gave no specific interval. In practice, rotation of a CA means creating a new CA, with a new key, in the same pool, so that the pool can spread issuance across old and new CAs and then retire the old one. Certificates already issued by the old CA remain valid until they expire, provided clients still trust its chain.
stateDiagram-v2
[*] --> Planned
Planned --> Active: create and activate
Active --> Overlap: new CA added to the pool
Overlap --> Retiring: old CA stops issuing
Retiring --> Expired: last certificates expire
Expired --> [*]
A rotation plan
Set a Calendar
Write down expiry dates for every CA and plan rotation well ahead of them.
Create the Successor
Add a new CA to the pool, signed by the appropriate parent, with a fresh key.
Distribute New Trust Material
If clients pin or store intermediate certificates, update them before the old CA is retired.
Shift Issuance
Let the new CA take over, then stop the old one from issuing.
Wait, Then Retire
Keep the old CA’s certificate and revocation information available until its last issued certificate expires.
It is like changing the head of a passport office. The new head starts work while the old one is still there, passports signed by the old head stay valid until their dates, and the office never closes during the change.
Replacing a root means getting a new trust anchor onto every client. Choose its lifetime and key strength with that burden in mind.
26A Reference Architecture
A sensible shape that many organizations can adapt.
In this layout, a dedicated PKI project holds all CAS resources. An Enterprise root CA, kept almost entirely unused, signs two subordinate CAs, one for long-lived certificates and one for short-lived workload identities. The long-lived branch sits in an Enterprise pool with revocation and publishes its revocation list to a bucket. The short-lived branch sits in a DevOps pool for high volume. Templates define server, client and device certificates. Workloads get identities from their platforms, requests are limited by templates and names, logs flow to a protected project, and alerts watch expiry and unusual issuance.
flowchart TD
subgraph PKI["PKI project (few administrators)"]
ROOT["Root CA (Enterprise pool)"]
SUB1["Subordinate CA: long-lived (Enterprise pool)"]
SUB2["Subordinate CA: workloads (DevOps pool)"]
TPL["Certificate templates"]
ROOT --> SUB1
ROOT --> SUB2
TPL --- SUB1
TPL --- SUB2
end
SUB1 --> BKT["Storage bucket: CA certificates and CRLs"]
SUB1 --> DEV["Devices and long-lived servers"]
SUB2 --> MESH["Containers and service mesh workloads"]
PKI --> LOG["Audit logs to protected project"]
LOG --> ALR["Alerts on policy changes, volume spikes and expiry"]
Why this works
Contained Risk
Compromise of one branch is handled without replacing the whole PKI.
Right Tool for Each Job
Tiers match the needs of long-lived and short-lived certificates, controlling both cost and capability.
Clear Separation
Administrators, requesters and auditors have separate roles in a tightly controlled project.
Easy Explanation
Auditors can understand the layout quickly, which speeds up reviews.
It is a government with one head of state who rarely appears in public, two departments that do the daily work, one for lasting documents and one for day passes, and a records office that keeps the ledger.
27Understanding Pricing
CAS has a simple pricing shape: a monthly fee for each CA, plus a one-time fee for each certificate issued.
According to the pricing page I reviewed, a DevOps tier CA costs about twenty dollars per month and an Enterprise tier CA about two hundred dollars per month. Each certificate issued carries a one-time fee that falls as volume rises. For the DevOps tier, the listed rates were about thirty cents per certificate for the first fifty thousand, about three cents from there to one hundred thousand, and under a tenth of a cent beyond that. Enterprise rates were somewhat higher, at about fifty cents, five cents and a tenth of a cent for the same bands. Volume bands apply across all your CAs combined. For more than a million certificates per month, the page suggests contacting sales about a subscription with predictable billing.
| Cost Item | DevOps Tier (approx.) | Enterprise Tier (approx.) |
|---|---|---|
| Monthly fee per CA | $20 | $200 |
| Per certificate, first 50,000 | $0.30 | $0.50 |
| Per certificate, next 50,000 | $0.03 | $0.05 |
| Per certificate, above 100,000 | $0.0009 | $0.001 |
The same page also contains worked examples. The DevOps examples matched the listed rates when I recalculated them. One Enterprise example did not match the page’s own rates, so I will not quote it. The lesson is to calculate your own estimate with the official calculator, check the figures with Google if a large commitment depends on them, and expect prices to change. I also did not see a free tier mentioned on the page.
What really drives cost
Number of CAs
Each CA carries a monthly fee, so avoid creating CAs that you do not need, especially on the Enterprise tier.
Issuance Volume
Short-lived certificates for large fleets make volume the main cost driver.
Tier Choice
The Enterprise tier costs more per CA and per certificate, so use it only where tracking and revocation are needed.
Lifetime Choices
Very short lifetimes mean more certificates for the same workloads, so balance security gains against issuance costs.
Surrounding Services
Cloud KMS keys, storage for published files and audit logs are billed under their own pricing.
Pricing resembles renting a printing office. You pay a monthly rent for each office, and a small fee for each card printed, with a discount for huge print runs. A fancy registered-badge office costs more rent than a quick day-pass office.
A fleet of fifty thousand containers renewing hourly generates a huge number of certificates. Estimate realistically, and consider lifetimes that balance safety and cost.
28Real-World Scenarios
Stories show how the ideas appear in daily life.
Scenario 1: A Microservices Platform
A retailer runs hundreds of services on a container platform. It adopts mutual TLS between services, using a DevOps tier pool for short-lived workload certificates. A compromised container can no longer call sensitive services, since its certificate expires in hours and policy limits which services may call which.
Scenario 2: A Manufacturer with Field Machines
A manufacturer ships machines that report to a cloud platform. Each machine gets a certificate at the factory from an Enterprise pool. When a machine is stolen from a customer site, the manufacturer revokes its certificate, and the platform stops accepting data from it.
Scenario 3: A Bank Chaining to Its Existing Root
A bank has a long-established on-premises root. It creates a subordinate CA in CAS, signed by that root, so cloud workloads share the bank’s single trusted root. Auditors accept the arrangement because key custody, roles and logs are documented.
Scenario 4: Partner Integrations
A logistics company issues client certificates to hundreds of partners. Each certificate is tied to a partner name by templates. When a partner is acquired and its systems change, the old certificates are revoked and new ones issued.
Scenario 5: The Forgotten Expiry
A company’s intermediate CA certificate expired on a weekend, and many internal services failed to connect. The team had tracked end certificates but not the CA itself. Afterward, they added CA expiry to their calendar, alerts and rotation plan, with an overlap period for every future change.
Scenario 6: Over-Permissive Requesters
A review found that a development team could request certificates for any internal name. The security team introduced name constraints in templates and limited each team to its own domain, closing a route for impersonation.
All these stories are about the same promise: when every door checks a card, and cards are issued carefully, expire on time and can be cancelled, the building is safe even if a stranger gets through the front gate.
29Managed Private CA Compared with Other Approaches
You have more than one way to get private certificates, and each suits different teams.
| Approach | Strength | Weakness | Best For |
|---|---|---|---|
| Managed private CA such as CAS | Protected keys, scale, API, policy, audit and no hardware to run | Fees, and trust must still be distributed | Teams wanting a private PKI without operating the infrastructure |
| Self-managed CA software | Complete control and no per-certificate service fees | You protect keys, patch software, publish revocation and survive audits | Teams with deep PKI skill and strict custom needs |
| Using a public CA for internal names | Trusted by default everywhere | Policy limits, internal names often not allowed, less control | Public-facing systems only |
| Self-signed certificates | Fast and free | No chain of trust, no central control, poor revocation, hard to audit | Throwaway tests only |
| No certificates, shared secrets | Seems simple | Secrets leak, are rarely changed and identify nobody in particular | Almost nothing serious |
Cloud-based certificate management for public websites and load balancers is a related but different area, and Google Cloud has other capabilities for it. Confirm the current set of certificate services and choose the one that matches who must trust your certificates.
Running your own CA software is like building your own printing press for ID cards. A managed CA is hiring a secure printing contractor who follows your design rules. Self-signed certificates are like cards you made at home with a marker.
Self-managed CAs look cheap until you add hardware security modules, staff time, audits, patching and out-of-hours support. Compare total cost, not just fees.
30Key Design Decisions
Architects write down significant choices so later teams understand the reasons.
Use a two-level hierarchy with a protected root
An Enterprise tier root signs subordinate CAs only; subordinates issue all other certificates.
Reason: minimizes root exposure and allows replacing a compromised branch. Trade-off: a longer chain and more CAs to manage and pay for.
DevOps tier for short-lived workloads, Enterprise for everything long-lived
Use separate pools matched to certificate lifetime and revocation needs.
Reason: pays for tracking only where it matters and keeps high-volume issuance fast. Trade-off: two kinds of pools to operate and monitor.
Issue only through templates with name constraints
Requesters pick approved templates and may only request names they own.
Reason: prevents impersonation and mis-issuance. Trade-off: templates need design and maintenance, and new needs require new templates.
Short lifetimes with automated renewal
Workload certificates live hours to days and renew automatically.
Reason: limits the usefulness of a stolen key and reduces dependence on revocation. Trade-off: reliance on automation and higher issuance volume.
Dedicated PKI project with separated roles and protected logs
All CAS resources live in one tightly controlled project with separate roles and logs exported elsewhere.
Reason: strong isolation and clear evidence. Trade-off: cross-project permissions to configure and maintain.
A decision record is a ship’s log. Years later, a new captain reads why the ship changed course and avoids the same rocks.
31Common Mistakes and Anti-Patterns
The cheapest education is learning from other teams’ mistakes.
Healthy Habits
- Keep the root almost unused and well protected
- Issue only through templates with name limits
- Automate renewal and watch expiry dates
- Match tier to lifetime and revocation needs
- Separate roles and protect logs
Risky Habits
- Issuing everyday certificates directly from the root
- Letting requesters choose any name
- Using long lifetimes to avoid building automation
- Choosing the DevOps tier and expecting revocation
- Forgetting that CA certificates expire too
Five classic traps in detail
Wrong Tier for the Job
A team picks DevOps for long-lived devices and later discovers it cannot revoke their certificates. Choose the tier before creating the pool.
Trust Distribution Forgotten
The CA works perfectly, but clients do not trust the root because nobody planned how to install it.
Unreachable Revocation Data
The CRL is published, but clients cannot fetch it, so revocation does nothing.
Algorithm Mismatch
The CA uses an algorithm that older devices cannot verify, and those devices reject every certificate.
No Rotation Rehearsal
The first rotation happens the week before expiry, and nobody remembers how it works. Practice in a test environment early.
These traps are loose floorboards in a house. Each looks harmless until someone carries something heavy across it.
32Troubleshooting Guide
Start with the simplest cause and work toward the hardest.
| Symptom | Likely Cause | What To Try |
|---|---|---|
| Certificate request denied | Requester lacks permission, template not allowed, or a name outside the allowed identity constraints | Check access conditions, the template used and the identity rules on the pool |
| Clients show “unknown authority” | Root or intermediate certificate not installed on the client | Distribute the root, and make sure the server sends the full chain |
| Name mismatch errors | Certificate names differ from the address used | Include the right names in the request, and check template constraints |
| Certificate expired unexpectedly | Renewal automation failed, or the CA certificate expired | Check renewal logs and the CA’s own expiry date |
| Revoked certificate still accepted | Client does not check revocation, or has an old list, or the pool is DevOps tier | Confirm tier, client behavior and CRL freshness |
| Cannot revoke a certificate | The pool uses the DevOps tier | Use short lifetimes, or move long-lived use to an Enterprise pool |
| Subordinate CA will not activate | Signed chain uploaded is incomplete or wrongly encoded | Upload the full PEM-encoded chain from the external CA |
| CRL cannot be fetched | Bucket not reachable by clients or address wrong in certificates | Test the published address from the client’s network |
| Bill higher than expected | Many CAs, very high issuance volume, or Enterprise tier used unnecessarily | Review the number of CAs, lifetimes and tier choices |
A calm method
Inspect the Certificate
Read its names, dates, issuer and extensions, to see what was actually issued.
Walk the Chain
Check each link up to the root, and confirm the client trusts that root.
Read the Audit Logs
Find the request and the decision, with the exact reason for any refusal.
Change One Thing at a Time
Adjust a single suspect, retest and record the result.
Troubleshooting a rejected ID card: read the card, check who issued it, check the issuer’s own authority, look at the office record, and only then complain to the manager.
33Best Practices Checklist
A short list to review before every launch.
Sketch the Hierarchy First
Decide roots, branches, pools and tiers on paper before creating anything.
Protect the Root
Use it only to sign subordinate CAs, with strict controls and approvals.
Choose Tier by Need
Enterprise for long-lived and revocable, DevOps for short-lived and high-volume.
Prefer Google-Managed HSM Keys Unless Rules Differ
Use customer-managed keys on the Enterprise tier only when you have a requirement.
Choose Algorithms for the Whole Lifetime
Check device support, and pick key sizes that stay secure for years.
Templates With Name Limits
Allow only approved certificate shapes and names that each team owns.
One Role per Person
Separate administration, templates, requesting and auditing.
Automate Issuance and Renewal
Use short lifetimes and reload without restarts.
Monitor Expiry and Issuance
Alert on CA expiry, renewal failures and unusual volume.
Enable Audit Logs and Protect Them
Include Data Access logs and store them out of administrators’ reach.
Rehearse Rotation and Recovery
Practice CA rotation and compromise response in a test environment.
A pilot walks through the same checklist before every flight, however experienced. The list does not express doubt. It expresses respect for what could go wrong.
34Frequently Asked Questions
Quick answers to the questions beginners ask most often.
It is a managed Google Cloud service for running private certificate authorities that issue digital certificates to your internal services, devices and people, with Google operating the infrastructure and protecting the signing keys.
No. CAS is for private trust inside your organization. Browsers do not trust its certificates by default. For public websites, Google Cloud has other certificate capabilities, so check the current documentation to choose correctly.
A CA pool is the main container for CAs and the certificates they issue. Policies and access conditions apply at the pool level, requests go to the pool, and the pool spreads them across its CAs. The tier is chosen per pool.
A root CA is self-signed and sits at the top of the trust chain. A subordinate CA is signed by another CA, either one created in CAS or an external one. Roots should be rarely used, and subordinates do the daily issuing.
DevOps offers higher throughput and lower cost but does not track certificates, so it cannot revoke them and uses Google-owned keys only. Enterprise tracks certificates, supports revocation and allows customer-managed Cloud KMS keys, with lower throughput and higher cost.
The tier is set per pool and all CAs in it share it. Plan the tier before creating the pool, and check the current documentation about whether and how tiers can change. If in doubt, create a new pool of the right tier and migrate issuance.
On Enterprise tier CAs you can revoke a certificate, and the CA lists it in a revocation list published to storage. DevOps tier certificates cannot be revoked, so use short lifetimes for them.
CAS uses Cloud KMS to generate, store and use CA signing keys. Keys created by CAS are hardware-backed, and best practice is to use Google-owned, Google-managed keys in Cloud HSM unless you have special needs. Keys cannot be exported from Cloud HSM.
You can chain a CAS subordinate CA beneath an external CA by signing a request that CAS generates and uploading the signed chain. Best practice warns against importing an external CA that has already issued certificates.
A reusable recipe that sets the extensions and constraints certificates may have, and which request fields are kept or ignored. Templates, combined with access conditions, give different users different powers on the same pool.
As short as your automation can safely support. Workload certificates may last hours to days, server certificates weeks to months, and CA certificates years. Check your policy and the current documentation for limits.
CAs publish CA certificates and CRLs to a Cloud Storage bucket in the CA’s location. The bucket can be Google-managed or your own, and CRLs can be served from a public web address. Certificates carry pointers so clients know where to look.
Yes. For a private CA, every system that should trust your certificates must trust your root. Plan distribution for servers, containers, laptops and devices, perhaps through configuration management.
Yes, through platform integrations, agents or the API, using the workload’s own identity. The supported integrations change over time, so confirm the current documentation for your platform.
A form of TLS in which both sides present certificates and verify each other, so each knows exactly who it is talking to. It is widely used for service-to-service traffic and device connections.
The pricing page listed a monthly fee per CA, about twenty dollars for DevOps and about two hundred for Enterprise, plus a one-time fee per certificate that falls with volume. I did not see a free tier. Prices change, so confirm on the official page and calculator.
According to the pricing page, the volume bands apply across all your CAs combined, not separately per CA.
The DevOps tier does not store issued certificates in the CA database. Google’s best practices say that Cloud Audit Logs, including Data Access logs, are the only way to track them, so enable and keep those logs.
Everything issued beneath it stops validating. This is why CA expiry must be monitored and rotation planned well ahead, with an overlap period where the new CA joins the pool before the old one retires.
Best practices note that ECDSA gives the best performance and security for well-defined PKIs with modern devices, and RSA suits cases where device support is uncertain. Check what your clients can verify, and choose for the CA’s whole lifetime.
Yes, for serious use. A dedicated, tightly controlled project makes access, logging and auditing simpler, and reduces the chance that application teams affect the PKI.
Best practices say individuals should not hold more than one role at any given time. If a wider permission set is needed, create a custom role, and train role holders on their responsibilities.
No. Previously issued certificates cannot be imported. Create new CAs for new issuance and let older certificates expire.
Test issuance with each template, name restrictions, renewal, revocation on an Enterprise pool, fetching the CA certificate and CRL from client networks, trust on every client type, and CA rotation in a non-production copy.
Create a dedicated project, build a small hierarchy of one root and one subordinate in suitable pools, define one or two templates, enable audit logs, distribute the root to a test group and automate issuance for one workload type. Expand gradually after it works end to end.
35Summary and Key Takeaways
Everything in this guide on one short page.
Certificate Authority Service gives you a managed private PKI. You organize CAs into pools, build a hierarchy with a protected root and working subordinates, choose a tier per pool, define templates and access conditions, protect signing keys in Cloud KMS and HSM, publish certificates and revocation lists, and let platforms request and renew certificates automatically. Done well, it turns machine identity from a risky patchwork of shared secrets into a consistent, auditable and automated system.
Key Takeaways
- CAS runs private certificate authorities for your own services, devices and people, with Google operating the infrastructure and protecting the signing keys in Cloud KMS and HSM.
- Requests go to CA pools, which hold CAs, apply shared policy and spread issuance. Keep the root almost unused and let subordinate CAs do the daily work.
- Choose the tier per pool: Enterprise for tracked, revocable, long-lived certificates and customer-managed keys, and DevOps for fast, cheap, short-lived and high-volume workload certificates.
- Control issuance with templates, identity constraints and access conditions, and separate the roles of administering, templating, requesting and auditing.
- Prefer short lifetimes with automated renewal, monitor both end-certificate and CA expiry, and plan CA rotation with an overlap period.
- Publish CA certificates and revocation lists where clients can reach them, and distribute your root to every system that must trust it.
- Estimate costs from CA count, tier and certificate volume, confirm current prices and features on Google’s official pages, and keep audit logs in a protected place.